Documentation ¶
Index ¶
- type LookupServerArgs
- type LookupServerResult
- type Server
- func (*Server) ElementType() reflect.Type
- func (i *Server) ToServerOutput() ServerOutput
- func (i *Server) ToServerOutputWithContext(ctx context.Context) ServerOutput
- func (i *Server) ToServerPtrOutput() ServerPtrOutput
- func (i *Server) ToServerPtrOutputWithContext(ctx context.Context) ServerPtrOutput
- type ServerArgs
- type ServerArray
- type ServerArrayInput
- type ServerArrayOutput
- type ServerEndpointDetails
- type ServerEndpointDetailsArgs
- func (ServerEndpointDetailsArgs) ElementType() reflect.Type
- func (i ServerEndpointDetailsArgs) ToServerEndpointDetailsOutput() ServerEndpointDetailsOutput
- func (i ServerEndpointDetailsArgs) ToServerEndpointDetailsOutputWithContext(ctx context.Context) ServerEndpointDetailsOutput
- func (i ServerEndpointDetailsArgs) ToServerEndpointDetailsPtrOutput() ServerEndpointDetailsPtrOutput
- func (i ServerEndpointDetailsArgs) ToServerEndpointDetailsPtrOutputWithContext(ctx context.Context) ServerEndpointDetailsPtrOutput
- type ServerEndpointDetailsInput
- type ServerEndpointDetailsOutput
- func (o ServerEndpointDetailsOutput) AddressAllocationIds() pulumi.StringArrayOutput
- func (ServerEndpointDetailsOutput) ElementType() reflect.Type
- func (o ServerEndpointDetailsOutput) SubnetIds() pulumi.StringArrayOutput
- func (o ServerEndpointDetailsOutput) ToServerEndpointDetailsOutput() ServerEndpointDetailsOutput
- func (o ServerEndpointDetailsOutput) ToServerEndpointDetailsOutputWithContext(ctx context.Context) ServerEndpointDetailsOutput
- func (o ServerEndpointDetailsOutput) ToServerEndpointDetailsPtrOutput() ServerEndpointDetailsPtrOutput
- func (o ServerEndpointDetailsOutput) ToServerEndpointDetailsPtrOutputWithContext(ctx context.Context) ServerEndpointDetailsPtrOutput
- func (o ServerEndpointDetailsOutput) VpcEndpointId() pulumi.StringPtrOutput
- func (o ServerEndpointDetailsOutput) VpcId() pulumi.StringPtrOutput
- type ServerEndpointDetailsPtrInput
- type ServerEndpointDetailsPtrOutput
- func (o ServerEndpointDetailsPtrOutput) AddressAllocationIds() pulumi.StringArrayOutput
- func (o ServerEndpointDetailsPtrOutput) Elem() ServerEndpointDetailsOutput
- func (ServerEndpointDetailsPtrOutput) ElementType() reflect.Type
- func (o ServerEndpointDetailsPtrOutput) SubnetIds() pulumi.StringArrayOutput
- func (o ServerEndpointDetailsPtrOutput) ToServerEndpointDetailsPtrOutput() ServerEndpointDetailsPtrOutput
- func (o ServerEndpointDetailsPtrOutput) ToServerEndpointDetailsPtrOutputWithContext(ctx context.Context) ServerEndpointDetailsPtrOutput
- func (o ServerEndpointDetailsPtrOutput) VpcEndpointId() pulumi.StringPtrOutput
- func (o ServerEndpointDetailsPtrOutput) VpcId() pulumi.StringPtrOutput
- type ServerInput
- type ServerMap
- type ServerMapInput
- type ServerMapOutput
- type ServerOutput
- func (ServerOutput) ElementType() reflect.Type
- func (o ServerOutput) ToServerOutput() ServerOutput
- func (o ServerOutput) ToServerOutputWithContext(ctx context.Context) ServerOutput
- func (o ServerOutput) ToServerPtrOutput() ServerPtrOutput
- func (o ServerOutput) ToServerPtrOutputWithContext(ctx context.Context) ServerPtrOutput
- type ServerPtrInput
- type ServerPtrOutput
- type ServerState
- type SshKey
- func (*SshKey) ElementType() reflect.Type
- func (i *SshKey) ToSshKeyOutput() SshKeyOutput
- func (i *SshKey) ToSshKeyOutputWithContext(ctx context.Context) SshKeyOutput
- func (i *SshKey) ToSshKeyPtrOutput() SshKeyPtrOutput
- func (i *SshKey) ToSshKeyPtrOutputWithContext(ctx context.Context) SshKeyPtrOutput
- type SshKeyArgs
- type SshKeyArray
- type SshKeyArrayInput
- type SshKeyArrayOutput
- type SshKeyInput
- type SshKeyMap
- type SshKeyMapInput
- type SshKeyMapOutput
- type SshKeyOutput
- func (SshKeyOutput) ElementType() reflect.Type
- func (o SshKeyOutput) ToSshKeyOutput() SshKeyOutput
- func (o SshKeyOutput) ToSshKeyOutputWithContext(ctx context.Context) SshKeyOutput
- func (o SshKeyOutput) ToSshKeyPtrOutput() SshKeyPtrOutput
- func (o SshKeyOutput) ToSshKeyPtrOutputWithContext(ctx context.Context) SshKeyPtrOutput
- type SshKeyPtrInput
- type SshKeyPtrOutput
- type SshKeyState
- type User
- type UserArgs
- type UserArray
- type UserArrayInput
- type UserArrayOutput
- type UserHomeDirectoryMapping
- type UserHomeDirectoryMappingArgs
- func (UserHomeDirectoryMappingArgs) ElementType() reflect.Type
- func (i UserHomeDirectoryMappingArgs) ToUserHomeDirectoryMappingOutput() UserHomeDirectoryMappingOutput
- func (i UserHomeDirectoryMappingArgs) ToUserHomeDirectoryMappingOutputWithContext(ctx context.Context) UserHomeDirectoryMappingOutput
- type UserHomeDirectoryMappingArray
- func (UserHomeDirectoryMappingArray) ElementType() reflect.Type
- func (i UserHomeDirectoryMappingArray) ToUserHomeDirectoryMappingArrayOutput() UserHomeDirectoryMappingArrayOutput
- func (i UserHomeDirectoryMappingArray) ToUserHomeDirectoryMappingArrayOutputWithContext(ctx context.Context) UserHomeDirectoryMappingArrayOutput
- type UserHomeDirectoryMappingArrayInput
- type UserHomeDirectoryMappingArrayOutput
- func (UserHomeDirectoryMappingArrayOutput) ElementType() reflect.Type
- func (o UserHomeDirectoryMappingArrayOutput) Index(i pulumi.IntInput) UserHomeDirectoryMappingOutput
- func (o UserHomeDirectoryMappingArrayOutput) ToUserHomeDirectoryMappingArrayOutput() UserHomeDirectoryMappingArrayOutput
- func (o UserHomeDirectoryMappingArrayOutput) ToUserHomeDirectoryMappingArrayOutputWithContext(ctx context.Context) UserHomeDirectoryMappingArrayOutput
- type UserHomeDirectoryMappingInput
- type UserHomeDirectoryMappingOutput
- func (UserHomeDirectoryMappingOutput) ElementType() reflect.Type
- func (o UserHomeDirectoryMappingOutput) Entry() pulumi.StringOutput
- func (o UserHomeDirectoryMappingOutput) Target() pulumi.StringOutput
- func (o UserHomeDirectoryMappingOutput) ToUserHomeDirectoryMappingOutput() UserHomeDirectoryMappingOutput
- func (o UserHomeDirectoryMappingOutput) ToUserHomeDirectoryMappingOutputWithContext(ctx context.Context) UserHomeDirectoryMappingOutput
- type UserInput
- type UserMap
- type UserMapInput
- type UserMapOutput
- type UserOutput
- func (UserOutput) ElementType() reflect.Type
- func (o UserOutput) ToUserOutput() UserOutput
- func (o UserOutput) ToUserOutputWithContext(ctx context.Context) UserOutput
- func (o UserOutput) ToUserPtrOutput() UserPtrOutput
- func (o UserOutput) ToUserPtrOutputWithContext(ctx context.Context) UserPtrOutput
- type UserPtrInput
- type UserPtrOutput
- type UserState
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type LookupServerArgs ¶
type LookupServerArgs struct { // ID for an SFTP server. ServerId string `pulumi:"serverId"` }
A collection of arguments for invoking getServer.
type LookupServerResult ¶
type LookupServerResult struct { // Amazon Resource Name (ARN) of Transfer Server Arn string `pulumi:"arn"` // The endpoint of the Transfer Server (e.g. `s-12345678.server.transfer.REGION.amazonaws.com`) Endpoint string `pulumi:"endpoint"` // The provider-assigned unique ID for this managed resource. Id string `pulumi:"id"` // The mode of authentication enabled for this service. The default value is `SERVICE_MANAGED`, which allows you to store and access SFTP user credentials within the service. `API_GATEWAY` indicates that user authentication requires a call to an API Gateway endpoint URL provided by you to integrate an identity provider of your choice. IdentityProviderType string `pulumi:"identityProviderType"` // Amazon Resource Name (ARN) of the IAM role used to authenticate the user account with an `identityProviderType` of `API_GATEWAY`. InvocationRole string `pulumi:"invocationRole"` // Amazon Resource Name (ARN) of an IAM role that allows the service to write your SFTP users’ activity to your Amazon CloudWatch logs for monitoring and auditing purposes. LoggingRole string `pulumi:"loggingRole"` ServerId string `pulumi:"serverId"` // URL of the service endpoint used to authenticate users with an `identityProviderType` of `API_GATEWAY`. Url string `pulumi:"url"` }
A collection of values returned by getServer.
func LookupServer ¶
func LookupServer(ctx *pulumi.Context, args *LookupServerArgs, opts ...pulumi.InvokeOption) (*LookupServerResult, error)
Use this data source to get the ARN of an AWS Transfer Server for use in other resources.
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/transfer" "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := transfer.LookupServer(ctx, &transfer.LookupServerArgs{ ServerId: "s-1234567", }, nil) if err != nil { return err } return nil }) }
```
type Server ¶
type Server struct { pulumi.CustomResourceState // Amazon Resource Name (ARN) of Transfer Server Arn pulumi.StringOutput `pulumi:"arn"` // The endpoint of the Transfer Server (e.g. `s-12345678.server.transfer.REGION.amazonaws.com`) Endpoint pulumi.StringOutput `pulumi:"endpoint"` // The virtual private cloud (VPC) endpoint settings that you want to configure for your SFTP server. Fields documented below. EndpointDetails ServerEndpointDetailsPtrOutput `pulumi:"endpointDetails"` // The type of endpoint that you want your SFTP server connect to. If you connect to a `VPC` (or `VPC_ENDPOINT`), your SFTP server isn't accessible over the public internet. If you want to connect your SFTP server via public internet, set `PUBLIC`. Defaults to `PUBLIC`. EndpointType pulumi.StringPtrOutput `pulumi:"endpointType"` // A boolean that indicates all users associated with the server should be deleted so that the Server can be destroyed without error. The default value is `false`. ForceDestroy pulumi.BoolPtrOutput `pulumi:"forceDestroy"` // RSA private key (e.g. as generated by the `ssh-keygen -N "" -m PEM -f my-new-server-key` command). HostKey pulumi.StringPtrOutput `pulumi:"hostKey"` // This value contains the message-digest algorithm (MD5) hash of the server's host key. This value is equivalent to the output of the `ssh-keygen -l -E md5 -f my-new-server-key` command. HostKeyFingerprint pulumi.StringOutput `pulumi:"hostKeyFingerprint"` // The mode of authentication enabled for this service. The default value is `SERVICE_MANAGED`, which allows you to store and access SFTP user credentials within the service. `API_GATEWAY` indicates that user authentication requires a call to an API Gateway endpoint URL provided by you to integrate an identity provider of your choice. IdentityProviderType pulumi.StringPtrOutput `pulumi:"identityProviderType"` // Amazon Resource Name (ARN) of the IAM role used to authenticate the user account with an `identityProviderType` of `API_GATEWAY`. InvocationRole pulumi.StringPtrOutput `pulumi:"invocationRole"` // Amazon Resource Name (ARN) of an IAM role that allows the service to write your SFTP users’ activity to your Amazon CloudWatch logs for monitoring and auditing purposes. LoggingRole pulumi.StringPtrOutput `pulumi:"loggingRole"` // A map of tags to assign to the resource. Tags pulumi.StringMapOutput `pulumi:"tags"` // - URL of the service endpoint used to authenticate users with an `identityProviderType` of `API_GATEWAY`. Url pulumi.StringPtrOutput `pulumi:"url"` }
Provides a AWS Transfer Server resource.
## Example Usage
```go package main
import (
"fmt" "github.com/pulumi/pulumi-aws/sdk/v3/go/aws/iam" "github.com/pulumi/pulumi-aws/sdk/v3/go/aws/transfer" "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { exampleRole, err := iam.NewRole(ctx, "exampleRole", &iam.RoleArgs{ AssumeRolePolicy: pulumi.String(fmt.Sprintf("%v%v%v%v%v%v%v%v%v%v%v%v", "{\n", " \"Version\": \"2012-10-17\",\n", " \"Statement\": [\n", " {\n", " \"Effect\": \"Allow\",\n", " \"Principal\": {\n", " \"Service\": \"transfer.amazonaws.com\"\n", " },\n", " \"Action\": \"sts:AssumeRole\"\n", " }\n", " ]\n", "}\n")), }) if err != nil { return err } _, err = transfer.NewServer(ctx, "exampleServer", &transfer.ServerArgs{ IdentityProviderType: pulumi.String("SERVICE_MANAGED"), LoggingRole: exampleRole.Arn, Tags: pulumi.StringMap{ "NAME": pulumi.String("tf-acc-test-transfer-server"), "ENV": pulumi.String("test"), }, }) if err != nil { return err } _, err = iam.NewRolePolicy(ctx, "exampleRolePolicy", &iam.RolePolicyArgs{ Role: exampleRole.ID(), Policy: pulumi.String(fmt.Sprintf("%v%v%v%v%v%v%v%v%v%v%v%v%v", "{\n", " \"Version\": \"2012-10-17\",\n", " \"Statement\": [\n", " {\n", " \"Sid\": \"AllowFullAccesstoCloudWatchLogs\",\n", " \"Effect\": \"Allow\",\n", " \"Action\": [\n", " \"logs:*\"\n", " ],\n", " \"Resource\": \"*\"\n", " }\n", " ]\n", "}\n")), }) if err != nil { return err } return nil }) }
```
## Import
Transfer Servers can be imported using the `server id`, e.g.
```sh
$ pulumi import aws:transfer/server:Server bar s-12345678
```
Certain resource arguments, such as `host_key`, cannot be read via the API and imported into the provider. This provider will display a difference for these arguments the first run after import if declared in the provider configuration for an imported resource.
func GetServer ¶
func GetServer(ctx *pulumi.Context, name string, id pulumi.IDInput, state *ServerState, opts ...pulumi.ResourceOption) (*Server, error)
GetServer gets an existing Server resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewServer ¶
func NewServer(ctx *pulumi.Context, name string, args *ServerArgs, opts ...pulumi.ResourceOption) (*Server, error)
NewServer registers a new resource with the given unique name, arguments, and options.
func (*Server) ElementType ¶ added in v3.13.0
func (*Server) ToServerOutput ¶ added in v3.13.0
func (i *Server) ToServerOutput() ServerOutput
func (*Server) ToServerOutputWithContext ¶ added in v3.13.0
func (i *Server) ToServerOutputWithContext(ctx context.Context) ServerOutput
func (*Server) ToServerPtrOutput ¶ added in v3.25.0
func (i *Server) ToServerPtrOutput() ServerPtrOutput
func (*Server) ToServerPtrOutputWithContext ¶ added in v3.25.0
func (i *Server) ToServerPtrOutputWithContext(ctx context.Context) ServerPtrOutput
type ServerArgs ¶
type ServerArgs struct { // The virtual private cloud (VPC) endpoint settings that you want to configure for your SFTP server. Fields documented below. EndpointDetails ServerEndpointDetailsPtrInput // The type of endpoint that you want your SFTP server connect to. If you connect to a `VPC` (or `VPC_ENDPOINT`), your SFTP server isn't accessible over the public internet. If you want to connect your SFTP server via public internet, set `PUBLIC`. Defaults to `PUBLIC`. EndpointType pulumi.StringPtrInput // A boolean that indicates all users associated with the server should be deleted so that the Server can be destroyed without error. The default value is `false`. ForceDestroy pulumi.BoolPtrInput // RSA private key (e.g. as generated by the `ssh-keygen -N "" -m PEM -f my-new-server-key` command). HostKey pulumi.StringPtrInput // The mode of authentication enabled for this service. The default value is `SERVICE_MANAGED`, which allows you to store and access SFTP user credentials within the service. `API_GATEWAY` indicates that user authentication requires a call to an API Gateway endpoint URL provided by you to integrate an identity provider of your choice. IdentityProviderType pulumi.StringPtrInput // Amazon Resource Name (ARN) of the IAM role used to authenticate the user account with an `identityProviderType` of `API_GATEWAY`. InvocationRole pulumi.StringPtrInput // Amazon Resource Name (ARN) of an IAM role that allows the service to write your SFTP users’ activity to your Amazon CloudWatch logs for monitoring and auditing purposes. LoggingRole pulumi.StringPtrInput // A map of tags to assign to the resource. Tags pulumi.StringMapInput // - URL of the service endpoint used to authenticate users with an `identityProviderType` of `API_GATEWAY`. Url pulumi.StringPtrInput }
The set of arguments for constructing a Server resource.
func (ServerArgs) ElementType ¶
func (ServerArgs) ElementType() reflect.Type
type ServerArray ¶ added in v3.25.0
type ServerArray []ServerInput
func (ServerArray) ElementType ¶ added in v3.25.0
func (ServerArray) ElementType() reflect.Type
func (ServerArray) ToServerArrayOutput ¶ added in v3.25.0
func (i ServerArray) ToServerArrayOutput() ServerArrayOutput
func (ServerArray) ToServerArrayOutputWithContext ¶ added in v3.25.0
func (i ServerArray) ToServerArrayOutputWithContext(ctx context.Context) ServerArrayOutput
type ServerArrayInput ¶ added in v3.25.0
type ServerArrayInput interface { pulumi.Input ToServerArrayOutput() ServerArrayOutput ToServerArrayOutputWithContext(context.Context) ServerArrayOutput }
ServerArrayInput is an input type that accepts ServerArray and ServerArrayOutput values. You can construct a concrete instance of `ServerArrayInput` via:
ServerArray{ ServerArgs{...} }
type ServerArrayOutput ¶ added in v3.25.0
type ServerArrayOutput struct{ *pulumi.OutputState }
func (ServerArrayOutput) ElementType ¶ added in v3.25.0
func (ServerArrayOutput) ElementType() reflect.Type
func (ServerArrayOutput) Index ¶ added in v3.25.0
func (o ServerArrayOutput) Index(i pulumi.IntInput) ServerOutput
func (ServerArrayOutput) ToServerArrayOutput ¶ added in v3.25.0
func (o ServerArrayOutput) ToServerArrayOutput() ServerArrayOutput
func (ServerArrayOutput) ToServerArrayOutputWithContext ¶ added in v3.25.0
func (o ServerArrayOutput) ToServerArrayOutputWithContext(ctx context.Context) ServerArrayOutput
type ServerEndpointDetails ¶
type ServerEndpointDetails struct { // A list of address allocation IDs that are required to attach an Elastic IP address to your SFTP server's endpoint. This property can only be used when `endpointType` is set to `VPC`. AddressAllocationIds []string `pulumi:"addressAllocationIds"` // A list of subnet IDs that are required to host your SFTP server endpoint in your VPC. This property can only be used when `endpointType` is set to `VPC`. SubnetIds []string `pulumi:"subnetIds"` // The ID of the VPC endpoint. This property can only be used when `endpointType` is set to `VPC_ENDPOINT` VpcEndpointId *string `pulumi:"vpcEndpointId"` // The VPC ID of the virtual private cloud in which the SFTP server's endpoint will be hosted. This property can only be used when `endpointType` is set to `VPC`. VpcId *string `pulumi:"vpcId"` }
type ServerEndpointDetailsArgs ¶
type ServerEndpointDetailsArgs struct { // A list of address allocation IDs that are required to attach an Elastic IP address to your SFTP server's endpoint. This property can only be used when `endpointType` is set to `VPC`. AddressAllocationIds pulumi.StringArrayInput `pulumi:"addressAllocationIds"` // A list of subnet IDs that are required to host your SFTP server endpoint in your VPC. This property can only be used when `endpointType` is set to `VPC`. SubnetIds pulumi.StringArrayInput `pulumi:"subnetIds"` // The ID of the VPC endpoint. This property can only be used when `endpointType` is set to `VPC_ENDPOINT` VpcEndpointId pulumi.StringPtrInput `pulumi:"vpcEndpointId"` // The VPC ID of the virtual private cloud in which the SFTP server's endpoint will be hosted. This property can only be used when `endpointType` is set to `VPC`. VpcId pulumi.StringPtrInput `pulumi:"vpcId"` }
func (ServerEndpointDetailsArgs) ElementType ¶
func (ServerEndpointDetailsArgs) ElementType() reflect.Type
func (ServerEndpointDetailsArgs) ToServerEndpointDetailsOutput ¶
func (i ServerEndpointDetailsArgs) ToServerEndpointDetailsOutput() ServerEndpointDetailsOutput
func (ServerEndpointDetailsArgs) ToServerEndpointDetailsOutputWithContext ¶
func (i ServerEndpointDetailsArgs) ToServerEndpointDetailsOutputWithContext(ctx context.Context) ServerEndpointDetailsOutput
func (ServerEndpointDetailsArgs) ToServerEndpointDetailsPtrOutput ¶
func (i ServerEndpointDetailsArgs) ToServerEndpointDetailsPtrOutput() ServerEndpointDetailsPtrOutput
func (ServerEndpointDetailsArgs) ToServerEndpointDetailsPtrOutputWithContext ¶
func (i ServerEndpointDetailsArgs) ToServerEndpointDetailsPtrOutputWithContext(ctx context.Context) ServerEndpointDetailsPtrOutput
type ServerEndpointDetailsInput ¶
type ServerEndpointDetailsInput interface { pulumi.Input ToServerEndpointDetailsOutput() ServerEndpointDetailsOutput ToServerEndpointDetailsOutputWithContext(context.Context) ServerEndpointDetailsOutput }
ServerEndpointDetailsInput is an input type that accepts ServerEndpointDetailsArgs and ServerEndpointDetailsOutput values. You can construct a concrete instance of `ServerEndpointDetailsInput` via:
ServerEndpointDetailsArgs{...}
type ServerEndpointDetailsOutput ¶
type ServerEndpointDetailsOutput struct{ *pulumi.OutputState }
func (ServerEndpointDetailsOutput) AddressAllocationIds ¶ added in v3.5.0
func (o ServerEndpointDetailsOutput) AddressAllocationIds() pulumi.StringArrayOutput
A list of address allocation IDs that are required to attach an Elastic IP address to your SFTP server's endpoint. This property can only be used when `endpointType` is set to `VPC`.
func (ServerEndpointDetailsOutput) ElementType ¶
func (ServerEndpointDetailsOutput) ElementType() reflect.Type
func (ServerEndpointDetailsOutput) SubnetIds ¶ added in v3.5.0
func (o ServerEndpointDetailsOutput) SubnetIds() pulumi.StringArrayOutput
A list of subnet IDs that are required to host your SFTP server endpoint in your VPC. This property can only be used when `endpointType` is set to `VPC`.
func (ServerEndpointDetailsOutput) ToServerEndpointDetailsOutput ¶
func (o ServerEndpointDetailsOutput) ToServerEndpointDetailsOutput() ServerEndpointDetailsOutput
func (ServerEndpointDetailsOutput) ToServerEndpointDetailsOutputWithContext ¶
func (o ServerEndpointDetailsOutput) ToServerEndpointDetailsOutputWithContext(ctx context.Context) ServerEndpointDetailsOutput
func (ServerEndpointDetailsOutput) ToServerEndpointDetailsPtrOutput ¶
func (o ServerEndpointDetailsOutput) ToServerEndpointDetailsPtrOutput() ServerEndpointDetailsPtrOutput
func (ServerEndpointDetailsOutput) ToServerEndpointDetailsPtrOutputWithContext ¶
func (o ServerEndpointDetailsOutput) ToServerEndpointDetailsPtrOutputWithContext(ctx context.Context) ServerEndpointDetailsPtrOutput
func (ServerEndpointDetailsOutput) VpcEndpointId ¶
func (o ServerEndpointDetailsOutput) VpcEndpointId() pulumi.StringPtrOutput
The ID of the VPC endpoint. This property can only be used when `endpointType` is set to `VPC_ENDPOINT`
func (ServerEndpointDetailsOutput) VpcId ¶ added in v3.5.0
func (o ServerEndpointDetailsOutput) VpcId() pulumi.StringPtrOutput
The VPC ID of the virtual private cloud in which the SFTP server's endpoint will be hosted. This property can only be used when `endpointType` is set to `VPC`.
type ServerEndpointDetailsPtrInput ¶
type ServerEndpointDetailsPtrInput interface { pulumi.Input ToServerEndpointDetailsPtrOutput() ServerEndpointDetailsPtrOutput ToServerEndpointDetailsPtrOutputWithContext(context.Context) ServerEndpointDetailsPtrOutput }
ServerEndpointDetailsPtrInput is an input type that accepts ServerEndpointDetailsArgs, ServerEndpointDetailsPtr and ServerEndpointDetailsPtrOutput values. You can construct a concrete instance of `ServerEndpointDetailsPtrInput` via:
ServerEndpointDetailsArgs{...} or: nil
func ServerEndpointDetailsPtr ¶
func ServerEndpointDetailsPtr(v *ServerEndpointDetailsArgs) ServerEndpointDetailsPtrInput
type ServerEndpointDetailsPtrOutput ¶
type ServerEndpointDetailsPtrOutput struct{ *pulumi.OutputState }
func (ServerEndpointDetailsPtrOutput) AddressAllocationIds ¶ added in v3.5.0
func (o ServerEndpointDetailsPtrOutput) AddressAllocationIds() pulumi.StringArrayOutput
A list of address allocation IDs that are required to attach an Elastic IP address to your SFTP server's endpoint. This property can only be used when `endpointType` is set to `VPC`.
func (ServerEndpointDetailsPtrOutput) Elem ¶
func (o ServerEndpointDetailsPtrOutput) Elem() ServerEndpointDetailsOutput
func (ServerEndpointDetailsPtrOutput) ElementType ¶
func (ServerEndpointDetailsPtrOutput) ElementType() reflect.Type
func (ServerEndpointDetailsPtrOutput) SubnetIds ¶ added in v3.5.0
func (o ServerEndpointDetailsPtrOutput) SubnetIds() pulumi.StringArrayOutput
A list of subnet IDs that are required to host your SFTP server endpoint in your VPC. This property can only be used when `endpointType` is set to `VPC`.
func (ServerEndpointDetailsPtrOutput) ToServerEndpointDetailsPtrOutput ¶
func (o ServerEndpointDetailsPtrOutput) ToServerEndpointDetailsPtrOutput() ServerEndpointDetailsPtrOutput
func (ServerEndpointDetailsPtrOutput) ToServerEndpointDetailsPtrOutputWithContext ¶
func (o ServerEndpointDetailsPtrOutput) ToServerEndpointDetailsPtrOutputWithContext(ctx context.Context) ServerEndpointDetailsPtrOutput
func (ServerEndpointDetailsPtrOutput) VpcEndpointId ¶
func (o ServerEndpointDetailsPtrOutput) VpcEndpointId() pulumi.StringPtrOutput
The ID of the VPC endpoint. This property can only be used when `endpointType` is set to `VPC_ENDPOINT`
func (ServerEndpointDetailsPtrOutput) VpcId ¶ added in v3.5.0
func (o ServerEndpointDetailsPtrOutput) VpcId() pulumi.StringPtrOutput
The VPC ID of the virtual private cloud in which the SFTP server's endpoint will be hosted. This property can only be used when `endpointType` is set to `VPC`.
type ServerInput ¶ added in v3.13.0
type ServerInput interface { pulumi.Input ToServerOutput() ServerOutput ToServerOutputWithContext(ctx context.Context) ServerOutput }
type ServerMap ¶ added in v3.25.0
type ServerMap map[string]ServerInput
func (ServerMap) ElementType ¶ added in v3.25.0
func (ServerMap) ToServerMapOutput ¶ added in v3.25.0
func (i ServerMap) ToServerMapOutput() ServerMapOutput
func (ServerMap) ToServerMapOutputWithContext ¶ added in v3.25.0
func (i ServerMap) ToServerMapOutputWithContext(ctx context.Context) ServerMapOutput
type ServerMapInput ¶ added in v3.25.0
type ServerMapInput interface { pulumi.Input ToServerMapOutput() ServerMapOutput ToServerMapOutputWithContext(context.Context) ServerMapOutput }
ServerMapInput is an input type that accepts ServerMap and ServerMapOutput values. You can construct a concrete instance of `ServerMapInput` via:
ServerMap{ "key": ServerArgs{...} }
type ServerMapOutput ¶ added in v3.25.0
type ServerMapOutput struct{ *pulumi.OutputState }
func (ServerMapOutput) ElementType ¶ added in v3.25.0
func (ServerMapOutput) ElementType() reflect.Type
func (ServerMapOutput) MapIndex ¶ added in v3.25.0
func (o ServerMapOutput) MapIndex(k pulumi.StringInput) ServerOutput
func (ServerMapOutput) ToServerMapOutput ¶ added in v3.25.0
func (o ServerMapOutput) ToServerMapOutput() ServerMapOutput
func (ServerMapOutput) ToServerMapOutputWithContext ¶ added in v3.25.0
func (o ServerMapOutput) ToServerMapOutputWithContext(ctx context.Context) ServerMapOutput
type ServerOutput ¶ added in v3.13.0
type ServerOutput struct {
*pulumi.OutputState
}
func (ServerOutput) ElementType ¶ added in v3.13.0
func (ServerOutput) ElementType() reflect.Type
func (ServerOutput) ToServerOutput ¶ added in v3.13.0
func (o ServerOutput) ToServerOutput() ServerOutput
func (ServerOutput) ToServerOutputWithContext ¶ added in v3.13.0
func (o ServerOutput) ToServerOutputWithContext(ctx context.Context) ServerOutput
func (ServerOutput) ToServerPtrOutput ¶ added in v3.25.0
func (o ServerOutput) ToServerPtrOutput() ServerPtrOutput
func (ServerOutput) ToServerPtrOutputWithContext ¶ added in v3.25.0
func (o ServerOutput) ToServerPtrOutputWithContext(ctx context.Context) ServerPtrOutput
type ServerPtrInput ¶ added in v3.25.0
type ServerPtrInput interface { pulumi.Input ToServerPtrOutput() ServerPtrOutput ToServerPtrOutputWithContext(ctx context.Context) ServerPtrOutput }
type ServerPtrOutput ¶ added in v3.25.0
type ServerPtrOutput struct {
*pulumi.OutputState
}
func (ServerPtrOutput) ElementType ¶ added in v3.25.0
func (ServerPtrOutput) ElementType() reflect.Type
func (ServerPtrOutput) ToServerPtrOutput ¶ added in v3.25.0
func (o ServerPtrOutput) ToServerPtrOutput() ServerPtrOutput
func (ServerPtrOutput) ToServerPtrOutputWithContext ¶ added in v3.25.0
func (o ServerPtrOutput) ToServerPtrOutputWithContext(ctx context.Context) ServerPtrOutput
type ServerState ¶
type ServerState struct { // Amazon Resource Name (ARN) of Transfer Server Arn pulumi.StringPtrInput // The endpoint of the Transfer Server (e.g. `s-12345678.server.transfer.REGION.amazonaws.com`) Endpoint pulumi.StringPtrInput // The virtual private cloud (VPC) endpoint settings that you want to configure for your SFTP server. Fields documented below. EndpointDetails ServerEndpointDetailsPtrInput // The type of endpoint that you want your SFTP server connect to. If you connect to a `VPC` (or `VPC_ENDPOINT`), your SFTP server isn't accessible over the public internet. If you want to connect your SFTP server via public internet, set `PUBLIC`. Defaults to `PUBLIC`. EndpointType pulumi.StringPtrInput // A boolean that indicates all users associated with the server should be deleted so that the Server can be destroyed without error. The default value is `false`. ForceDestroy pulumi.BoolPtrInput // RSA private key (e.g. as generated by the `ssh-keygen -N "" -m PEM -f my-new-server-key` command). HostKey pulumi.StringPtrInput // This value contains the message-digest algorithm (MD5) hash of the server's host key. This value is equivalent to the output of the `ssh-keygen -l -E md5 -f my-new-server-key` command. HostKeyFingerprint pulumi.StringPtrInput // The mode of authentication enabled for this service. The default value is `SERVICE_MANAGED`, which allows you to store and access SFTP user credentials within the service. `API_GATEWAY` indicates that user authentication requires a call to an API Gateway endpoint URL provided by you to integrate an identity provider of your choice. IdentityProviderType pulumi.StringPtrInput // Amazon Resource Name (ARN) of the IAM role used to authenticate the user account with an `identityProviderType` of `API_GATEWAY`. InvocationRole pulumi.StringPtrInput // Amazon Resource Name (ARN) of an IAM role that allows the service to write your SFTP users’ activity to your Amazon CloudWatch logs for monitoring and auditing purposes. LoggingRole pulumi.StringPtrInput // A map of tags to assign to the resource. Tags pulumi.StringMapInput // - URL of the service endpoint used to authenticate users with an `identityProviderType` of `API_GATEWAY`. Url pulumi.StringPtrInput }
func (ServerState) ElementType ¶
func (ServerState) ElementType() reflect.Type
type SshKey ¶
type SshKey struct { pulumi.CustomResourceState // The public key portion of an SSH key pair. Body pulumi.StringOutput `pulumi:"body"` // The Server ID of the Transfer Server (e.g. `s-12345678`) ServerId pulumi.StringOutput `pulumi:"serverId"` // The name of the user account that is assigned to one or more servers. UserName pulumi.StringOutput `pulumi:"userName"` }
Provides a AWS Transfer User SSH Key resource.
## Example Usage
```go package main
import (
"fmt" "github.com/pulumi/pulumi-aws/sdk/v3/go/aws/iam" "github.com/pulumi/pulumi-aws/sdk/v3/go/aws/transfer" "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { exampleServer, err := transfer.NewServer(ctx, "exampleServer", &transfer.ServerArgs{ IdentityProviderType: pulumi.String("SERVICE_MANAGED"), Tags: pulumi.StringMap{ "NAME": pulumi.String("tf-acc-test-transfer-server"), }, }) if err != nil { return err } exampleRole, err := iam.NewRole(ctx, "exampleRole", &iam.RoleArgs{ AssumeRolePolicy: pulumi.String(fmt.Sprintf("%v%v%v%v%v%v%v%v%v%v%v%v", "{\n", " \"Version\": \"2012-10-17\",\n", " \"Statement\": [\n", " {\n", " \"Effect\": \"Allow\",\n", " \"Principal\": {\n", " \"Service\": \"transfer.amazonaws.com\"\n", " },\n", " \"Action\": \"sts:AssumeRole\"\n", " }\n", " ]\n", "}\n")), }) if err != nil { return err } exampleUser, err := transfer.NewUser(ctx, "exampleUser", &transfer.UserArgs{ ServerId: exampleServer.ID(), UserName: pulumi.String("tftestuser"), Role: exampleRole.Arn, Tags: pulumi.StringMap{ "NAME": pulumi.String("tftestuser"), }, }) if err != nil { return err } _, err = transfer.NewSshKey(ctx, "exampleSshKey", &transfer.SshKeyArgs{ ServerId: exampleServer.ID(), UserName: exampleUser.UserName, Body: pulumi.String("... SSH key ..."), }) if err != nil { return err } _, err = iam.NewRolePolicy(ctx, "exampleRolePolicy", &iam.RolePolicyArgs{ Role: exampleRole.ID(), Policy: pulumi.String(fmt.Sprintf("%v%v%v%v%v%v%v%v%v%v%v%v%v", "{\n", " \"Version\": \"2012-10-17\",\n", " \"Statement\": [\n", " {\n", " \"Sid\": \"AllowFullAccesstoS3\",\n", " \"Effect\": \"Allow\",\n", " \"Action\": [\n", " \"s3:*\"\n", " ],\n", " \"Resource\": \"*\"\n", " }\n", " ]\n", "}\n")), }) if err != nil { return err } return nil }) }
```
## Import
Transfer SSH Public Key can be imported using the `server_id` and `user_name` and `ssh_public_key_id` separated by `/`.
```sh
$ pulumi import aws:transfer/sshKey:SshKey bar s-12345678/test-username/key-12345
```
func GetSshKey ¶
func GetSshKey(ctx *pulumi.Context, name string, id pulumi.IDInput, state *SshKeyState, opts ...pulumi.ResourceOption) (*SshKey, error)
GetSshKey gets an existing SshKey resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewSshKey ¶
func NewSshKey(ctx *pulumi.Context, name string, args *SshKeyArgs, opts ...pulumi.ResourceOption) (*SshKey, error)
NewSshKey registers a new resource with the given unique name, arguments, and options.
func (*SshKey) ElementType ¶ added in v3.13.0
func (*SshKey) ToSshKeyOutput ¶ added in v3.13.0
func (i *SshKey) ToSshKeyOutput() SshKeyOutput
func (*SshKey) ToSshKeyOutputWithContext ¶ added in v3.13.0
func (i *SshKey) ToSshKeyOutputWithContext(ctx context.Context) SshKeyOutput
func (*SshKey) ToSshKeyPtrOutput ¶ added in v3.25.0
func (i *SshKey) ToSshKeyPtrOutput() SshKeyPtrOutput
func (*SshKey) ToSshKeyPtrOutputWithContext ¶ added in v3.25.0
func (i *SshKey) ToSshKeyPtrOutputWithContext(ctx context.Context) SshKeyPtrOutput
type SshKeyArgs ¶
type SshKeyArgs struct { // The public key portion of an SSH key pair. Body pulumi.StringInput // The Server ID of the Transfer Server (e.g. `s-12345678`) ServerId pulumi.StringInput // The name of the user account that is assigned to one or more servers. UserName pulumi.StringInput }
The set of arguments for constructing a SshKey resource.
func (SshKeyArgs) ElementType ¶
func (SshKeyArgs) ElementType() reflect.Type
type SshKeyArray ¶ added in v3.25.0
type SshKeyArray []SshKeyInput
func (SshKeyArray) ElementType ¶ added in v3.25.0
func (SshKeyArray) ElementType() reflect.Type
func (SshKeyArray) ToSshKeyArrayOutput ¶ added in v3.25.0
func (i SshKeyArray) ToSshKeyArrayOutput() SshKeyArrayOutput
func (SshKeyArray) ToSshKeyArrayOutputWithContext ¶ added in v3.25.0
func (i SshKeyArray) ToSshKeyArrayOutputWithContext(ctx context.Context) SshKeyArrayOutput
type SshKeyArrayInput ¶ added in v3.25.0
type SshKeyArrayInput interface { pulumi.Input ToSshKeyArrayOutput() SshKeyArrayOutput ToSshKeyArrayOutputWithContext(context.Context) SshKeyArrayOutput }
SshKeyArrayInput is an input type that accepts SshKeyArray and SshKeyArrayOutput values. You can construct a concrete instance of `SshKeyArrayInput` via:
SshKeyArray{ SshKeyArgs{...} }
type SshKeyArrayOutput ¶ added in v3.25.0
type SshKeyArrayOutput struct{ *pulumi.OutputState }
func (SshKeyArrayOutput) ElementType ¶ added in v3.25.0
func (SshKeyArrayOutput) ElementType() reflect.Type
func (SshKeyArrayOutput) Index ¶ added in v3.25.0
func (o SshKeyArrayOutput) Index(i pulumi.IntInput) SshKeyOutput
func (SshKeyArrayOutput) ToSshKeyArrayOutput ¶ added in v3.25.0
func (o SshKeyArrayOutput) ToSshKeyArrayOutput() SshKeyArrayOutput
func (SshKeyArrayOutput) ToSshKeyArrayOutputWithContext ¶ added in v3.25.0
func (o SshKeyArrayOutput) ToSshKeyArrayOutputWithContext(ctx context.Context) SshKeyArrayOutput
type SshKeyInput ¶ added in v3.13.0
type SshKeyInput interface { pulumi.Input ToSshKeyOutput() SshKeyOutput ToSshKeyOutputWithContext(ctx context.Context) SshKeyOutput }
type SshKeyMap ¶ added in v3.25.0
type SshKeyMap map[string]SshKeyInput
func (SshKeyMap) ElementType ¶ added in v3.25.0
func (SshKeyMap) ToSshKeyMapOutput ¶ added in v3.25.0
func (i SshKeyMap) ToSshKeyMapOutput() SshKeyMapOutput
func (SshKeyMap) ToSshKeyMapOutputWithContext ¶ added in v3.25.0
func (i SshKeyMap) ToSshKeyMapOutputWithContext(ctx context.Context) SshKeyMapOutput
type SshKeyMapInput ¶ added in v3.25.0
type SshKeyMapInput interface { pulumi.Input ToSshKeyMapOutput() SshKeyMapOutput ToSshKeyMapOutputWithContext(context.Context) SshKeyMapOutput }
SshKeyMapInput is an input type that accepts SshKeyMap and SshKeyMapOutput values. You can construct a concrete instance of `SshKeyMapInput` via:
SshKeyMap{ "key": SshKeyArgs{...} }
type SshKeyMapOutput ¶ added in v3.25.0
type SshKeyMapOutput struct{ *pulumi.OutputState }
func (SshKeyMapOutput) ElementType ¶ added in v3.25.0
func (SshKeyMapOutput) ElementType() reflect.Type
func (SshKeyMapOutput) MapIndex ¶ added in v3.25.0
func (o SshKeyMapOutput) MapIndex(k pulumi.StringInput) SshKeyOutput
func (SshKeyMapOutput) ToSshKeyMapOutput ¶ added in v3.25.0
func (o SshKeyMapOutput) ToSshKeyMapOutput() SshKeyMapOutput
func (SshKeyMapOutput) ToSshKeyMapOutputWithContext ¶ added in v3.25.0
func (o SshKeyMapOutput) ToSshKeyMapOutputWithContext(ctx context.Context) SshKeyMapOutput
type SshKeyOutput ¶ added in v3.13.0
type SshKeyOutput struct {
*pulumi.OutputState
}
func (SshKeyOutput) ElementType ¶ added in v3.13.0
func (SshKeyOutput) ElementType() reflect.Type
func (SshKeyOutput) ToSshKeyOutput ¶ added in v3.13.0
func (o SshKeyOutput) ToSshKeyOutput() SshKeyOutput
func (SshKeyOutput) ToSshKeyOutputWithContext ¶ added in v3.13.0
func (o SshKeyOutput) ToSshKeyOutputWithContext(ctx context.Context) SshKeyOutput
func (SshKeyOutput) ToSshKeyPtrOutput ¶ added in v3.25.0
func (o SshKeyOutput) ToSshKeyPtrOutput() SshKeyPtrOutput
func (SshKeyOutput) ToSshKeyPtrOutputWithContext ¶ added in v3.25.0
func (o SshKeyOutput) ToSshKeyPtrOutputWithContext(ctx context.Context) SshKeyPtrOutput
type SshKeyPtrInput ¶ added in v3.25.0
type SshKeyPtrInput interface { pulumi.Input ToSshKeyPtrOutput() SshKeyPtrOutput ToSshKeyPtrOutputWithContext(ctx context.Context) SshKeyPtrOutput }
type SshKeyPtrOutput ¶ added in v3.25.0
type SshKeyPtrOutput struct {
*pulumi.OutputState
}
func (SshKeyPtrOutput) ElementType ¶ added in v3.25.0
func (SshKeyPtrOutput) ElementType() reflect.Type
func (SshKeyPtrOutput) ToSshKeyPtrOutput ¶ added in v3.25.0
func (o SshKeyPtrOutput) ToSshKeyPtrOutput() SshKeyPtrOutput
func (SshKeyPtrOutput) ToSshKeyPtrOutputWithContext ¶ added in v3.25.0
func (o SshKeyPtrOutput) ToSshKeyPtrOutputWithContext(ctx context.Context) SshKeyPtrOutput
type SshKeyState ¶
type SshKeyState struct { // The public key portion of an SSH key pair. Body pulumi.StringPtrInput // The Server ID of the Transfer Server (e.g. `s-12345678`) ServerId pulumi.StringPtrInput // The name of the user account that is assigned to one or more servers. UserName pulumi.StringPtrInput }
func (SshKeyState) ElementType ¶
func (SshKeyState) ElementType() reflect.Type
type User ¶
type User struct { pulumi.CustomResourceState // Amazon Resource Name (ARN) of Transfer User Arn pulumi.StringOutput `pulumi:"arn"` // The landing directory (folder) for a user when they log in to the server using their SFTP client. It should begin with a `/`. The first item in the path is the name of the home bucket (accessible as `${Transfer:HomeBucket}` in the policy) and the rest is the home directory (accessible as `${Transfer:HomeDirectory}` in the policy). For example, `/example-bucket-1234/username` would set the home bucket to `example-bucket-1234` and the home directory to `username`. HomeDirectory pulumi.StringPtrOutput `pulumi:"homeDirectory"` // Logical directory mappings that specify what S3 paths and keys should be visible to your user and how you want to make them visible. documented below. HomeDirectoryMappings UserHomeDirectoryMappingArrayOutput `pulumi:"homeDirectoryMappings"` // The type of landing directory (folder) you mapped for your users' home directory. Valid values are `PATH` and `LOGICAL`. HomeDirectoryType pulumi.StringPtrOutput `pulumi:"homeDirectoryType"` // An IAM JSON policy document that scopes down user access to portions of their Amazon S3 bucket. IAM variables you can use inside this policy include `${Transfer:UserName}`, `${Transfer:HomeDirectory}`, and `${Transfer:HomeBucket}`. These are evaluated on-the-fly when navigating the bucket. Policy pulumi.StringPtrOutput `pulumi:"policy"` // Amazon Resource Name (ARN) of an IAM role that allows the service to controls your user’s access to your Amazon S3 bucket. Role pulumi.StringOutput `pulumi:"role"` // The Server ID of the Transfer Server (e.g. `s-12345678`) ServerId pulumi.StringOutput `pulumi:"serverId"` // A map of tags to assign to the resource. Tags pulumi.StringMapOutput `pulumi:"tags"` // The name used for log in to your SFTP server. UserName pulumi.StringOutput `pulumi:"userName"` }
Provides a AWS Transfer User resource. Managing SSH keys can be accomplished with the `transfer.SshKey` resource.
## Example Usage
```go package main
import (
"fmt" "github.com/pulumi/pulumi-aws/sdk/v3/go/aws/iam" "github.com/pulumi/pulumi-aws/sdk/v3/go/aws/transfer" "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { fooServer, err := transfer.NewServer(ctx, "fooServer", &transfer.ServerArgs{ IdentityProviderType: pulumi.String("SERVICE_MANAGED"), Tags: pulumi.StringMap{ "NAME": pulumi.String("tf-acc-test-transfer-server"), }, }) if err != nil { return err } fooRole, err := iam.NewRole(ctx, "fooRole", &iam.RoleArgs{ AssumeRolePolicy: pulumi.String(fmt.Sprintf("%v%v%v%v%v%v%v%v%v%v%v%v", "{\n", " \"Version\": \"2012-10-17\",\n", " \"Statement\": [\n", " {\n", " \"Effect\": \"Allow\",\n", " \"Principal\": {\n", " \"Service\": \"transfer.amazonaws.com\"\n", " },\n", " \"Action\": \"sts:AssumeRole\"\n", " }\n", " ]\n", "}\n")), }) if err != nil { return err } _, err = iam.NewRolePolicy(ctx, "fooRolePolicy", &iam.RolePolicyArgs{ Role: fooRole.ID(), Policy: pulumi.String(fmt.Sprintf("%v%v%v%v%v%v%v%v%v%v%v%v%v", "{\n", " \"Version\": \"2012-10-17\",\n", " \"Statement\": [\n", " {\n", " \"Sid\": \"AllowFullAccesstoS3\",\n", " \"Effect\": \"Allow\",\n", " \"Action\": [\n", " \"s3:*\"\n", " ],\n", " \"Resource\": \"*\"\n", " }\n", " ]\n", "}\n")), }) if err != nil { return err } _, err = transfer.NewUser(ctx, "fooUser", &transfer.UserArgs{ ServerId: fooServer.ID(), UserName: pulumi.String("tftestuser"), Role: fooRole.Arn, HomeDirectoryType: pulumi.String("LOGICAL"), HomeDirectoryMappings: transfer.UserHomeDirectoryMappingArray{ &transfer.UserHomeDirectoryMappingArgs{ Entry: pulumi.String("/test.pdf"), Target: pulumi.String("/bucket3/test-path/tftestuser.pdf"), }, }, }) if err != nil { return err } return nil }) }
```
## Import
Transfer Users can be imported using the `server_id` and `user_name` separated by `/`.
```sh
$ pulumi import aws:transfer/user:User bar s-12345678/test-username
```
func GetUser ¶
func GetUser(ctx *pulumi.Context, name string, id pulumi.IDInput, state *UserState, opts ...pulumi.ResourceOption) (*User, error)
GetUser gets an existing User resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewUser ¶
func NewUser(ctx *pulumi.Context, name string, args *UserArgs, opts ...pulumi.ResourceOption) (*User, error)
NewUser registers a new resource with the given unique name, arguments, and options.
func (*User) ElementType ¶ added in v3.13.0
func (*User) ToUserOutput ¶ added in v3.13.0
func (i *User) ToUserOutput() UserOutput
func (*User) ToUserOutputWithContext ¶ added in v3.13.0
func (i *User) ToUserOutputWithContext(ctx context.Context) UserOutput
func (*User) ToUserPtrOutput ¶ added in v3.25.0
func (i *User) ToUserPtrOutput() UserPtrOutput
func (*User) ToUserPtrOutputWithContext ¶ added in v3.25.0
func (i *User) ToUserPtrOutputWithContext(ctx context.Context) UserPtrOutput
type UserArgs ¶
type UserArgs struct { // The landing directory (folder) for a user when they log in to the server using their SFTP client. It should begin with a `/`. The first item in the path is the name of the home bucket (accessible as `${Transfer:HomeBucket}` in the policy) and the rest is the home directory (accessible as `${Transfer:HomeDirectory}` in the policy). For example, `/example-bucket-1234/username` would set the home bucket to `example-bucket-1234` and the home directory to `username`. HomeDirectory pulumi.StringPtrInput // Logical directory mappings that specify what S3 paths and keys should be visible to your user and how you want to make them visible. documented below. HomeDirectoryMappings UserHomeDirectoryMappingArrayInput // The type of landing directory (folder) you mapped for your users' home directory. Valid values are `PATH` and `LOGICAL`. HomeDirectoryType pulumi.StringPtrInput // An IAM JSON policy document that scopes down user access to portions of their Amazon S3 bucket. IAM variables you can use inside this policy include `${Transfer:UserName}`, `${Transfer:HomeDirectory}`, and `${Transfer:HomeBucket}`. These are evaluated on-the-fly when navigating the bucket. Policy pulumi.StringPtrInput // Amazon Resource Name (ARN) of an IAM role that allows the service to controls your user’s access to your Amazon S3 bucket. Role pulumi.StringInput // The Server ID of the Transfer Server (e.g. `s-12345678`) ServerId pulumi.StringInput // A map of tags to assign to the resource. Tags pulumi.StringMapInput // The name used for log in to your SFTP server. UserName pulumi.StringInput }
The set of arguments for constructing a User resource.
func (UserArgs) ElementType ¶
type UserArray ¶ added in v3.25.0
type UserArray []UserInput
func (UserArray) ElementType ¶ added in v3.25.0
func (UserArray) ToUserArrayOutput ¶ added in v3.25.0
func (i UserArray) ToUserArrayOutput() UserArrayOutput
func (UserArray) ToUserArrayOutputWithContext ¶ added in v3.25.0
func (i UserArray) ToUserArrayOutputWithContext(ctx context.Context) UserArrayOutput
type UserArrayInput ¶ added in v3.25.0
type UserArrayInput interface { pulumi.Input ToUserArrayOutput() UserArrayOutput ToUserArrayOutputWithContext(context.Context) UserArrayOutput }
UserArrayInput is an input type that accepts UserArray and UserArrayOutput values. You can construct a concrete instance of `UserArrayInput` via:
UserArray{ UserArgs{...} }
type UserArrayOutput ¶ added in v3.25.0
type UserArrayOutput struct{ *pulumi.OutputState }
func (UserArrayOutput) ElementType ¶ added in v3.25.0
func (UserArrayOutput) ElementType() reflect.Type
func (UserArrayOutput) Index ¶ added in v3.25.0
func (o UserArrayOutput) Index(i pulumi.IntInput) UserOutput
func (UserArrayOutput) ToUserArrayOutput ¶ added in v3.25.0
func (o UserArrayOutput) ToUserArrayOutput() UserArrayOutput
func (UserArrayOutput) ToUserArrayOutputWithContext ¶ added in v3.25.0
func (o UserArrayOutput) ToUserArrayOutputWithContext(ctx context.Context) UserArrayOutput
type UserHomeDirectoryMapping ¶ added in v3.5.0
type UserHomeDirectoryMappingArgs ¶ added in v3.5.0
type UserHomeDirectoryMappingArgs struct { // Represents an entry and a target. Entry pulumi.StringInput `pulumi:"entry"` // Represents the map target. Target pulumi.StringInput `pulumi:"target"` }
func (UserHomeDirectoryMappingArgs) ElementType ¶ added in v3.5.0
func (UserHomeDirectoryMappingArgs) ElementType() reflect.Type
func (UserHomeDirectoryMappingArgs) ToUserHomeDirectoryMappingOutput ¶ added in v3.5.0
func (i UserHomeDirectoryMappingArgs) ToUserHomeDirectoryMappingOutput() UserHomeDirectoryMappingOutput
func (UserHomeDirectoryMappingArgs) ToUserHomeDirectoryMappingOutputWithContext ¶ added in v3.5.0
func (i UserHomeDirectoryMappingArgs) ToUserHomeDirectoryMappingOutputWithContext(ctx context.Context) UserHomeDirectoryMappingOutput
type UserHomeDirectoryMappingArray ¶ added in v3.5.0
type UserHomeDirectoryMappingArray []UserHomeDirectoryMappingInput
func (UserHomeDirectoryMappingArray) ElementType ¶ added in v3.5.0
func (UserHomeDirectoryMappingArray) ElementType() reflect.Type
func (UserHomeDirectoryMappingArray) ToUserHomeDirectoryMappingArrayOutput ¶ added in v3.5.0
func (i UserHomeDirectoryMappingArray) ToUserHomeDirectoryMappingArrayOutput() UserHomeDirectoryMappingArrayOutput
func (UserHomeDirectoryMappingArray) ToUserHomeDirectoryMappingArrayOutputWithContext ¶ added in v3.5.0
func (i UserHomeDirectoryMappingArray) ToUserHomeDirectoryMappingArrayOutputWithContext(ctx context.Context) UserHomeDirectoryMappingArrayOutput
type UserHomeDirectoryMappingArrayInput ¶ added in v3.5.0
type UserHomeDirectoryMappingArrayInput interface { pulumi.Input ToUserHomeDirectoryMappingArrayOutput() UserHomeDirectoryMappingArrayOutput ToUserHomeDirectoryMappingArrayOutputWithContext(context.Context) UserHomeDirectoryMappingArrayOutput }
UserHomeDirectoryMappingArrayInput is an input type that accepts UserHomeDirectoryMappingArray and UserHomeDirectoryMappingArrayOutput values. You can construct a concrete instance of `UserHomeDirectoryMappingArrayInput` via:
UserHomeDirectoryMappingArray{ UserHomeDirectoryMappingArgs{...} }
type UserHomeDirectoryMappingArrayOutput ¶ added in v3.5.0
type UserHomeDirectoryMappingArrayOutput struct{ *pulumi.OutputState }
func (UserHomeDirectoryMappingArrayOutput) ElementType ¶ added in v3.5.0
func (UserHomeDirectoryMappingArrayOutput) ElementType() reflect.Type
func (UserHomeDirectoryMappingArrayOutput) Index ¶ added in v3.5.0
func (o UserHomeDirectoryMappingArrayOutput) Index(i pulumi.IntInput) UserHomeDirectoryMappingOutput
func (UserHomeDirectoryMappingArrayOutput) ToUserHomeDirectoryMappingArrayOutput ¶ added in v3.5.0
func (o UserHomeDirectoryMappingArrayOutput) ToUserHomeDirectoryMappingArrayOutput() UserHomeDirectoryMappingArrayOutput
func (UserHomeDirectoryMappingArrayOutput) ToUserHomeDirectoryMappingArrayOutputWithContext ¶ added in v3.5.0
func (o UserHomeDirectoryMappingArrayOutput) ToUserHomeDirectoryMappingArrayOutputWithContext(ctx context.Context) UserHomeDirectoryMappingArrayOutput
type UserHomeDirectoryMappingInput ¶ added in v3.5.0
type UserHomeDirectoryMappingInput interface { pulumi.Input ToUserHomeDirectoryMappingOutput() UserHomeDirectoryMappingOutput ToUserHomeDirectoryMappingOutputWithContext(context.Context) UserHomeDirectoryMappingOutput }
UserHomeDirectoryMappingInput is an input type that accepts UserHomeDirectoryMappingArgs and UserHomeDirectoryMappingOutput values. You can construct a concrete instance of `UserHomeDirectoryMappingInput` via:
UserHomeDirectoryMappingArgs{...}
type UserHomeDirectoryMappingOutput ¶ added in v3.5.0
type UserHomeDirectoryMappingOutput struct{ *pulumi.OutputState }
func (UserHomeDirectoryMappingOutput) ElementType ¶ added in v3.5.0
func (UserHomeDirectoryMappingOutput) ElementType() reflect.Type
func (UserHomeDirectoryMappingOutput) Entry ¶ added in v3.5.0
func (o UserHomeDirectoryMappingOutput) Entry() pulumi.StringOutput
Represents an entry and a target.
func (UserHomeDirectoryMappingOutput) Target ¶ added in v3.5.0
func (o UserHomeDirectoryMappingOutput) Target() pulumi.StringOutput
Represents the map target.
func (UserHomeDirectoryMappingOutput) ToUserHomeDirectoryMappingOutput ¶ added in v3.5.0
func (o UserHomeDirectoryMappingOutput) ToUserHomeDirectoryMappingOutput() UserHomeDirectoryMappingOutput
func (UserHomeDirectoryMappingOutput) ToUserHomeDirectoryMappingOutputWithContext ¶ added in v3.5.0
func (o UserHomeDirectoryMappingOutput) ToUserHomeDirectoryMappingOutputWithContext(ctx context.Context) UserHomeDirectoryMappingOutput
type UserInput ¶ added in v3.13.0
type UserInput interface { pulumi.Input ToUserOutput() UserOutput ToUserOutputWithContext(ctx context.Context) UserOutput }
type UserMap ¶ added in v3.25.0
func (UserMap) ElementType ¶ added in v3.25.0
func (UserMap) ToUserMapOutput ¶ added in v3.25.0
func (i UserMap) ToUserMapOutput() UserMapOutput
func (UserMap) ToUserMapOutputWithContext ¶ added in v3.25.0
func (i UserMap) ToUserMapOutputWithContext(ctx context.Context) UserMapOutput
type UserMapInput ¶ added in v3.25.0
type UserMapInput interface { pulumi.Input ToUserMapOutput() UserMapOutput ToUserMapOutputWithContext(context.Context) UserMapOutput }
UserMapInput is an input type that accepts UserMap and UserMapOutput values. You can construct a concrete instance of `UserMapInput` via:
UserMap{ "key": UserArgs{...} }
type UserMapOutput ¶ added in v3.25.0
type UserMapOutput struct{ *pulumi.OutputState }
func (UserMapOutput) ElementType ¶ added in v3.25.0
func (UserMapOutput) ElementType() reflect.Type
func (UserMapOutput) MapIndex ¶ added in v3.25.0
func (o UserMapOutput) MapIndex(k pulumi.StringInput) UserOutput
func (UserMapOutput) ToUserMapOutput ¶ added in v3.25.0
func (o UserMapOutput) ToUserMapOutput() UserMapOutput
func (UserMapOutput) ToUserMapOutputWithContext ¶ added in v3.25.0
func (o UserMapOutput) ToUserMapOutputWithContext(ctx context.Context) UserMapOutput
type UserOutput ¶ added in v3.13.0
type UserOutput struct {
*pulumi.OutputState
}
func (UserOutput) ElementType ¶ added in v3.13.0
func (UserOutput) ElementType() reflect.Type
func (UserOutput) ToUserOutput ¶ added in v3.13.0
func (o UserOutput) ToUserOutput() UserOutput
func (UserOutput) ToUserOutputWithContext ¶ added in v3.13.0
func (o UserOutput) ToUserOutputWithContext(ctx context.Context) UserOutput
func (UserOutput) ToUserPtrOutput ¶ added in v3.25.0
func (o UserOutput) ToUserPtrOutput() UserPtrOutput
func (UserOutput) ToUserPtrOutputWithContext ¶ added in v3.25.0
func (o UserOutput) ToUserPtrOutputWithContext(ctx context.Context) UserPtrOutput
type UserPtrInput ¶ added in v3.25.0
type UserPtrInput interface { pulumi.Input ToUserPtrOutput() UserPtrOutput ToUserPtrOutputWithContext(ctx context.Context) UserPtrOutput }
type UserPtrOutput ¶ added in v3.25.0
type UserPtrOutput struct {
*pulumi.OutputState
}
func (UserPtrOutput) ElementType ¶ added in v3.25.0
func (UserPtrOutput) ElementType() reflect.Type
func (UserPtrOutput) ToUserPtrOutput ¶ added in v3.25.0
func (o UserPtrOutput) ToUserPtrOutput() UserPtrOutput
func (UserPtrOutput) ToUserPtrOutputWithContext ¶ added in v3.25.0
func (o UserPtrOutput) ToUserPtrOutputWithContext(ctx context.Context) UserPtrOutput
type UserState ¶
type UserState struct { // Amazon Resource Name (ARN) of Transfer User Arn pulumi.StringPtrInput // The landing directory (folder) for a user when they log in to the server using their SFTP client. It should begin with a `/`. The first item in the path is the name of the home bucket (accessible as `${Transfer:HomeBucket}` in the policy) and the rest is the home directory (accessible as `${Transfer:HomeDirectory}` in the policy). For example, `/example-bucket-1234/username` would set the home bucket to `example-bucket-1234` and the home directory to `username`. HomeDirectory pulumi.StringPtrInput // Logical directory mappings that specify what S3 paths and keys should be visible to your user and how you want to make them visible. documented below. HomeDirectoryMappings UserHomeDirectoryMappingArrayInput // The type of landing directory (folder) you mapped for your users' home directory. Valid values are `PATH` and `LOGICAL`. HomeDirectoryType pulumi.StringPtrInput // An IAM JSON policy document that scopes down user access to portions of their Amazon S3 bucket. IAM variables you can use inside this policy include `${Transfer:UserName}`, `${Transfer:HomeDirectory}`, and `${Transfer:HomeBucket}`. These are evaluated on-the-fly when navigating the bucket. Policy pulumi.StringPtrInput // Amazon Resource Name (ARN) of an IAM role that allows the service to controls your user’s access to your Amazon S3 bucket. Role pulumi.StringPtrInput // The Server ID of the Transfer Server (e.g. `s-12345678`) ServerId pulumi.StringPtrInput // A map of tags to assign to the resource. Tags pulumi.StringMapInput // The name used for log in to your SFTP server. UserName pulumi.StringPtrInput }