1. Packages
  2. Snowflake
  3. API Docs
  4. StorageIntegration
Snowflake v0.52.0 published on Thursday, Apr 18, 2024 by Pulumi

snowflake.StorageIntegration

Explore with Pulumi AI

snowflake logo
Snowflake v0.52.0 published on Thursday, Apr 18, 2024 by Pulumi

    Example Usage

    Coming soon!
    
    Coming soon!
    
    Coming soon!
    
    Coming soon!
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.snowflake.StorageIntegration;
    import com.pulumi.snowflake.StorageIntegrationArgs;
    import java.util.List;
    import java.util.ArrayList;
    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 integration = new StorageIntegration("integration", StorageIntegrationArgs.builder()        
                .comment("A storage integration.")
                .enabled(true)
                .storageAwsExternalId("...")
                .storageAwsIamUserArn("...")
                .storageAwsRoleArn("...")
                .storageProvider("S3")
                .type("EXTERNAL_STAGE")
                .build());
    
        }
    }
    
    resources:
      integration:
        type: snowflake:StorageIntegration
        properties:
          comment: A storage integration.
          enabled: true
          storageAwsExternalId: '...'
          storageAwsIamUserArn: '...'
          storageAwsRoleArn: '...'
          storageProvider: S3
          type: EXTERNAL_STAGE
    

    Create StorageIntegration Resource

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

    Constructor syntax

    new StorageIntegration(name: string, args: StorageIntegrationArgs, opts?: CustomResourceOptions);
    @overload
    def StorageIntegration(resource_name: str,
                           args: StorageIntegrationArgs,
                           opts: Optional[ResourceOptions] = None)
    
    @overload
    def StorageIntegration(resource_name: str,
                           opts: Optional[ResourceOptions] = None,
                           storage_allowed_locations: Optional[Sequence[str]] = None,
                           storage_provider: Optional[str] = None,
                           azure_tenant_id: Optional[str] = None,
                           comment: Optional[str] = None,
                           enabled: Optional[bool] = None,
                           name: Optional[str] = None,
                           storage_aws_object_acl: Optional[str] = None,
                           storage_aws_role_arn: Optional[str] = None,
                           storage_blocked_locations: Optional[Sequence[str]] = None,
                           type: Optional[str] = None)
    func NewStorageIntegration(ctx *Context, name string, args StorageIntegrationArgs, opts ...ResourceOption) (*StorageIntegration, error)
    public StorageIntegration(string name, StorageIntegrationArgs args, CustomResourceOptions? opts = null)
    public StorageIntegration(String name, StorageIntegrationArgs args)
    public StorageIntegration(String name, StorageIntegrationArgs args, CustomResourceOptions options)
    
    type: snowflake:StorageIntegration
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args StorageIntegrationArgs
    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 StorageIntegrationArgs
    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 StorageIntegrationArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args StorageIntegrationArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args StorageIntegrationArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Example

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

    var storageIntegrationResource = new Snowflake.StorageIntegration("storageIntegrationResource", new()
    {
        StorageAllowedLocations = new[]
        {
            "string",
        },
        StorageProvider = "string",
        AzureTenantId = "string",
        Comment = "string",
        Enabled = false,
        Name = "string",
        StorageAwsObjectAcl = "string",
        StorageAwsRoleArn = "string",
        StorageBlockedLocations = new[]
        {
            "string",
        },
        Type = "string",
    });
    
    example, err := snowflake.NewStorageIntegration(ctx, "storageIntegrationResource", &snowflake.StorageIntegrationArgs{
    	StorageAllowedLocations: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	StorageProvider:     pulumi.String("string"),
    	AzureTenantId:       pulumi.String("string"),
    	Comment:             pulumi.String("string"),
    	Enabled:             pulumi.Bool(false),
    	Name:                pulumi.String("string"),
    	StorageAwsObjectAcl: pulumi.String("string"),
    	StorageAwsRoleArn:   pulumi.String("string"),
    	StorageBlockedLocations: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	Type: pulumi.String("string"),
    })
    
    var storageIntegrationResource = new StorageIntegration("storageIntegrationResource", StorageIntegrationArgs.builder()        
        .storageAllowedLocations("string")
        .storageProvider("string")
        .azureTenantId("string")
        .comment("string")
        .enabled(false)
        .name("string")
        .storageAwsObjectAcl("string")
        .storageAwsRoleArn("string")
        .storageBlockedLocations("string")
        .type("string")
        .build());
    
    storage_integration_resource = snowflake.StorageIntegration("storageIntegrationResource",
        storage_allowed_locations=["string"],
        storage_provider="string",
        azure_tenant_id="string",
        comment="string",
        enabled=False,
        name="string",
        storage_aws_object_acl="string",
        storage_aws_role_arn="string",
        storage_blocked_locations=["string"],
        type="string")
    
    const storageIntegrationResource = new snowflake.StorageIntegration("storageIntegrationResource", {
        storageAllowedLocations: ["string"],
        storageProvider: "string",
        azureTenantId: "string",
        comment: "string",
        enabled: false,
        name: "string",
        storageAwsObjectAcl: "string",
        storageAwsRoleArn: "string",
        storageBlockedLocations: ["string"],
        type: "string",
    });
    
    type: snowflake:StorageIntegration
    properties:
        azureTenantId: string
        comment: string
        enabled: false
        name: string
        storageAllowedLocations:
            - string
        storageAwsObjectAcl: string
        storageAwsRoleArn: string
        storageBlockedLocations:
            - string
        storageProvider: string
        type: string
    

    StorageIntegration Resource Properties

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

    Inputs

    The StorageIntegration resource accepts the following input properties:

    StorageAllowedLocations List<string>
    Explicitly limits external stages that use the integration to reference one or more storage locations.
    StorageProvider string
    AzureTenantId string
    Comment string
    Enabled bool
    Name string
    StorageAwsObjectAcl string
    "bucket-owner-full-control" Enables support for AWS access control lists (ACLs) to grant the bucket owner full control.
    StorageAwsRoleArn string
    StorageBlockedLocations List<string>
    Explicitly prohibits external stages that use the integration from referencing one or more storage locations.
    Type string
    StorageAllowedLocations []string
    Explicitly limits external stages that use the integration to reference one or more storage locations.
    StorageProvider string
    AzureTenantId string
    Comment string
    Enabled bool
    Name string
    StorageAwsObjectAcl string
    "bucket-owner-full-control" Enables support for AWS access control lists (ACLs) to grant the bucket owner full control.
    StorageAwsRoleArn string
    StorageBlockedLocations []string
    Explicitly prohibits external stages that use the integration from referencing one or more storage locations.
    Type string
    storageAllowedLocations List<String>
    Explicitly limits external stages that use the integration to reference one or more storage locations.
    storageProvider String
    azureTenantId String
    comment String
    enabled Boolean
    name String
    storageAwsObjectAcl String
    "bucket-owner-full-control" Enables support for AWS access control lists (ACLs) to grant the bucket owner full control.
    storageAwsRoleArn String
    storageBlockedLocations List<String>
    Explicitly prohibits external stages that use the integration from referencing one or more storage locations.
    type String
    storageAllowedLocations string[]
    Explicitly limits external stages that use the integration to reference one or more storage locations.
    storageProvider string
    azureTenantId string
    comment string
    enabled boolean
    name string
    storageAwsObjectAcl string
    "bucket-owner-full-control" Enables support for AWS access control lists (ACLs) to grant the bucket owner full control.
    storageAwsRoleArn string
    storageBlockedLocations string[]
    Explicitly prohibits external stages that use the integration from referencing one or more storage locations.
    type string
    storage_allowed_locations Sequence[str]
    Explicitly limits external stages that use the integration to reference one or more storage locations.
    storage_provider str
    azure_tenant_id str
    comment str
    enabled bool
    name str
    storage_aws_object_acl str
    "bucket-owner-full-control" Enables support for AWS access control lists (ACLs) to grant the bucket owner full control.
    storage_aws_role_arn str
    storage_blocked_locations Sequence[str]
    Explicitly prohibits external stages that use the integration from referencing one or more storage locations.
    type str
    storageAllowedLocations List<String>
    Explicitly limits external stages that use the integration to reference one or more storage locations.
    storageProvider String
    azureTenantId String
    comment String
    enabled Boolean
    name String
    storageAwsObjectAcl String
    "bucket-owner-full-control" Enables support for AWS access control lists (ACLs) to grant the bucket owner full control.
    storageAwsRoleArn String
    storageBlockedLocations List<String>
    Explicitly prohibits external stages that use the integration from referencing one or more storage locations.
    type String

    Outputs

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

    AzureConsentUrl string
    The consent URL that is used to create an Azure Snowflake service principle inside your tenant.
    AzureMultiTenantAppName string
    This is the name of the Snowflake client application created for your account.
    CreatedOn string
    Date and time when the storage integration was created.
    Id string
    The provider-assigned unique ID for this managed resource.
    StorageAwsExternalId string
    The external ID that Snowflake will use when assuming the AWS role.
    StorageAwsIamUserArn string
    The Snowflake user that will attempt to assume the AWS role.
    StorageGcpServiceAccount string
    This is the name of the Snowflake Google Service Account created for your account.
    AzureConsentUrl string
    The consent URL that is used to create an Azure Snowflake service principle inside your tenant.
    AzureMultiTenantAppName string
    This is the name of the Snowflake client application created for your account.
    CreatedOn string
    Date and time when the storage integration was created.
    Id string
    The provider-assigned unique ID for this managed resource.
    StorageAwsExternalId string
    The external ID that Snowflake will use when assuming the AWS role.
    StorageAwsIamUserArn string
    The Snowflake user that will attempt to assume the AWS role.
    StorageGcpServiceAccount string
    This is the name of the Snowflake Google Service Account created for your account.
    azureConsentUrl String
    The consent URL that is used to create an Azure Snowflake service principle inside your tenant.
    azureMultiTenantAppName String
    This is the name of the Snowflake client application created for your account.
    createdOn String
    Date and time when the storage integration was created.
    id String
    The provider-assigned unique ID for this managed resource.
    storageAwsExternalId String
    The external ID that Snowflake will use when assuming the AWS role.
    storageAwsIamUserArn String
    The Snowflake user that will attempt to assume the AWS role.
    storageGcpServiceAccount String
    This is the name of the Snowflake Google Service Account created for your account.
    azureConsentUrl string
    The consent URL that is used to create an Azure Snowflake service principle inside your tenant.
    azureMultiTenantAppName string
    This is the name of the Snowflake client application created for your account.
    createdOn string
    Date and time when the storage integration was created.
    id string
    The provider-assigned unique ID for this managed resource.
    storageAwsExternalId string
    The external ID that Snowflake will use when assuming the AWS role.
    storageAwsIamUserArn string
    The Snowflake user that will attempt to assume the AWS role.
    storageGcpServiceAccount string
    This is the name of the Snowflake Google Service Account created for your account.
    azure_consent_url str
    The consent URL that is used to create an Azure Snowflake service principle inside your tenant.
    azure_multi_tenant_app_name str
    This is the name of the Snowflake client application created for your account.
    created_on str
    Date and time when the storage integration was created.
    id str
    The provider-assigned unique ID for this managed resource.
    storage_aws_external_id str
    The external ID that Snowflake will use when assuming the AWS role.
    storage_aws_iam_user_arn str
    The Snowflake user that will attempt to assume the AWS role.
    storage_gcp_service_account str
    This is the name of the Snowflake Google Service Account created for your account.
    azureConsentUrl String
    The consent URL that is used to create an Azure Snowflake service principle inside your tenant.
    azureMultiTenantAppName String
    This is the name of the Snowflake client application created for your account.
    createdOn String
    Date and time when the storage integration was created.
    id String
    The provider-assigned unique ID for this managed resource.
    storageAwsExternalId String
    The external ID that Snowflake will use when assuming the AWS role.
    storageAwsIamUserArn String
    The Snowflake user that will attempt to assume the AWS role.
    storageGcpServiceAccount String
    This is the name of the Snowflake Google Service Account created for your account.

    Look up Existing StorageIntegration Resource

    Get an existing StorageIntegration 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?: StorageIntegrationState, opts?: CustomResourceOptions): StorageIntegration
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            azure_consent_url: Optional[str] = None,
            azure_multi_tenant_app_name: Optional[str] = None,
            azure_tenant_id: Optional[str] = None,
            comment: Optional[str] = None,
            created_on: Optional[str] = None,
            enabled: Optional[bool] = None,
            name: Optional[str] = None,
            storage_allowed_locations: Optional[Sequence[str]] = None,
            storage_aws_external_id: Optional[str] = None,
            storage_aws_iam_user_arn: Optional[str] = None,
            storage_aws_object_acl: Optional[str] = None,
            storage_aws_role_arn: Optional[str] = None,
            storage_blocked_locations: Optional[Sequence[str]] = None,
            storage_gcp_service_account: Optional[str] = None,
            storage_provider: Optional[str] = None,
            type: Optional[str] = None) -> StorageIntegration
    func GetStorageIntegration(ctx *Context, name string, id IDInput, state *StorageIntegrationState, opts ...ResourceOption) (*StorageIntegration, error)
    public static StorageIntegration Get(string name, Input<string> id, StorageIntegrationState? state, CustomResourceOptions? opts = null)
    public static StorageIntegration get(String name, Output<String> id, StorageIntegrationState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    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:
    AzureConsentUrl string
    The consent URL that is used to create an Azure Snowflake service principle inside your tenant.
    AzureMultiTenantAppName string
    This is the name of the Snowflake client application created for your account.
    AzureTenantId string
    Comment string
    CreatedOn string
    Date and time when the storage integration was created.
    Enabled bool
    Name string
    StorageAllowedLocations List<string>
    Explicitly limits external stages that use the integration to reference one or more storage locations.
    StorageAwsExternalId string
    The external ID that Snowflake will use when assuming the AWS role.
    StorageAwsIamUserArn string
    The Snowflake user that will attempt to assume the AWS role.
    StorageAwsObjectAcl string
    "bucket-owner-full-control" Enables support for AWS access control lists (ACLs) to grant the bucket owner full control.
    StorageAwsRoleArn string
    StorageBlockedLocations List<string>
    Explicitly prohibits external stages that use the integration from referencing one or more storage locations.
    StorageGcpServiceAccount string
    This is the name of the Snowflake Google Service Account created for your account.
    StorageProvider string
    Type string
    AzureConsentUrl string
    The consent URL that is used to create an Azure Snowflake service principle inside your tenant.
    AzureMultiTenantAppName string
    This is the name of the Snowflake client application created for your account.
    AzureTenantId string
    Comment string
    CreatedOn string
    Date and time when the storage integration was created.
    Enabled bool
    Name string
    StorageAllowedLocations []string
    Explicitly limits external stages that use the integration to reference one or more storage locations.
    StorageAwsExternalId string
    The external ID that Snowflake will use when assuming the AWS role.
    StorageAwsIamUserArn string
    The Snowflake user that will attempt to assume the AWS role.
    StorageAwsObjectAcl string
    "bucket-owner-full-control" Enables support for AWS access control lists (ACLs) to grant the bucket owner full control.
    StorageAwsRoleArn string
    StorageBlockedLocations []string
    Explicitly prohibits external stages that use the integration from referencing one or more storage locations.
    StorageGcpServiceAccount string
    This is the name of the Snowflake Google Service Account created for your account.
    StorageProvider string
    Type string
    azureConsentUrl String
    The consent URL that is used to create an Azure Snowflake service principle inside your tenant.
    azureMultiTenantAppName String
    This is the name of the Snowflake client application created for your account.
    azureTenantId String
    comment String
    createdOn String
    Date and time when the storage integration was created.
    enabled Boolean
    name String
    storageAllowedLocations List<String>
    Explicitly limits external stages that use the integration to reference one or more storage locations.
    storageAwsExternalId String
    The external ID that Snowflake will use when assuming the AWS role.
    storageAwsIamUserArn String
    The Snowflake user that will attempt to assume the AWS role.
    storageAwsObjectAcl String
    "bucket-owner-full-control" Enables support for AWS access control lists (ACLs) to grant the bucket owner full control.
    storageAwsRoleArn String
    storageBlockedLocations List<String>
    Explicitly prohibits external stages that use the integration from referencing one or more storage locations.
    storageGcpServiceAccount String
    This is the name of the Snowflake Google Service Account created for your account.
    storageProvider String
    type String
    azureConsentUrl string
    The consent URL that is used to create an Azure Snowflake service principle inside your tenant.
    azureMultiTenantAppName string
    This is the name of the Snowflake client application created for your account.
    azureTenantId string
    comment string
    createdOn string
    Date and time when the storage integration was created.
    enabled boolean
    name string
    storageAllowedLocations string[]
    Explicitly limits external stages that use the integration to reference one or more storage locations.
    storageAwsExternalId string
    The external ID that Snowflake will use when assuming the AWS role.
    storageAwsIamUserArn string
    The Snowflake user that will attempt to assume the AWS role.
    storageAwsObjectAcl string
    "bucket-owner-full-control" Enables support for AWS access control lists (ACLs) to grant the bucket owner full control.
    storageAwsRoleArn string
    storageBlockedLocations string[]
    Explicitly prohibits external stages that use the integration from referencing one or more storage locations.
    storageGcpServiceAccount string
    This is the name of the Snowflake Google Service Account created for your account.
    storageProvider string
    type string
    azure_consent_url str
    The consent URL that is used to create an Azure Snowflake service principle inside your tenant.
    azure_multi_tenant_app_name str
    This is the name of the Snowflake client application created for your account.
    azure_tenant_id str
    comment str
    created_on str
    Date and time when the storage integration was created.
    enabled bool
    name str
    storage_allowed_locations Sequence[str]
    Explicitly limits external stages that use the integration to reference one or more storage locations.
    storage_aws_external_id str
    The external ID that Snowflake will use when assuming the AWS role.
    storage_aws_iam_user_arn str
    The Snowflake user that will attempt to assume the AWS role.
    storage_aws_object_acl str
    "bucket-owner-full-control" Enables support for AWS access control lists (ACLs) to grant the bucket owner full control.
    storage_aws_role_arn str
    storage_blocked_locations Sequence[str]
    Explicitly prohibits external stages that use the integration from referencing one or more storage locations.
    storage_gcp_service_account str
    This is the name of the Snowflake Google Service Account created for your account.
    storage_provider str
    type str
    azureConsentUrl String
    The consent URL that is used to create an Azure Snowflake service principle inside your tenant.
    azureMultiTenantAppName String
    This is the name of the Snowflake client application created for your account.
    azureTenantId String
    comment String
    createdOn String
    Date and time when the storage integration was created.
    enabled Boolean
    name String
    storageAllowedLocations List<String>
    Explicitly limits external stages that use the integration to reference one or more storage locations.
    storageAwsExternalId String
    The external ID that Snowflake will use when assuming the AWS role.
    storageAwsIamUserArn String
    The Snowflake user that will attempt to assume the AWS role.
    storageAwsObjectAcl String
    "bucket-owner-full-control" Enables support for AWS access control lists (ACLs) to grant the bucket owner full control.
    storageAwsRoleArn String
    storageBlockedLocations List<String>
    Explicitly prohibits external stages that use the integration from referencing one or more storage locations.
    storageGcpServiceAccount String
    This is the name of the Snowflake Google Service Account created for your account.
    storageProvider String
    type String

    Import

    $ pulumi import snowflake:index/storageIntegration:StorageIntegration example name
    

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

    Package Details

    Repository
    Snowflake pulumi/pulumi-snowflake
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the snowflake Terraform Provider.
    snowflake logo
    Snowflake v0.52.0 published on Thursday, Apr 18, 2024 by Pulumi