1. Registry
  2. Packages
  3. Google Cloud (GCP)
  4. API Docs
  5. storage
  6. FtpServer
Viewing docs for Google Cloud v10.2.0
published on Tuesday, Oct 20, 2026 by Pulumi
gcp logo
Viewing docs for Google Cloud v10.2.0
published on Tuesday, Oct 20, 2026 by Pulumi

    An SFTP Server resource supporting internal and external connectivity configurations.

    Example Usage

    Storage Ftp Server Internal

    import * as pulumi from "@pulumi/pulumi";
    import * as gcp from "@pulumi/gcp";
    
    const project = gcp.organizations.getProject({});
    const internalServer = new gcp.storage.FtpServer("internal_server", {
        location: "us-west1",
        serverId: "sftp-int",
        displayName: "My SFTP Server",
        accessType: "INTERNAL",
        internalConfig: {
            consumerAcceptLists: [{
                project: project.then(project => `projects/${project.projectId}`),
                connectionLimit: 10,
            }],
            consumerRejectLists: [
                {
                    project: project.then(project => `projects/${project.number}`),
                },
                {
                    project: "projects/920946329098",
                },
            ],
        },
    });
    
    import pulumi
    import pulumi_gcp as gcp
    
    project = gcp.organizations.get_project()
    internal_server = gcp.storage.FtpServer("internal_server",
        location="us-west1",
        server_id="sftp-int",
        display_name="My SFTP Server",
        access_type="INTERNAL",
        internal_config={
            "consumer_accept_lists": [{
                "project": f"projects/{project.project_id}",
                "connection_limit": 10,
            }],
            "consumer_reject_lists": [
                {
                    "project": f"projects/{project.number}",
                },
                {
                    "project": "projects/920946329098",
                },
            ],
        })
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-gcp/sdk/v10/go/gcp/organizations"
    	"github.com/pulumi/pulumi-gcp/sdk/v10/go/gcp/storage"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		project, err := organizations.LookupProject(ctx, &organizations.LookupProjectArgs{}, nil)
    		if err != nil {
    			return err
    		}
    		_, err = storage.NewFtpServer(ctx, "internal_server", &storage.FtpServerArgs{
    			Location:    pulumi.String("us-west1"),
    			ServerId:    pulumi.String("sftp-int"),
    			DisplayName: pulumi.String("My SFTP Server"),
    			AccessType:  pulumi.String("INTERNAL"),
    			InternalConfig: &storage.FtpServerInternalConfigArgs{
    				ConsumerAcceptLists: storage.FtpServerInternalConfigConsumerAcceptListArray{
    					&storage.FtpServerInternalConfigConsumerAcceptListArgs{
    						Project:         pulumi.Sprintf("projects/%v", project.ProjectId),
    						ConnectionLimit: pulumi.Int(10),
    					},
    				},
    				ConsumerRejectLists: storage.FtpServerInternalConfigConsumerRejectListArray{
    					&storage.FtpServerInternalConfigConsumerRejectListArgs{
    						Project: pulumi.Sprintf("projects/%v", project.Number),
    					},
    					&storage.FtpServerInternalConfigConsumerRejectListArgs{
    						Project: pulumi.String("projects/920946329098"),
    					},
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Gcp = Pulumi.Gcp;
    
    return await Deployment.RunAsync(() => 
    {
        var project = Gcp.Organizations.GetProject.Invoke();
    
        var internalServer = new Gcp.Storage.FtpServer("internal_server", new()
        {
            Location = "us-west1",
            ServerId = "sftp-int",
            DisplayName = "My SFTP Server",
            AccessType = "INTERNAL",
            InternalConfig = new Gcp.Storage.Inputs.FtpServerInternalConfigArgs
            {
                ConsumerAcceptLists = new[]
                {
                    new Gcp.Storage.Inputs.FtpServerInternalConfigConsumerAcceptListArgs
                    {
                        Project = $"projects/{project.Apply(getProjectResult => getProjectResult.ProjectId)}",
                        ConnectionLimit = 10,
                    },
                },
                ConsumerRejectLists = new[]
                {
                    new Gcp.Storage.Inputs.FtpServerInternalConfigConsumerRejectListArgs
                    {
                        Project = $"projects/{project.Apply(getProjectResult => getProjectResult.Number)}",
                    },
                    new Gcp.Storage.Inputs.FtpServerInternalConfigConsumerRejectListArgs
                    {
                        Project = "projects/920946329098",
                    },
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gcp.organizations.OrganizationsFunctions;
    import com.pulumi.gcp.organizations.inputs.GetProjectArgs;
    import com.pulumi.gcp.storage.FtpServer;
    import com.pulumi.gcp.storage.FtpServerArgs;
    import com.pulumi.gcp.storage.inputs.FtpServerInternalConfigArgs;
    import com.pulumi.gcp.storage.inputs.FtpServerInternalConfigConsumerAcceptListArgs;
    import com.pulumi.gcp.storage.inputs.FtpServerInternalConfigConsumerRejectListArgs;
    import java.util.ArrayList;
    import java.util.Arrays;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            final var project = OrganizationsFunctions.getProject(GetProjectArgs.builder()
                .build());
    
            var internalServer = new FtpServer("internalServer", FtpServerArgs.builder()
                .location("us-west1")
                .serverId("sftp-int")
                .displayName("My SFTP Server")
                .accessType("INTERNAL")
                .internalConfig(FtpServerInternalConfigArgs.builder()
                    .consumerAcceptLists(FtpServerInternalConfigConsumerAcceptListArgs.builder()
                        .project(String.format("projects/%s", project.projectId()))
                        .connectionLimit(10)
                        .build())
                    .consumerRejectLists(                
                        FtpServerInternalConfigConsumerRejectListArgs.builder()
                            .project(String.format("projects/%s", project.number()))
                            .build(),
                        FtpServerInternalConfigConsumerRejectListArgs.builder()
                            .project("projects/920946329098")
                            .build())
                    .build())
                .build());
    
        }
    }
    
    resources:
      internalServer:
        type: gcp:storage:FtpServer
        name: internal_server
        properties:
          location: us-west1
          serverId: sftp-int
          displayName: My SFTP Server
          accessType: INTERNAL
          internalConfig:
            consumerAcceptLists:
              - project: projects/${project.projectId}
                connectionLimit: 10
            consumerRejectLists:
              - project: projects/${project.number}
              - project: projects/920946329098
    variables:
      project:
        fn::invoke:
          function: gcp:organizations:getProject
          arguments: {}
    
    terraform {
      required_providers {
        gcp = {
          source = "pulumi/gcp"
        }
      }
    }
    
    data "gcp_organizations_project" "project" {
    }
    
    resource "gcp_storage_ftp_server" "internal_server" {
      lifecycle {
        create_before_destroy = true
      }
      location     = "us-west1"
      server_id    = "sftp-int"
      display_name = "My SFTP Server"
      access_type  = "INTERNAL"
      internal_config = {
        consumer_accept_lists = [{
          project          ="projects/${data.gcp_organizations_project.project.project_id}"
          connection_limit = 10
        }]
        consumer_reject_lists = [{
          project ="projects/${data.gcp_organizations_project.project.number}"
          }, {
          project = "projects/920946329098"
        }]
      }
    }
    

    Storage Ftp Server External

    import * as pulumi from "@pulumi/pulumi";
    import * as gcp from "@pulumi/gcp";
    
    const externalServer = new gcp.storage.FtpServer("external_server", {
        location: "us-west1",
        serverId: "sftp-ext",
        displayName: "My SFTP Server",
        accessType: "EXTERNAL",
        externalConfig: {
            allowedCidrBlocks: [
                "192.168.1.0/24",
                "10.0.0.0/8",
            ],
        },
    });
    
    import pulumi
    import pulumi_gcp as gcp
    
    external_server = gcp.storage.FtpServer("external_server",
        location="us-west1",
        server_id="sftp-ext",
        display_name="My SFTP Server",
        access_type="EXTERNAL",
        external_config={
            "allowed_cidr_blocks": [
                "192.168.1.0/24",
                "10.0.0.0/8",
            ],
        })
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-gcp/sdk/v10/go/gcp/storage"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := storage.NewFtpServer(ctx, "external_server", &storage.FtpServerArgs{
    			Location:    pulumi.String("us-west1"),
    			ServerId:    pulumi.String("sftp-ext"),
    			DisplayName: pulumi.String("My SFTP Server"),
    			AccessType:  pulumi.String("EXTERNAL"),
    			ExternalConfig: &storage.FtpServerExternalConfigArgs{
    				AllowedCidrBlocks: pulumi.StringArray{
    					pulumi.String("192.168.1.0/24"),
    					pulumi.String("10.0.0.0/8"),
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Gcp = Pulumi.Gcp;
    
    return await Deployment.RunAsync(() => 
    {
        var externalServer = new Gcp.Storage.FtpServer("external_server", new()
        {
            Location = "us-west1",
            ServerId = "sftp-ext",
            DisplayName = "My SFTP Server",
            AccessType = "EXTERNAL",
            ExternalConfig = new Gcp.Storage.Inputs.FtpServerExternalConfigArgs
            {
                AllowedCidrBlocks = new[]
                {
                    "192.168.1.0/24",
                    "10.0.0.0/8",
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gcp.storage.FtpServer;
    import com.pulumi.gcp.storage.FtpServerArgs;
    import com.pulumi.gcp.storage.inputs.FtpServerExternalConfigArgs;
    import java.util.ArrayList;
    import java.util.Arrays;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var externalServer = new FtpServer("externalServer", FtpServerArgs.builder()
                .location("us-west1")
                .serverId("sftp-ext")
                .displayName("My SFTP Server")
                .accessType("EXTERNAL")
                .externalConfig(FtpServerExternalConfigArgs.builder()
                    .allowedCidrBlocks(                
                        "192.168.1.0/24",
                        "10.0.0.0/8")
                    .build())
                .build());
    
        }
    }
    
    resources:
      externalServer:
        type: gcp:storage:FtpServer
        name: external_server
        properties:
          location: us-west1
          serverId: sftp-ext
          displayName: My SFTP Server
          accessType: EXTERNAL
          externalConfig:
            allowedCidrBlocks:
              - 192.168.1.0/24
              - 10.0.0.0/8
    
    terraform {
      required_providers {
        gcp = {
          source = "pulumi/gcp"
        }
      }
    }
    
    resource "gcp_storage_ftp_server" "external_server" {
      lifecycle {
        create_before_destroy = true
      }
      location     = "us-west1"
      server_id    = "sftp-ext"
      display_name = "My SFTP Server"
      access_type  = "EXTERNAL"
      external_config = {
        allowed_cidr_blocks = ["192.168.1.0/24", "10.0.0.0/8"]
      }
    }
    

    Create FtpServer Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new FtpServer(name: string, args: FtpServerArgs, opts?: CustomResourceOptions);
    @overload
    def FtpServer(resource_name: str,
                  args: FtpServerArgs,
                  opts: Optional[ResourceOptions] = None)
    
    @overload
    def FtpServer(resource_name: str,
                  opts: Optional[ResourceOptions] = None,
                  access_type: Optional[str] = None,
                  location: Optional[str] = None,
                  server_id: Optional[str] = None,
                  deletion_policy: Optional[str] = None,
                  display_name: Optional[str] = None,
                  external_config: Optional[FtpServerExternalConfigArgs] = None,
                  internal_config: Optional[FtpServerInternalConfigArgs] = None,
                  labels: Optional[Mapping[str, str]] = None,
                  project: Optional[str] = None)
    func NewFtpServer(ctx *Context, name string, args FtpServerArgs, opts ...ResourceOption) (*FtpServer, error)
    public FtpServer(string name, FtpServerArgs args, CustomResourceOptions? opts = null)
    public FtpServer(String name, FtpServerArgs args)
    public FtpServer(String name, FtpServerArgs args, CustomResourceOptions options)
    
    type: gcp:storage:FtpServer
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    
    resource "gcp_storage_ftp_server" "name" {
        # resource properties
    }

    Parameters

    name string
    The unique name of the resource.
    args FtpServerArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args FtpServerArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args FtpServerArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args FtpServerArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args FtpServerArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var ftpServerResource = new Gcp.Storage.FtpServer("ftpServerResource", new()
    {
        AccessType = "string",
        Location = "string",
        ServerId = "string",
        DeletionPolicy = "string",
        DisplayName = "string",
        ExternalConfig = new Gcp.Storage.Inputs.FtpServerExternalConfigArgs
        {
            AllowedCidrBlocks = new[]
            {
                "string",
            },
            IpAddress = "string",
        },
        InternalConfig = new Gcp.Storage.Inputs.FtpServerInternalConfigArgs
        {
            ConsumerAcceptLists = new[]
            {
                new Gcp.Storage.Inputs.FtpServerInternalConfigConsumerAcceptListArgs
                {
                    ConnectionLimit = 0,
                    Project = "string",
                },
            },
            ConsumerRejectLists = new[]
            {
                new Gcp.Storage.Inputs.FtpServerInternalConfigConsumerRejectListArgs
                {
                    Project = "string",
                },
            },
            ServiceAttachment = "string",
        },
        Labels = 
        {
            { "string", "string" },
        },
        Project = "string",
    });
    
    example, err := storage.NewFtpServer(ctx, "ftpServerResource", &storage.FtpServerArgs{
    	AccessType:     pulumi.String("string"),
    	Location:       pulumi.String("string"),
    	ServerId:       pulumi.String("string"),
    	DeletionPolicy: pulumi.String("string"),
    	DisplayName:    pulumi.String("string"),
    	ExternalConfig: &storage.FtpServerExternalConfigArgs{
    		AllowedCidrBlocks: pulumi.StringArray{
    			pulumi.String("string"),
    		},
    		IpAddress: pulumi.String("string"),
    	},
    	InternalConfig: &storage.FtpServerInternalConfigArgs{
    		ConsumerAcceptLists: storage.FtpServerInternalConfigConsumerAcceptListArray{
    			&storage.FtpServerInternalConfigConsumerAcceptListArgs{
    				ConnectionLimit: pulumi.Int(0),
    				Project:         pulumi.String("string"),
    			},
    		},
    		ConsumerRejectLists: storage.FtpServerInternalConfigConsumerRejectListArray{
    			&storage.FtpServerInternalConfigConsumerRejectListArgs{
    				Project: pulumi.String("string"),
    			},
    		},
    		ServiceAttachment: pulumi.String("string"),
    	},
    	Labels: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    	Project: pulumi.String("string"),
    })
    
    resource "gcp_storage_ftp_server" "ftpServerResource" {
      lifecycle {
        create_before_destroy = true
      }
      access_type     = "string"
      location        = "string"
      server_id       = "string"
      deletion_policy = "string"
      display_name    = "string"
      external_config = {
        allowed_cidr_blocks = ["string"]
        ip_address          = "string"
      }
      internal_config = {
        consumer_accept_lists = [{
          connection_limit = 0
          project          = "string"
        }]
        consumer_reject_lists = [{
          project = "string"
        }]
        service_attachment = "string"
      }
      labels = {
        "string" = "string"
      }
      project = "string"
    }
    
    var ftpServerResource = new FtpServer("ftpServerResource", FtpServerArgs.builder()
        .accessType("string")
        .location("string")
        .serverId("string")
        .deletionPolicy("string")
        .displayName("string")
        .externalConfig(FtpServerExternalConfigArgs.builder()
            .allowedCidrBlocks("string")
            .ipAddress("string")
            .build())
        .internalConfig(FtpServerInternalConfigArgs.builder()
            .consumerAcceptLists(FtpServerInternalConfigConsumerAcceptListArgs.builder()
                .connectionLimit(0)
                .project("string")
                .build())
            .consumerRejectLists(FtpServerInternalConfigConsumerRejectListArgs.builder()
                .project("string")
                .build())
            .serviceAttachment("string")
            .build())
        .labels(Map.of("string", "string"))
        .project("string")
        .build());
    
    ftp_server_resource = gcp.storage.FtpServer("ftpServerResource",
        access_type="string",
        location="string",
        server_id="string",
        deletion_policy="string",
        display_name="string",
        external_config={
            "allowed_cidr_blocks": ["string"],
            "ip_address": "string",
        },
        internal_config={
            "consumer_accept_lists": [{
                "connection_limit": 0,
                "project": "string",
            }],
            "consumer_reject_lists": [{
                "project": "string",
            }],
            "service_attachment": "string",
        },
        labels={
            "string": "string",
        },
        project="string")
    
    const ftpServerResource = new gcp.storage.FtpServer("ftpServerResource", {
        accessType: "string",
        location: "string",
        serverId: "string",
        deletionPolicy: "string",
        displayName: "string",
        externalConfig: {
            allowedCidrBlocks: ["string"],
            ipAddress: "string",
        },
        internalConfig: {
            consumerAcceptLists: [{
                connectionLimit: 0,
                project: "string",
            }],
            consumerRejectLists: [{
                project: "string",
            }],
            serviceAttachment: "string",
        },
        labels: {
            string: "string",
        },
        project: "string",
    });
    
    type: gcp:storage:FtpServer
    properties:
        accessType: string
        deletionPolicy: string
        displayName: string
        externalConfig:
            allowedCidrBlocks:
                - string
            ipAddress: string
        internalConfig:
            consumerAcceptLists:
                - connectionLimit: 0
                  project: string
            consumerRejectLists:
                - project: string
            serviceAttachment: string
        labels:
            string: string
        location: string
        project: string
        serverId: string
    

    FtpServer Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The FtpServer resource accepts the following input properties:

    AccessType string
    The access type for this SFTP server. Possible values: INTERNAL, EXTERNAL Possible values are: INTERNAL, EXTERNAL.
    Location string
    The location (region) of the Storage FTP Server.
    ServerId string
    A unique ID for the server. Must start with a lowercase letter, and end with a lowercase letter or number. Can contain lowercase letters, numbers, and hyphens. Maximum 30 characters.
    DeletionPolicy string
    Whether Terraform will be prevented from destroying the resource. Defaults to DELETE. When a 'terraform destroy' or 'pulumi up' would delete the resource, the command will fail if this field is set to "PREVENT" in Terraform state. When set to "ABANDON", the command will remove the resource from Terraform management without updating or deleting the resource in the API. When set to "DELETE", deleting the resource is allowed.
    DisplayName string
    A display name for the server.
    ExternalConfig FtpServerExternalConfig
    Configuration for external access type SFTP servers. Structure is documented below.
    InternalConfig FtpServerInternalConfig
    Configuration for internal access type SFTP servers. Structure is documented below.
    Labels Dictionary<string, string>

    A set of key/value label pairs to assign to the Storage FTP Server.

    Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effectiveLabels for all of the labels present on the resource.

    Project string
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    AccessType string
    The access type for this SFTP server. Possible values: INTERNAL, EXTERNAL Possible values are: INTERNAL, EXTERNAL.
    Location string
    The location (region) of the Storage FTP Server.
    ServerId string
    A unique ID for the server. Must start with a lowercase letter, and end with a lowercase letter or number. Can contain lowercase letters, numbers, and hyphens. Maximum 30 characters.
    DeletionPolicy string
    Whether Terraform will be prevented from destroying the resource. Defaults to DELETE. When a 'terraform destroy' or 'pulumi up' would delete the resource, the command will fail if this field is set to "PREVENT" in Terraform state. When set to "ABANDON", the command will remove the resource from Terraform management without updating or deleting the resource in the API. When set to "DELETE", deleting the resource is allowed.
    DisplayName string
    A display name for the server.
    ExternalConfig FtpServerExternalConfigArgs
    Configuration for external access type SFTP servers. Structure is documented below.
    InternalConfig FtpServerInternalConfigArgs
    Configuration for internal access type SFTP servers. Structure is documented below.
    Labels map[string]string

    A set of key/value label pairs to assign to the Storage FTP Server.

    Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effectiveLabels for all of the labels present on the resource.

    Project string
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    access_type string
    The access type for this SFTP server. Possible values: INTERNAL, EXTERNAL Possible values are: INTERNAL, EXTERNAL.
    location string
    The location (region) of the Storage FTP Server.
    server_id string
    A unique ID for the server. Must start with a lowercase letter, and end with a lowercase letter or number. Can contain lowercase letters, numbers, and hyphens. Maximum 30 characters.
    deletion_policy string
    Whether Terraform will be prevented from destroying the resource. Defaults to DELETE. When a 'terraform destroy' or 'pulumi up' would delete the resource, the command will fail if this field is set to "PREVENT" in Terraform state. When set to "ABANDON", the command will remove the resource from Terraform management without updating or deleting the resource in the API. When set to "DELETE", deleting the resource is allowed.
    display_name string
    A display name for the server.
    external_config object
    Configuration for external access type SFTP servers. Structure is documented below.
    internal_config object
    Configuration for internal access type SFTP servers. Structure is documented below.
    labels map(string)

    A set of key/value label pairs to assign to the Storage FTP Server.

    Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effectiveLabels for all of the labels present on the resource.

    project string
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    accessType String
    The access type for this SFTP server. Possible values: INTERNAL, EXTERNAL Possible values are: INTERNAL, EXTERNAL.
    location String
    The location (region) of the Storage FTP Server.
    serverId String
    A unique ID for the server. Must start with a lowercase letter, and end with a lowercase letter or number. Can contain lowercase letters, numbers, and hyphens. Maximum 30 characters.
    deletionPolicy String
    Whether Terraform will be prevented from destroying the resource. Defaults to DELETE. When a 'terraform destroy' or 'pulumi up' would delete the resource, the command will fail if this field is set to "PREVENT" in Terraform state. When set to "ABANDON", the command will remove the resource from Terraform management without updating or deleting the resource in the API. When set to "DELETE", deleting the resource is allowed.
    displayName String
    A display name for the server.
    externalConfig FtpServerExternalConfig
    Configuration for external access type SFTP servers. Structure is documented below.
    internalConfig FtpServerInternalConfig
    Configuration for internal access type SFTP servers. Structure is documented below.
    labels Map<String,String>

    A set of key/value label pairs to assign to the Storage FTP Server.

    Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effectiveLabels for all of the labels present on the resource.

    project String
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    accessType string
    The access type for this SFTP server. Possible values: INTERNAL, EXTERNAL Possible values are: INTERNAL, EXTERNAL.
    location string
    The location (region) of the Storage FTP Server.
    serverId string
    A unique ID for the server. Must start with a lowercase letter, and end with a lowercase letter or number. Can contain lowercase letters, numbers, and hyphens. Maximum 30 characters.
    deletionPolicy string
    Whether Terraform will be prevented from destroying the resource. Defaults to DELETE. When a 'terraform destroy' or 'pulumi up' would delete the resource, the command will fail if this field is set to "PREVENT" in Terraform state. When set to "ABANDON", the command will remove the resource from Terraform management without updating or deleting the resource in the API. When set to "DELETE", deleting the resource is allowed.
    displayName string
    A display name for the server.
    externalConfig FtpServerExternalConfig
    Configuration for external access type SFTP servers. Structure is documented below.
    internalConfig FtpServerInternalConfig
    Configuration for internal access type SFTP servers. Structure is documented below.
    labels {[key: string]: string}

    A set of key/value label pairs to assign to the Storage FTP Server.

    Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effectiveLabels for all of the labels present on the resource.

    project string
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    access_type str
    The access type for this SFTP server. Possible values: INTERNAL, EXTERNAL Possible values are: INTERNAL, EXTERNAL.
    location str
    The location (region) of the Storage FTP Server.
    server_id str
    A unique ID for the server. Must start with a lowercase letter, and end with a lowercase letter or number. Can contain lowercase letters, numbers, and hyphens. Maximum 30 characters.
    deletion_policy str
    Whether Terraform will be prevented from destroying the resource. Defaults to DELETE. When a 'terraform destroy' or 'pulumi up' would delete the resource, the command will fail if this field is set to "PREVENT" in Terraform state. When set to "ABANDON", the command will remove the resource from Terraform management without updating or deleting the resource in the API. When set to "DELETE", deleting the resource is allowed.
    display_name str
    A display name for the server.
    external_config FtpServerExternalConfigArgs
    Configuration for external access type SFTP servers. Structure is documented below.
    internal_config FtpServerInternalConfigArgs
    Configuration for internal access type SFTP servers. Structure is documented below.
    labels Mapping[str, str]

    A set of key/value label pairs to assign to the Storage FTP Server.

    Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effectiveLabels for all of the labels present on the resource.

    project str
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    accessType String
    The access type for this SFTP server. Possible values: INTERNAL, EXTERNAL Possible values are: INTERNAL, EXTERNAL.
    location String
    The location (region) of the Storage FTP Server.
    serverId String
    A unique ID for the server. Must start with a lowercase letter, and end with a lowercase letter or number. Can contain lowercase letters, numbers, and hyphens. Maximum 30 characters.
    deletionPolicy String
    Whether Terraform will be prevented from destroying the resource. Defaults to DELETE. When a 'terraform destroy' or 'pulumi up' would delete the resource, the command will fail if this field is set to "PREVENT" in Terraform state. When set to "ABANDON", the command will remove the resource from Terraform management without updating or deleting the resource in the API. When set to "DELETE", deleting the resource is allowed.
    displayName String
    A display name for the server.
    externalConfig Property Map
    Configuration for external access type SFTP servers. Structure is documented below.
    internalConfig Property Map
    Configuration for internal access type SFTP servers. Structure is documented below.
    labels Map<String>

    A set of key/value label pairs to assign to the Storage FTP Server.

    Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effectiveLabels for all of the labels present on the resource.

    project String
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the FtpServer resource produces the following output properties:

    EffectiveLabels Dictionary<string, string>
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    Id string
    The provider-assigned unique ID for this managed resource.
    PulumiLabels Dictionary<string, string>
    The combination of labels configured directly on the resource and default labels configured on the provider.
    ServiceAgent string
    The email address of the service agent associated with the SFTP server.
    State string
    The operational lifecycle state of the SFTP server.
    EffectiveLabels map[string]string
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    Id string
    The provider-assigned unique ID for this managed resource.
    PulumiLabels map[string]string
    The combination of labels configured directly on the resource and default labels configured on the provider.
    ServiceAgent string
    The email address of the service agent associated with the SFTP server.
    State string
    The operational lifecycle state of the SFTP server.
    effective_labels map(string)
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    id string
    The provider-assigned unique ID for this managed resource.
    pulumi_labels map(string)
    The combination of labels configured directly on the resource and default labels configured on the provider.
    service_agent string
    The email address of the service agent associated with the SFTP server.
    state string
    The operational lifecycle state of the SFTP server.
    effectiveLabels Map<String,String>
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    id String
    The provider-assigned unique ID for this managed resource.
    pulumiLabels Map<String,String>
    The combination of labels configured directly on the resource and default labels configured on the provider.
    serviceAgent String
    The email address of the service agent associated with the SFTP server.
    state String
    The operational lifecycle state of the SFTP server.
    effectiveLabels {[key: string]: string}
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    id string
    The provider-assigned unique ID for this managed resource.
    pulumiLabels {[key: string]: string}
    The combination of labels configured directly on the resource and default labels configured on the provider.
    serviceAgent string
    The email address of the service agent associated with the SFTP server.
    state string
    The operational lifecycle state of the SFTP server.
    effective_labels Mapping[str, str]
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    id str
    The provider-assigned unique ID for this managed resource.
    pulumi_labels Mapping[str, str]
    The combination of labels configured directly on the resource and default labels configured on the provider.
    service_agent str
    The email address of the service agent associated with the SFTP server.
    state str
    The operational lifecycle state of the SFTP server.
    effectiveLabels Map<String>
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    id String
    The provider-assigned unique ID for this managed resource.
    pulumiLabels Map<String>
    The combination of labels configured directly on the resource and default labels configured on the provider.
    serviceAgent String
    The email address of the service agent associated with the SFTP server.
    state String
    The operational lifecycle state of the SFTP server.

    Look up Existing FtpServer Resource

    Get an existing FtpServer resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: FtpServerState, opts?: CustomResourceOptions): FtpServer
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            access_type: Optional[str] = None,
            deletion_policy: Optional[str] = None,
            display_name: Optional[str] = None,
            effective_labels: Optional[Mapping[str, str]] = None,
            external_config: Optional[FtpServerExternalConfigArgs] = None,
            internal_config: Optional[FtpServerInternalConfigArgs] = None,
            labels: Optional[Mapping[str, str]] = None,
            location: Optional[str] = None,
            project: Optional[str] = None,
            pulumi_labels: Optional[Mapping[str, str]] = None,
            server_id: Optional[str] = None,
            service_agent: Optional[str] = None,
            state: Optional[str] = None) -> FtpServer
    func GetFtpServer(ctx *Context, name string, id IDInput, state *FtpServerState, opts ...ResourceOption) (*FtpServer, error)
    public static FtpServer Get(string name, Input<string> id, FtpServerState? state, CustomResourceOptions? opts = null)
    public static FtpServer get(String name, Output<String> id, FtpServerState state, CustomResourceOptions options)
    resources:  _:    type: gcp:storage:FtpServer    get:      id: ${id}
    import {
      to = gcp_storage_ftp_server.example
      id = "${id}"
    }
    
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    AccessType string
    The access type for this SFTP server. Possible values: INTERNAL, EXTERNAL Possible values are: INTERNAL, EXTERNAL.
    DeletionPolicy string
    Whether Terraform will be prevented from destroying the resource. Defaults to DELETE. When a 'terraform destroy' or 'pulumi up' would delete the resource, the command will fail if this field is set to "PREVENT" in Terraform state. When set to "ABANDON", the command will remove the resource from Terraform management without updating or deleting the resource in the API. When set to "DELETE", deleting the resource is allowed.
    DisplayName string
    A display name for the server.
    EffectiveLabels Dictionary<string, string>
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    ExternalConfig FtpServerExternalConfig
    Configuration for external access type SFTP servers. Structure is documented below.
    InternalConfig FtpServerInternalConfig
    Configuration for internal access type SFTP servers. Structure is documented below.
    Labels Dictionary<string, string>

    A set of key/value label pairs to assign to the Storage FTP Server.

    Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effectiveLabels for all of the labels present on the resource.

    Location string
    The location (region) of the Storage FTP Server.
    Project string
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    PulumiLabels Dictionary<string, string>
    The combination of labels configured directly on the resource and default labels configured on the provider.
    ServerId string
    A unique ID for the server. Must start with a lowercase letter, and end with a lowercase letter or number. Can contain lowercase letters, numbers, and hyphens. Maximum 30 characters.
    ServiceAgent string
    The email address of the service agent associated with the SFTP server.
    State string
    The operational lifecycle state of the SFTP server.
    AccessType string
    The access type for this SFTP server. Possible values: INTERNAL, EXTERNAL Possible values are: INTERNAL, EXTERNAL.
    DeletionPolicy string
    Whether Terraform will be prevented from destroying the resource. Defaults to DELETE. When a 'terraform destroy' or 'pulumi up' would delete the resource, the command will fail if this field is set to "PREVENT" in Terraform state. When set to "ABANDON", the command will remove the resource from Terraform management without updating or deleting the resource in the API. When set to "DELETE", deleting the resource is allowed.
    DisplayName string
    A display name for the server.
    EffectiveLabels map[string]string
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    ExternalConfig FtpServerExternalConfigArgs
    Configuration for external access type SFTP servers. Structure is documented below.
    InternalConfig FtpServerInternalConfigArgs
    Configuration for internal access type SFTP servers. Structure is documented below.
    Labels map[string]string

    A set of key/value label pairs to assign to the Storage FTP Server.

    Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effectiveLabels for all of the labels present on the resource.

    Location string
    The location (region) of the Storage FTP Server.
    Project string
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    PulumiLabels map[string]string
    The combination of labels configured directly on the resource and default labels configured on the provider.
    ServerId string
    A unique ID for the server. Must start with a lowercase letter, and end with a lowercase letter or number. Can contain lowercase letters, numbers, and hyphens. Maximum 30 characters.
    ServiceAgent string
    The email address of the service agent associated with the SFTP server.
    State string
    The operational lifecycle state of the SFTP server.
    access_type string
    The access type for this SFTP server. Possible values: INTERNAL, EXTERNAL Possible values are: INTERNAL, EXTERNAL.
    deletion_policy string
    Whether Terraform will be prevented from destroying the resource. Defaults to DELETE. When a 'terraform destroy' or 'pulumi up' would delete the resource, the command will fail if this field is set to "PREVENT" in Terraform state. When set to "ABANDON", the command will remove the resource from Terraform management without updating or deleting the resource in the API. When set to "DELETE", deleting the resource is allowed.
    display_name string
    A display name for the server.
    effective_labels map(string)
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    external_config object
    Configuration for external access type SFTP servers. Structure is documented below.
    internal_config object
    Configuration for internal access type SFTP servers. Structure is documented below.
    labels map(string)

    A set of key/value label pairs to assign to the Storage FTP Server.

    Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effectiveLabels for all of the labels present on the resource.

    location string
    The location (region) of the Storage FTP Server.
    project string
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    pulumi_labels map(string)
    The combination of labels configured directly on the resource and default labels configured on the provider.
    server_id string
    A unique ID for the server. Must start with a lowercase letter, and end with a lowercase letter or number. Can contain lowercase letters, numbers, and hyphens. Maximum 30 characters.
    service_agent string
    The email address of the service agent associated with the SFTP server.
    state string
    The operational lifecycle state of the SFTP server.
    accessType String
    The access type for this SFTP server. Possible values: INTERNAL, EXTERNAL Possible values are: INTERNAL, EXTERNAL.
    deletionPolicy String
    Whether Terraform will be prevented from destroying the resource. Defaults to DELETE. When a 'terraform destroy' or 'pulumi up' would delete the resource, the command will fail if this field is set to "PREVENT" in Terraform state. When set to "ABANDON", the command will remove the resource from Terraform management without updating or deleting the resource in the API. When set to "DELETE", deleting the resource is allowed.
    displayName String
    A display name for the server.
    effectiveLabels Map<String,String>
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    externalConfig FtpServerExternalConfig
    Configuration for external access type SFTP servers. Structure is documented below.
    internalConfig FtpServerInternalConfig
    Configuration for internal access type SFTP servers. Structure is documented below.
    labels Map<String,String>

    A set of key/value label pairs to assign to the Storage FTP Server.

    Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effectiveLabels for all of the labels present on the resource.

    location String
    The location (region) of the Storage FTP Server.
    project String
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    pulumiLabels Map<String,String>
    The combination of labels configured directly on the resource and default labels configured on the provider.
    serverId String
    A unique ID for the server. Must start with a lowercase letter, and end with a lowercase letter or number. Can contain lowercase letters, numbers, and hyphens. Maximum 30 characters.
    serviceAgent String
    The email address of the service agent associated with the SFTP server.
    state String
    The operational lifecycle state of the SFTP server.
    accessType string
    The access type for this SFTP server. Possible values: INTERNAL, EXTERNAL Possible values are: INTERNAL, EXTERNAL.
    deletionPolicy string
    Whether Terraform will be prevented from destroying the resource. Defaults to DELETE. When a 'terraform destroy' or 'pulumi up' would delete the resource, the command will fail if this field is set to "PREVENT" in Terraform state. When set to "ABANDON", the command will remove the resource from Terraform management without updating or deleting the resource in the API. When set to "DELETE", deleting the resource is allowed.
    displayName string
    A display name for the server.
    effectiveLabels {[key: string]: string}
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    externalConfig FtpServerExternalConfig
    Configuration for external access type SFTP servers. Structure is documented below.
    internalConfig FtpServerInternalConfig
    Configuration for internal access type SFTP servers. Structure is documented below.
    labels {[key: string]: string}

    A set of key/value label pairs to assign to the Storage FTP Server.

    Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effectiveLabels for all of the labels present on the resource.

    location string
    The location (region) of the Storage FTP Server.
    project string
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    pulumiLabels {[key: string]: string}
    The combination of labels configured directly on the resource and default labels configured on the provider.
    serverId string
    A unique ID for the server. Must start with a lowercase letter, and end with a lowercase letter or number. Can contain lowercase letters, numbers, and hyphens. Maximum 30 characters.
    serviceAgent string
    The email address of the service agent associated with the SFTP server.
    state string
    The operational lifecycle state of the SFTP server.
    access_type str
    The access type for this SFTP server. Possible values: INTERNAL, EXTERNAL Possible values are: INTERNAL, EXTERNAL.
    deletion_policy str
    Whether Terraform will be prevented from destroying the resource. Defaults to DELETE. When a 'terraform destroy' or 'pulumi up' would delete the resource, the command will fail if this field is set to "PREVENT" in Terraform state. When set to "ABANDON", the command will remove the resource from Terraform management without updating or deleting the resource in the API. When set to "DELETE", deleting the resource is allowed.
    display_name str
    A display name for the server.
    effective_labels Mapping[str, str]
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    external_config FtpServerExternalConfigArgs
    Configuration for external access type SFTP servers. Structure is documented below.
    internal_config FtpServerInternalConfigArgs
    Configuration for internal access type SFTP servers. Structure is documented below.
    labels Mapping[str, str]

    A set of key/value label pairs to assign to the Storage FTP Server.

    Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effectiveLabels for all of the labels present on the resource.

    location str
    The location (region) of the Storage FTP Server.
    project str
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    pulumi_labels Mapping[str, str]
    The combination of labels configured directly on the resource and default labels configured on the provider.
    server_id str
    A unique ID for the server. Must start with a lowercase letter, and end with a lowercase letter or number. Can contain lowercase letters, numbers, and hyphens. Maximum 30 characters.
    service_agent str
    The email address of the service agent associated with the SFTP server.
    state str
    The operational lifecycle state of the SFTP server.
    accessType String
    The access type for this SFTP server. Possible values: INTERNAL, EXTERNAL Possible values are: INTERNAL, EXTERNAL.
    deletionPolicy String
    Whether Terraform will be prevented from destroying the resource. Defaults to DELETE. When a 'terraform destroy' or 'pulumi up' would delete the resource, the command will fail if this field is set to "PREVENT" in Terraform state. When set to "ABANDON", the command will remove the resource from Terraform management without updating or deleting the resource in the API. When set to "DELETE", deleting the resource is allowed.
    displayName String
    A display name for the server.
    effectiveLabels Map<String>
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    externalConfig Property Map
    Configuration for external access type SFTP servers. Structure is documented below.
    internalConfig Property Map
    Configuration for internal access type SFTP servers. Structure is documented below.
    labels Map<String>

    A set of key/value label pairs to assign to the Storage FTP Server.

    Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effectiveLabels for all of the labels present on the resource.

    location String
    The location (region) of the Storage FTP Server.
    project String
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    pulumiLabels Map<String>
    The combination of labels configured directly on the resource and default labels configured on the provider.
    serverId String
    A unique ID for the server. Must start with a lowercase letter, and end with a lowercase letter or number. Can contain lowercase letters, numbers, and hyphens. Maximum 30 characters.
    serviceAgent String
    The email address of the service agent associated with the SFTP server.
    state String
    The operational lifecycle state of the SFTP server.

    Supporting Types

    FtpServerExternalConfig, FtpServerExternalConfigArgs

    AllowedCidrBlocks List<string>
    A list of allowed IPv4 or IPv6 CIDR block ranges that can connect to this server.
    IpAddress string
    (Output) The public IP address of the external load balancer for the SFTP server.
    AllowedCidrBlocks []string
    A list of allowed IPv4 or IPv6 CIDR block ranges that can connect to this server.
    IpAddress string
    (Output) The public IP address of the external load balancer for the SFTP server.
    allowed_cidr_blocks list(string)
    A list of allowed IPv4 or IPv6 CIDR block ranges that can connect to this server.
    ip_address string
    (Output) The public IP address of the external load balancer for the SFTP server.
    allowedCidrBlocks List<String>
    A list of allowed IPv4 or IPv6 CIDR block ranges that can connect to this server.
    ipAddress String
    (Output) The public IP address of the external load balancer for the SFTP server.
    allowedCidrBlocks string[]
    A list of allowed IPv4 or IPv6 CIDR block ranges that can connect to this server.
    ipAddress string
    (Output) The public IP address of the external load balancer for the SFTP server.
    allowed_cidr_blocks Sequence[str]
    A list of allowed IPv4 or IPv6 CIDR block ranges that can connect to this server.
    ip_address str
    (Output) The public IP address of the external load balancer for the SFTP server.
    allowedCidrBlocks List<String>
    A list of allowed IPv4 or IPv6 CIDR block ranges that can connect to this server.
    ipAddress String
    (Output) The public IP address of the external load balancer for the SFTP server.

    FtpServerInternalConfig, FtpServerInternalConfigArgs

    ConsumerAcceptLists List<FtpServerInternalConfigConsumerAcceptList>
    A list of consumer projects that are allowed to connect to this server. Structure is documented below.
    ConsumerRejectLists List<FtpServerInternalConfigConsumerRejectList>
    A list of consumer projects that are rejected from connecting to this server. Structure is documented below.
    ServiceAttachment string
    (Output) The Private Service Connect service attachment URI for the SFTP server.
    ConsumerAcceptLists []FtpServerInternalConfigConsumerAcceptList
    A list of consumer projects that are allowed to connect to this server. Structure is documented below.
    ConsumerRejectLists []FtpServerInternalConfigConsumerRejectList
    A list of consumer projects that are rejected from connecting to this server. Structure is documented below.
    ServiceAttachment string
    (Output) The Private Service Connect service attachment URI for the SFTP server.
    consumer_accept_lists list(object)
    A list of consumer projects that are allowed to connect to this server. Structure is documented below.
    consumer_reject_lists list(object)
    A list of consumer projects that are rejected from connecting to this server. Structure is documented below.
    service_attachment string
    (Output) The Private Service Connect service attachment URI for the SFTP server.
    consumerAcceptLists List<FtpServerInternalConfigConsumerAcceptList>
    A list of consumer projects that are allowed to connect to this server. Structure is documented below.
    consumerRejectLists List<FtpServerInternalConfigConsumerRejectList>
    A list of consumer projects that are rejected from connecting to this server. Structure is documented below.
    serviceAttachment String
    (Output) The Private Service Connect service attachment URI for the SFTP server.
    consumerAcceptLists FtpServerInternalConfigConsumerAcceptList[]
    A list of consumer projects that are allowed to connect to this server. Structure is documented below.
    consumerRejectLists FtpServerInternalConfigConsumerRejectList[]
    A list of consumer projects that are rejected from connecting to this server. Structure is documented below.
    serviceAttachment string
    (Output) The Private Service Connect service attachment URI for the SFTP server.
    consumer_accept_lists Sequence[FtpServerInternalConfigConsumerAcceptList]
    A list of consumer projects that are allowed to connect to this server. Structure is documented below.
    consumer_reject_lists Sequence[FtpServerInternalConfigConsumerRejectList]
    A list of consumer projects that are rejected from connecting to this server. Structure is documented below.
    service_attachment str
    (Output) The Private Service Connect service attachment URI for the SFTP server.
    consumerAcceptLists List<Property Map>
    A list of consumer projects that are allowed to connect to this server. Structure is documented below.
    consumerRejectLists List<Property Map>
    A list of consumer projects that are rejected from connecting to this server. Structure is documented below.
    serviceAttachment String
    (Output) The Private Service Connect service attachment URI for the SFTP server.

    FtpServerInternalConfigConsumerAcceptList, FtpServerInternalConfigConsumerAcceptListArgs

    ConnectionLimit int
    The maximum number of Private Service Connect endpoints that can be created in the consumer project.
    Project string
    The project that is allowed to connect, in the format projects/{project}.
    ConnectionLimit int
    The maximum number of Private Service Connect endpoints that can be created in the consumer project.
    Project string
    The project that is allowed to connect, in the format projects/{project}.
    connection_limit number
    The maximum number of Private Service Connect endpoints that can be created in the consumer project.
    project string
    The project that is allowed to connect, in the format projects/{project}.
    connectionLimit Integer
    The maximum number of Private Service Connect endpoints that can be created in the consumer project.
    project String
    The project that is allowed to connect, in the format projects/{project}.
    connectionLimit number
    The maximum number of Private Service Connect endpoints that can be created in the consumer project.
    project string
    The project that is allowed to connect, in the format projects/{project}.
    connection_limit int
    The maximum number of Private Service Connect endpoints that can be created in the consumer project.
    project str
    The project that is allowed to connect, in the format projects/{project}.
    connectionLimit Number
    The maximum number of Private Service Connect endpoints that can be created in the consumer project.
    project String
    The project that is allowed to connect, in the format projects/{project}.

    FtpServerInternalConfigConsumerRejectList, FtpServerInternalConfigConsumerRejectListArgs

    Project string
    The project that is rejected from connecting, in the format projects/{project}.
    Project string
    The project that is rejected from connecting, in the format projects/{project}.
    project string
    The project that is rejected from connecting, in the format projects/{project}.
    project String
    The project that is rejected from connecting, in the format projects/{project}.
    project string
    The project that is rejected from connecting, in the format projects/{project}.
    project str
    The project that is rejected from connecting, in the format projects/{project}.
    project String
    The project that is rejected from connecting, in the format projects/{project}.

    Import

    Server can be imported using any of these accepted formats:

    • projects/{{project}}/locations/{{location}}/servers/{{server_id}}
    • {{project}}/{{location}}/{{server_id}}
    • {{location}}/{{server_id}}

    When using the pulumi import command, Server can be imported using one of the formats above. For example:

    $ pulumi import gcp:storage/ftpServer:FtpServer default projects/{{project}}/locations/{{location}}/servers/{{server_id}}
    $ pulumi import gcp:storage/ftpServer:FtpServer default {{project}}/{{location}}/{{server_id}}
    $ pulumi import gcp:storage/ftpServer:FtpServer default {{location}}/{{server_id}}
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    Google Cloud (GCP) Classic pulumi/pulumi-gcp
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the google-beta Terraform Provider.
    gcp logo
    Viewing docs for Google Cloud v10.2.0
    published on Tuesday, Oct 20, 2026 by Pulumi

      Try Pulumi Cloud free.
      Your team will thank you.

      Start free trial