published on Friday, Sep 11, 2026 by Pulumi
published on Friday, Sep 11, 2026 by Pulumi
Caution: Preview Feature This feature is considered a preview feature in the provider, regardless of the state of the resource in Snowflake. We do not guarantee its stability. It will be reworked and marked as a stable feature in future releases. Breaking changes are expected, even without bumping the major version. To use this feature, add the relevant feature name to
previewFeaturesEnabledfield in the provider configuration. Please always refer to the Getting Help section in our Github repo to best determine how to get help for your questions.
Note on import behavior After import, the first
pulumi previewmay show an in-place update (not recreation) forallowedAuthenticationSecretsandallowedApiAuthenticationIntegrations. Runpulumi uponce to sync these values into state.
Resource used to manage external access integration objects. For more information, check external access integration documentation.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as snowflake from "@pulumi/snowflake";
//# Minimal
// The referenced network rule has to be created with mode = "EGRESS".
const basic = new snowflake.ExternalAccessIntegration("basic", {
name: "external_access_integration_name",
enabled: true,
allowedNetworkRules: [egress.fullyQualifiedName],
});
//# Complete (with every optional set)
const complete = new snowflake.ExternalAccessIntegration("complete", {
name: "external_access_integration_name",
enabled: true,
allowedNetworkRules: [
egress.fullyQualifiedName,
otherEgress.fullyQualifiedName,
],
allowedApiAuthenticationIntegrations: {
integrations: [example.name],
},
allowedAuthenticationSecrets: {
secrets: [exampleSnowflakeSecretWithBasicAuthentication.fullyQualifiedName],
},
comment: "my external access integration",
});
//# Allowing every secret in the account
const allSecrets = new snowflake.ExternalAccessIntegration("all_secrets", {
name: "external_access_integration_name",
enabled: true,
allowedNetworkRules: [egress.fullyQualifiedName],
allowedAuthenticationSecrets: {
all: true,
},
});
//# Explicitly allowing no secrets and no API authentication integrations
const noneAllowed = new snowflake.ExternalAccessIntegration("none_allowed", {
name: "external_access_integration_name",
enabled: true,
allowedNetworkRules: [egress.fullyQualifiedName],
allowedAuthenticationSecrets: {
none: true,
},
allowedApiAuthenticationIntegrations: {
none: true,
},
});
import pulumi
import pulumi_snowflake as snowflake
## Minimal
# The referenced network rule has to be created with mode = "EGRESS".
basic = snowflake.ExternalAccessIntegration("basic",
name="external_access_integration_name",
enabled=True,
allowed_network_rules=[egress["fullyQualifiedName"]])
## Complete (with every optional set)
complete = snowflake.ExternalAccessIntegration("complete",
name="external_access_integration_name",
enabled=True,
allowed_network_rules=[
egress["fullyQualifiedName"],
other_egress["fullyQualifiedName"],
],
allowed_api_authentication_integrations={
"integrations": [example["name"]],
},
allowed_authentication_secrets={
"secrets": [example_snowflake_secret_with_basic_authentication["fullyQualifiedName"]],
},
comment="my external access integration")
## Allowing every secret in the account
all_secrets = snowflake.ExternalAccessIntegration("all_secrets",
name="external_access_integration_name",
enabled=True,
allowed_network_rules=[egress["fullyQualifiedName"]],
allowed_authentication_secrets={
"all": True,
})
## Explicitly allowing no secrets and no API authentication integrations
none_allowed = snowflake.ExternalAccessIntegration("none_allowed",
name="external_access_integration_name",
enabled=True,
allowed_network_rules=[egress["fullyQualifiedName"]],
allowed_authentication_secrets={
"none": True,
},
allowed_api_authentication_integrations={
"none": True,
})
package main
import (
"github.com/pulumi/pulumi-snowflake/sdk/v2/go/snowflake"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
// # Minimal
// The referenced network rule has to be created with mode = "EGRESS".
_, err := snowflake.NewExternalAccessIntegration(ctx, "basic", &snowflake.ExternalAccessIntegrationArgs{
Name: pulumi.String("external_access_integration_name"),
Enabled: pulumi.Bool(true),
AllowedNetworkRules: pulumi.StringArray{
egress.FullyQualifiedName,
},
})
if err != nil {
return err
}
// # Complete (with every optional set)
_, err = snowflake.NewExternalAccessIntegration(ctx, "complete", &snowflake.ExternalAccessIntegrationArgs{
Name: pulumi.String("external_access_integration_name"),
Enabled: pulumi.Bool(true),
AllowedNetworkRules: pulumi.StringArray{
egress.FullyQualifiedName,
otherEgress.FullyQualifiedName,
},
AllowedApiAuthenticationIntegrations: &snowflake.ExternalAccessIntegrationAllowedApiAuthenticationIntegrationsArgs{
Integrations: pulumi.StringArray{
example.Name,
},
},
AllowedAuthenticationSecrets: &snowflake.ExternalAccessIntegrationAllowedAuthenticationSecretsArgs{
Secrets: pulumi.StringArray{
exampleSnowflakeSecretWithBasicAuthentication.FullyQualifiedName,
},
},
Comment: pulumi.String("my external access integration"),
})
if err != nil {
return err
}
// # Allowing every secret in the account
_, err = snowflake.NewExternalAccessIntegration(ctx, "all_secrets", &snowflake.ExternalAccessIntegrationArgs{
Name: pulumi.String("external_access_integration_name"),
Enabled: pulumi.Bool(true),
AllowedNetworkRules: pulumi.StringArray{
egress.FullyQualifiedName,
},
AllowedAuthenticationSecrets: &snowflake.ExternalAccessIntegrationAllowedAuthenticationSecretsArgs{
All: pulumi.Bool(true),
},
})
if err != nil {
return err
}
// # Explicitly allowing no secrets and no API authentication integrations
_, err = snowflake.NewExternalAccessIntegration(ctx, "none_allowed", &snowflake.ExternalAccessIntegrationArgs{
Name: pulumi.String("external_access_integration_name"),
Enabled: pulumi.Bool(true),
AllowedNetworkRules: pulumi.StringArray{
egress.FullyQualifiedName,
},
AllowedAuthenticationSecrets: &snowflake.ExternalAccessIntegrationAllowedAuthenticationSecretsArgs{
None: pulumi.Bool(true),
},
AllowedApiAuthenticationIntegrations: &snowflake.ExternalAccessIntegrationAllowedApiAuthenticationIntegrationsArgs{
None: pulumi.Bool(true),
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Snowflake = Pulumi.Snowflake;
return await Deployment.RunAsync(() =>
{
//# Minimal
// The referenced network rule has to be created with mode = "EGRESS".
var basic = new Snowflake.ExternalAccessIntegration("basic", new()
{
Name = "external_access_integration_name",
Enabled = true,
AllowedNetworkRules = new[]
{
egress.FullyQualifiedName,
},
});
//# Complete (with every optional set)
var complete = new Snowflake.ExternalAccessIntegration("complete", new()
{
Name = "external_access_integration_name",
Enabled = true,
AllowedNetworkRules = new[]
{
egress.FullyQualifiedName,
otherEgress.FullyQualifiedName,
},
AllowedApiAuthenticationIntegrations = new Snowflake.Inputs.ExternalAccessIntegrationAllowedApiAuthenticationIntegrationsArgs
{
Integrations = new[]
{
example.Name,
},
},
AllowedAuthenticationSecrets = new Snowflake.Inputs.ExternalAccessIntegrationAllowedAuthenticationSecretsArgs
{
Secrets = new[]
{
exampleSnowflakeSecretWithBasicAuthentication.FullyQualifiedName,
},
},
Comment = "my external access integration",
});
//# Allowing every secret in the account
var allSecrets = new Snowflake.ExternalAccessIntegration("all_secrets", new()
{
Name = "external_access_integration_name",
Enabled = true,
AllowedNetworkRules = new[]
{
egress.FullyQualifiedName,
},
AllowedAuthenticationSecrets = new Snowflake.Inputs.ExternalAccessIntegrationAllowedAuthenticationSecretsArgs
{
All = true,
},
});
//# Explicitly allowing no secrets and no API authentication integrations
var noneAllowed = new Snowflake.ExternalAccessIntegration("none_allowed", new()
{
Name = "external_access_integration_name",
Enabled = true,
AllowedNetworkRules = new[]
{
egress.FullyQualifiedName,
},
AllowedAuthenticationSecrets = new Snowflake.Inputs.ExternalAccessIntegrationAllowedAuthenticationSecretsArgs
{
None = true,
},
AllowedApiAuthenticationIntegrations = new Snowflake.Inputs.ExternalAccessIntegrationAllowedApiAuthenticationIntegrationsArgs
{
None = true,
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.snowflake.ExternalAccessIntegration;
import com.pulumi.snowflake.ExternalAccessIntegrationArgs;
import com.pulumi.snowflake.inputs.ExternalAccessIntegrationAllowedApiAuthenticationIntegrationsArgs;
import com.pulumi.snowflake.inputs.ExternalAccessIntegrationAllowedAuthenticationSecretsArgs;
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) {
//# Minimal
// The referenced network rule has to be created with mode = "EGRESS".
var basic = new ExternalAccessIntegration("basic", ExternalAccessIntegrationArgs.builder()
.name("external_access_integration_name")
.enabled(true)
.allowedNetworkRules(egress.fullyQualifiedName())
.build());
//# Complete (with every optional set)
var complete = new ExternalAccessIntegration("complete", ExternalAccessIntegrationArgs.builder()
.name("external_access_integration_name")
.enabled(true)
.allowedNetworkRules(
egress.fullyQualifiedName(),
otherEgress.fullyQualifiedName())
.allowedApiAuthenticationIntegrations(ExternalAccessIntegrationAllowedApiAuthenticationIntegrationsArgs.builder()
.integrations(example.name())
.build())
.allowedAuthenticationSecrets(ExternalAccessIntegrationAllowedAuthenticationSecretsArgs.builder()
.secrets(exampleSnowflakeSecretWithBasicAuthentication.fullyQualifiedName())
.build())
.comment("my external access integration")
.build());
//# Allowing every secret in the account
var allSecrets = new ExternalAccessIntegration("allSecrets", ExternalAccessIntegrationArgs.builder()
.name("external_access_integration_name")
.enabled(true)
.allowedNetworkRules(egress.fullyQualifiedName())
.allowedAuthenticationSecrets(ExternalAccessIntegrationAllowedAuthenticationSecretsArgs.builder()
.all(true)
.build())
.build());
//# Explicitly allowing no secrets and no API authentication integrations
var noneAllowed = new ExternalAccessIntegration("noneAllowed", ExternalAccessIntegrationArgs.builder()
.name("external_access_integration_name")
.enabled(true)
.allowedNetworkRules(egress.fullyQualifiedName())
.allowedAuthenticationSecrets(ExternalAccessIntegrationAllowedAuthenticationSecretsArgs.builder()
.none(true)
.build())
.allowedApiAuthenticationIntegrations(ExternalAccessIntegrationAllowedApiAuthenticationIntegrationsArgs.builder()
.none(true)
.build())
.build());
}
}
resources:
## Minimal
# The referenced network rule has to be created with mode = "EGRESS".
basic:
type: snowflake:ExternalAccessIntegration
properties:
name: external_access_integration_name
enabled: true
allowedNetworkRules:
- ${egress.fullyQualifiedName}
## Complete (with every optional set)
complete:
type: snowflake:ExternalAccessIntegration
properties:
name: external_access_integration_name
enabled: true
allowedNetworkRules:
- ${egress.fullyQualifiedName}
- ${otherEgress.fullyQualifiedName}
allowedApiAuthenticationIntegrations:
integrations:
- ${example.name}
allowedAuthenticationSecrets:
secrets:
- ${exampleSnowflakeSecretWithBasicAuthentication.fullyQualifiedName}
comment: my external access integration
## Allowing every secret in the account
allSecrets:
type: snowflake:ExternalAccessIntegration
name: all_secrets
properties:
name: external_access_integration_name
enabled: true
allowedNetworkRules:
- ${egress.fullyQualifiedName}
allowedAuthenticationSecrets:
all: true
## Explicitly allowing no secrets and no API authentication integrations
noneAllowed:
type: snowflake:ExternalAccessIntegration
name: none_allowed
properties:
name: external_access_integration_name
enabled: true
allowedNetworkRules:
- ${egress.fullyQualifiedName}
allowedAuthenticationSecrets:
none: true
allowedApiAuthenticationIntegrations:
none: true
pulumi {
required_providers {
snowflake = {
source = "pulumi/snowflake"
}
}
}
## Minimal
# The referenced network rule has to be created with mode = "EGRESS".
resource "snowflake_externalaccessintegration" "basic" {
name = "external_access_integration_name"
enabled = true
allowed_network_rules = [egress.fullyQualifiedName]
}
## Complete (with every optional set)
resource "snowflake_externalaccessintegration" "complete" {
name = "external_access_integration_name"
enabled = true
allowed_network_rules = [egress.fullyQualifiedName, otherEgress.fullyQualifiedName]
allowed_api_authentication_integrations = {
integrations = [example.name]
}
allowed_authentication_secrets = {
secrets = [exampleSnowflakeSecretWithBasicAuthentication.fullyQualifiedName]
}
comment = "my external access integration"
}
## Allowing every secret in the account
resource "snowflake_externalaccessintegration" "all_secrets" {
name = "external_access_integration_name"
enabled = true
allowed_network_rules = [egress.fullyQualifiedName]
allowed_authentication_secrets = {
all = true
}
}
## Explicitly allowing no secrets and no API authentication integrations
resource "snowflake_externalaccessintegration" "none_allowed" {
name = "external_access_integration_name"
enabled = true
allowed_network_rules = [egress.fullyQualifiedName]
allowed_authentication_secrets = {
none = true
}
allowed_api_authentication_integrations = {
none = true
}
}
Note Instead of using fully_qualified_name, you can reference objects managed outside Terraform by constructing a correct ID, consult identifiers guide.
Note If a field has a default value, it is shown next to the type in the schema.
Create ExternalAccessIntegration Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new ExternalAccessIntegration(name: string, args: ExternalAccessIntegrationArgs, opts?: CustomResourceOptions);@overload
def ExternalAccessIntegration(resource_name: str,
args: ExternalAccessIntegrationArgs,
opts: Optional[ResourceOptions] = None)
@overload
def ExternalAccessIntegration(resource_name: str,
opts: Optional[ResourceOptions] = None,
allowed_network_rules: Optional[Sequence[str]] = None,
enabled: Optional[bool] = None,
allowed_api_authentication_integrations: Optional[ExternalAccessIntegrationAllowedApiAuthenticationIntegrationsArgs] = None,
allowed_authentication_secrets: Optional[ExternalAccessIntegrationAllowedAuthenticationSecretsArgs] = None,
comment: Optional[str] = None,
name: Optional[str] = None)func NewExternalAccessIntegration(ctx *Context, name string, args ExternalAccessIntegrationArgs, opts ...ResourceOption) (*ExternalAccessIntegration, error)public ExternalAccessIntegration(string name, ExternalAccessIntegrationArgs args, CustomResourceOptions? opts = null)
public ExternalAccessIntegration(String name, ExternalAccessIntegrationArgs args)
public ExternalAccessIntegration(String name, ExternalAccessIntegrationArgs args, CustomResourceOptions options)
type: snowflake:ExternalAccessIntegration
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
resource "snowflake_external_access_integration" "name" {
# resource properties
}Parameters
- name string
- The unique name of the resource.
- args ExternalAccessIntegrationArgs
- 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 ExternalAccessIntegrationArgs
- 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 ExternalAccessIntegrationArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args ExternalAccessIntegrationArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args ExternalAccessIntegrationArgs
- 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 externalAccessIntegrationResource = new Snowflake.ExternalAccessIntegration("externalAccessIntegrationResource", new()
{
AllowedNetworkRules = new[]
{
"string",
},
Enabled = false,
AllowedApiAuthenticationIntegrations = new Snowflake.Inputs.ExternalAccessIntegrationAllowedApiAuthenticationIntegrationsArgs
{
Integrations = new[]
{
"string",
},
None = false,
},
AllowedAuthenticationSecrets = new Snowflake.Inputs.ExternalAccessIntegrationAllowedAuthenticationSecretsArgs
{
All = false,
None = false,
Secrets = new[]
{
"string",
},
},
Comment = "string",
Name = "string",
});
example, err := snowflake.NewExternalAccessIntegration(ctx, "externalAccessIntegrationResource", &snowflake.ExternalAccessIntegrationArgs{
AllowedNetworkRules: pulumi.StringArray{
pulumi.String("string"),
},
Enabled: pulumi.Bool(false),
AllowedApiAuthenticationIntegrations: &snowflake.ExternalAccessIntegrationAllowedApiAuthenticationIntegrationsArgs{
Integrations: pulumi.StringArray{
pulumi.String("string"),
},
None: pulumi.Bool(false),
},
AllowedAuthenticationSecrets: &snowflake.ExternalAccessIntegrationAllowedAuthenticationSecretsArgs{
All: pulumi.Bool(false),
None: pulumi.Bool(false),
Secrets: pulumi.StringArray{
pulumi.String("string"),
},
},
Comment: pulumi.String("string"),
Name: pulumi.String("string"),
})
resource "snowflake_external_access_integration" "externalAccessIntegrationResource" {
lifecycle {
create_before_destroy = true
}
allowed_network_rules = ["string"]
enabled = false
allowed_api_authentication_integrations = {
integrations = ["string"]
none = false
}
allowed_authentication_secrets = {
all = false
none = false
secrets = ["string"]
}
comment = "string"
name = "string"
}
var externalAccessIntegrationResource = new ExternalAccessIntegration("externalAccessIntegrationResource", ExternalAccessIntegrationArgs.builder()
.allowedNetworkRules("string")
.enabled(false)
.allowedApiAuthenticationIntegrations(ExternalAccessIntegrationAllowedApiAuthenticationIntegrationsArgs.builder()
.integrations("string")
.none(false)
.build())
.allowedAuthenticationSecrets(ExternalAccessIntegrationAllowedAuthenticationSecretsArgs.builder()
.all(false)
.none(false)
.secrets("string")
.build())
.comment("string")
.name("string")
.build());
external_access_integration_resource = snowflake.ExternalAccessIntegration("externalAccessIntegrationResource",
allowed_network_rules=["string"],
enabled=False,
allowed_api_authentication_integrations={
"integrations": ["string"],
"none": False,
},
allowed_authentication_secrets={
"all": False,
"none": False,
"secrets": ["string"],
},
comment="string",
name="string")
const externalAccessIntegrationResource = new snowflake.ExternalAccessIntegration("externalAccessIntegrationResource", {
allowedNetworkRules: ["string"],
enabled: false,
allowedApiAuthenticationIntegrations: {
integrations: ["string"],
none: false,
},
allowedAuthenticationSecrets: {
all: false,
none: false,
secrets: ["string"],
},
comment: "string",
name: "string",
});
type: snowflake:ExternalAccessIntegration
properties:
allowedApiAuthenticationIntegrations:
integrations:
- string
none: false
allowedAuthenticationSecrets:
all: false
none: false
secrets:
- string
allowedNetworkRules:
- string
comment: string
enabled: false
name: string
ExternalAccessIntegration 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 ExternalAccessIntegration resource accepts the following input properties:
- Allowed
Network List<string>Rules - Specifies the network rules for external locations reachable through this integration. At least one is required. Only egress network rules may be specified. For more information about this resource, see docs.
- Enabled bool
- Specifies whether the integration is enabled.
- Allowed
Api ExternalAuthentication Integrations Access Integration Allowed Api Authentication Integrations - Specifies allowed API authentication integrations for this integration. Exactly one of
noneorintegrationsmust be set inside the block. - Allowed
Authentication ExternalSecrets Access Integration Allowed Authentication Secrets - Specifies allowed authentication secrets for this integration. Exactly one of
none,all, orsecretsmust be set inside the block. - Comment string
- Specifies a comment for the external access integration.
- Name string
- Specifies the identifier for the external access integration. Changing this value recreates the integration. Due to technical limitations (read more here), avoid using the following characters:
|,.,".
- Allowed
Network []stringRules - Specifies the network rules for external locations reachable through this integration. At least one is required. Only egress network rules may be specified. For more information about this resource, see docs.
- Enabled bool
- Specifies whether the integration is enabled.
- Allowed
Api ExternalAuthentication Integrations Access Integration Allowed Api Authentication Integrations Args - Specifies allowed API authentication integrations for this integration. Exactly one of
noneorintegrationsmust be set inside the block. - Allowed
Authentication ExternalSecrets Access Integration Allowed Authentication Secrets Args - Specifies allowed authentication secrets for this integration. Exactly one of
none,all, orsecretsmust be set inside the block. - Comment string
- Specifies a comment for the external access integration.
- Name string
- Specifies the identifier for the external access integration. Changing this value recreates the integration. Due to technical limitations (read more here), avoid using the following characters:
|,.,".
- allowed_
network_ list(string)rules - Specifies the network rules for external locations reachable through this integration. At least one is required. Only egress network rules may be specified. For more information about this resource, see docs.
- enabled bool
- Specifies whether the integration is enabled.
- allowed_
api_ objectauthentication_ integrations - Specifies allowed API authentication integrations for this integration. Exactly one of
noneorintegrationsmust be set inside the block. - allowed_
authentication_ objectsecrets - Specifies allowed authentication secrets for this integration. Exactly one of
none,all, orsecretsmust be set inside the block. - comment string
- Specifies a comment for the external access integration.
- name string
- Specifies the identifier for the external access integration. Changing this value recreates the integration. Due to technical limitations (read more here), avoid using the following characters:
|,.,".
- allowed
Network List<String>Rules - Specifies the network rules for external locations reachable through this integration. At least one is required. Only egress network rules may be specified. For more information about this resource, see docs.
- enabled Boolean
- Specifies whether the integration is enabled.
- allowed
Api ExternalAuthentication Integrations Access Integration Allowed Api Authentication Integrations - Specifies allowed API authentication integrations for this integration. Exactly one of
noneorintegrationsmust be set inside the block. - allowed
Authentication ExternalSecrets Access Integration Allowed Authentication Secrets - Specifies allowed authentication secrets for this integration. Exactly one of
none,all, orsecretsmust be set inside the block. - comment String
- Specifies a comment for the external access integration.
- name String
- Specifies the identifier for the external access integration. Changing this value recreates the integration. Due to technical limitations (read more here), avoid using the following characters:
|,.,".
- allowed
Network string[]Rules - Specifies the network rules for external locations reachable through this integration. At least one is required. Only egress network rules may be specified. For more information about this resource, see docs.
- enabled boolean
- Specifies whether the integration is enabled.
- allowed
Api ExternalAuthentication Integrations Access Integration Allowed Api Authentication Integrations - Specifies allowed API authentication integrations for this integration. Exactly one of
noneorintegrationsmust be set inside the block. - allowed
Authentication ExternalSecrets Access Integration Allowed Authentication Secrets - Specifies allowed authentication secrets for this integration. Exactly one of
none,all, orsecretsmust be set inside the block. - comment string
- Specifies a comment for the external access integration.
- name string
- Specifies the identifier for the external access integration. Changing this value recreates the integration. Due to technical limitations (read more here), avoid using the following characters:
|,.,".
- allowed_
network_ Sequence[str]rules - Specifies the network rules for external locations reachable through this integration. At least one is required. Only egress network rules may be specified. For more information about this resource, see docs.
- enabled bool
- Specifies whether the integration is enabled.
- allowed_
api_ Externalauthentication_ integrations Access Integration Allowed Api Authentication Integrations Args - Specifies allowed API authentication integrations for this integration. Exactly one of
noneorintegrationsmust be set inside the block. - allowed_
authentication_ Externalsecrets Access Integration Allowed Authentication Secrets Args - Specifies allowed authentication secrets for this integration. Exactly one of
none,all, orsecretsmust be set inside the block. - comment str
- Specifies a comment for the external access integration.
- name str
- Specifies the identifier for the external access integration. Changing this value recreates the integration. Due to technical limitations (read more here), avoid using the following characters:
|,.,".
- allowed
Network List<String>Rules - Specifies the network rules for external locations reachable through this integration. At least one is required. Only egress network rules may be specified. For more information about this resource, see docs.
- enabled Boolean
- Specifies whether the integration is enabled.
- allowed
Api Property MapAuthentication Integrations - Specifies allowed API authentication integrations for this integration. Exactly one of
noneorintegrationsmust be set inside the block. - allowed
Authentication Property MapSecrets - Specifies allowed authentication secrets for this integration. Exactly one of
none,all, orsecretsmust be set inside the block. - comment String
- Specifies a comment for the external access integration.
- name String
- Specifies the identifier for the external access integration. Changing this value recreates the integration. Due to technical limitations (read more here), avoid using the following characters:
|,.,".
Outputs
All input properties are implicitly available as output properties. Additionally, the ExternalAccessIntegration resource produces the following output properties:
- Describe
Outputs List<ExternalAccess Integration Describe Output> - Outputs the result of
DESCRIBE EXTERNAL ACCESS INTEGRATIONfor this integration. - Fully
Qualified stringName - Fully qualified name of the resource. For more information, see object name resolution.
- Id string
- The provider-assigned unique ID for this managed resource.
- Show
Outputs List<ExternalAccess Integration Show Output> - Outputs the result of
SHOW EXTERNAL ACCESS INTEGRATIONSfor this integration.
- Describe
Outputs []ExternalAccess Integration Describe Output - Outputs the result of
DESCRIBE EXTERNAL ACCESS INTEGRATIONfor this integration. - Fully
Qualified stringName - Fully qualified name of the resource. For more information, see object name resolution.
- Id string
- The provider-assigned unique ID for this managed resource.
- Show
Outputs []ExternalAccess Integration Show Output - Outputs the result of
SHOW EXTERNAL ACCESS INTEGRATIONSfor this integration.
- describe_
outputs list(object) - Outputs the result of
DESCRIBE EXTERNAL ACCESS INTEGRATIONfor this integration. - fully_
qualified_ stringname - Fully qualified name of the resource. For more information, see object name resolution.
- id string
- The provider-assigned unique ID for this managed resource.
- show_
outputs list(object) - Outputs the result of
SHOW EXTERNAL ACCESS INTEGRATIONSfor this integration.
- describe
Outputs List<ExternalAccess Integration Describe Output> - Outputs the result of
DESCRIBE EXTERNAL ACCESS INTEGRATIONfor this integration. - fully
Qualified StringName - Fully qualified name of the resource. For more information, see object name resolution.
- id String
- The provider-assigned unique ID for this managed resource.
- show
Outputs List<ExternalAccess Integration Show Output> - Outputs the result of
SHOW EXTERNAL ACCESS INTEGRATIONSfor this integration.
- describe
Outputs ExternalAccess Integration Describe Output[] - Outputs the result of
DESCRIBE EXTERNAL ACCESS INTEGRATIONfor this integration. - fully
Qualified stringName - Fully qualified name of the resource. For more information, see object name resolution.
- id string
- The provider-assigned unique ID for this managed resource.
- show
Outputs ExternalAccess Integration Show Output[] - Outputs the result of
SHOW EXTERNAL ACCESS INTEGRATIONSfor this integration.
- describe_
outputs Sequence[ExternalAccess Integration Describe Output] - Outputs the result of
DESCRIBE EXTERNAL ACCESS INTEGRATIONfor this integration. - fully_
qualified_ strname - Fully qualified name of the resource. For more information, see object name resolution.
- id str
- The provider-assigned unique ID for this managed resource.
- show_
outputs Sequence[ExternalAccess Integration Show Output] - Outputs the result of
SHOW EXTERNAL ACCESS INTEGRATIONSfor this integration.
- describe
Outputs List<Property Map> - Outputs the result of
DESCRIBE EXTERNAL ACCESS INTEGRATIONfor this integration. - fully
Qualified StringName - Fully qualified name of the resource. For more information, see object name resolution.
- id String
- The provider-assigned unique ID for this managed resource.
- show
Outputs List<Property Map> - Outputs the result of
SHOW EXTERNAL ACCESS INTEGRATIONSfor this integration.
Look up Existing ExternalAccessIntegration Resource
Get an existing ExternalAccessIntegration 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?: ExternalAccessIntegrationState, opts?: CustomResourceOptions): ExternalAccessIntegration@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
allowed_api_authentication_integrations: Optional[ExternalAccessIntegrationAllowedApiAuthenticationIntegrationsArgs] = None,
allowed_authentication_secrets: Optional[ExternalAccessIntegrationAllowedAuthenticationSecretsArgs] = None,
allowed_network_rules: Optional[Sequence[str]] = None,
comment: Optional[str] = None,
describe_outputs: Optional[Sequence[ExternalAccessIntegrationDescribeOutputArgs]] = None,
enabled: Optional[bool] = None,
fully_qualified_name: Optional[str] = None,
name: Optional[str] = None,
show_outputs: Optional[Sequence[ExternalAccessIntegrationShowOutputArgs]] = None) -> ExternalAccessIntegrationfunc GetExternalAccessIntegration(ctx *Context, name string, id IDInput, state *ExternalAccessIntegrationState, opts ...ResourceOption) (*ExternalAccessIntegration, error)public static ExternalAccessIntegration Get(string name, Input<string> id, ExternalAccessIntegrationState? state, CustomResourceOptions? opts = null)public static ExternalAccessIntegration get(String name, Output<String> id, ExternalAccessIntegrationState state, CustomResourceOptions options)resources: _: type: snowflake:ExternalAccessIntegration get: id: ${id}import {
to = snowflake_external_access_integration.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.
- Allowed
Api ExternalAuthentication Integrations Access Integration Allowed Api Authentication Integrations - Specifies allowed API authentication integrations for this integration. Exactly one of
noneorintegrationsmust be set inside the block. - Allowed
Authentication ExternalSecrets Access Integration Allowed Authentication Secrets - Specifies allowed authentication secrets for this integration. Exactly one of
none,all, orsecretsmust be set inside the block. - Allowed
Network List<string>Rules - Specifies the network rules for external locations reachable through this integration. At least one is required. Only egress network rules may be specified. For more information about this resource, see docs.
- Comment string
- Specifies a comment for the external access integration.
- Describe
Outputs List<ExternalAccess Integration Describe Output> - Outputs the result of
DESCRIBE EXTERNAL ACCESS INTEGRATIONfor this integration. - Enabled bool
- Specifies whether the integration is enabled.
- Fully
Qualified stringName - Fully qualified name of the resource. For more information, see object name resolution.
- Name string
- Specifies the identifier for the external access integration. Changing this value recreates the integration. Due to technical limitations (read more here), avoid using the following characters:
|,.,". - Show
Outputs List<ExternalAccess Integration Show Output> - Outputs the result of
SHOW EXTERNAL ACCESS INTEGRATIONSfor this integration.
- Allowed
Api ExternalAuthentication Integrations Access Integration Allowed Api Authentication Integrations Args - Specifies allowed API authentication integrations for this integration. Exactly one of
noneorintegrationsmust be set inside the block. - Allowed
Authentication ExternalSecrets Access Integration Allowed Authentication Secrets Args - Specifies allowed authentication secrets for this integration. Exactly one of
none,all, orsecretsmust be set inside the block. - Allowed
Network []stringRules - Specifies the network rules for external locations reachable through this integration. At least one is required. Only egress network rules may be specified. For more information about this resource, see docs.
- Comment string
- Specifies a comment for the external access integration.
- Describe
Outputs []ExternalAccess Integration Describe Output Args - Outputs the result of
DESCRIBE EXTERNAL ACCESS INTEGRATIONfor this integration. - Enabled bool
- Specifies whether the integration is enabled.
- Fully
Qualified stringName - Fully qualified name of the resource. For more information, see object name resolution.
- Name string
- Specifies the identifier for the external access integration. Changing this value recreates the integration. Due to technical limitations (read more here), avoid using the following characters:
|,.,". - Show
Outputs []ExternalAccess Integration Show Output Args - Outputs the result of
SHOW EXTERNAL ACCESS INTEGRATIONSfor this integration.
- allowed_
api_ objectauthentication_ integrations - Specifies allowed API authentication integrations for this integration. Exactly one of
noneorintegrationsmust be set inside the block. - allowed_
authentication_ objectsecrets - Specifies allowed authentication secrets for this integration. Exactly one of
none,all, orsecretsmust be set inside the block. - allowed_
network_ list(string)rules - Specifies the network rules for external locations reachable through this integration. At least one is required. Only egress network rules may be specified. For more information about this resource, see docs.
- comment string
- Specifies a comment for the external access integration.
- describe_
outputs list(object) - Outputs the result of
DESCRIBE EXTERNAL ACCESS INTEGRATIONfor this integration. - enabled bool
- Specifies whether the integration is enabled.
- fully_
qualified_ stringname - Fully qualified name of the resource. For more information, see object name resolution.
- name string
- Specifies the identifier for the external access integration. Changing this value recreates the integration. Due to technical limitations (read more here), avoid using the following characters:
|,.,". - show_
outputs list(object) - Outputs the result of
SHOW EXTERNAL ACCESS INTEGRATIONSfor this integration.
- allowed
Api ExternalAuthentication Integrations Access Integration Allowed Api Authentication Integrations - Specifies allowed API authentication integrations for this integration. Exactly one of
noneorintegrationsmust be set inside the block. - allowed
Authentication ExternalSecrets Access Integration Allowed Authentication Secrets - Specifies allowed authentication secrets for this integration. Exactly one of
none,all, orsecretsmust be set inside the block. - allowed
Network List<String>Rules - Specifies the network rules for external locations reachable through this integration. At least one is required. Only egress network rules may be specified. For more information about this resource, see docs.
- comment String
- Specifies a comment for the external access integration.
- describe
Outputs List<ExternalAccess Integration Describe Output> - Outputs the result of
DESCRIBE EXTERNAL ACCESS INTEGRATIONfor this integration. - enabled Boolean
- Specifies whether the integration is enabled.
- fully
Qualified StringName - Fully qualified name of the resource. For more information, see object name resolution.
- name String
- Specifies the identifier for the external access integration. Changing this value recreates the integration. Due to technical limitations (read more here), avoid using the following characters:
|,.,". - show
Outputs List<ExternalAccess Integration Show Output> - Outputs the result of
SHOW EXTERNAL ACCESS INTEGRATIONSfor this integration.
- allowed
Api ExternalAuthentication Integrations Access Integration Allowed Api Authentication Integrations - Specifies allowed API authentication integrations for this integration. Exactly one of
noneorintegrationsmust be set inside the block. - allowed
Authentication ExternalSecrets Access Integration Allowed Authentication Secrets - Specifies allowed authentication secrets for this integration. Exactly one of
none,all, orsecretsmust be set inside the block. - allowed
Network string[]Rules - Specifies the network rules for external locations reachable through this integration. At least one is required. Only egress network rules may be specified. For more information about this resource, see docs.
- comment string
- Specifies a comment for the external access integration.
- describe
Outputs ExternalAccess Integration Describe Output[] - Outputs the result of
DESCRIBE EXTERNAL ACCESS INTEGRATIONfor this integration. - enabled boolean
- Specifies whether the integration is enabled.
- fully
Qualified stringName - Fully qualified name of the resource. For more information, see object name resolution.
- name string
- Specifies the identifier for the external access integration. Changing this value recreates the integration. Due to technical limitations (read more here), avoid using the following characters:
|,.,". - show
Outputs ExternalAccess Integration Show Output[] - Outputs the result of
SHOW EXTERNAL ACCESS INTEGRATIONSfor this integration.
- allowed_
api_ Externalauthentication_ integrations Access Integration Allowed Api Authentication Integrations Args - Specifies allowed API authentication integrations for this integration. Exactly one of
noneorintegrationsmust be set inside the block. - allowed_
authentication_ Externalsecrets Access Integration Allowed Authentication Secrets Args - Specifies allowed authentication secrets for this integration. Exactly one of
none,all, orsecretsmust be set inside the block. - allowed_
network_ Sequence[str]rules - Specifies the network rules for external locations reachable through this integration. At least one is required. Only egress network rules may be specified. For more information about this resource, see docs.
- comment str
- Specifies a comment for the external access integration.
- describe_
outputs Sequence[ExternalAccess Integration Describe Output Args] - Outputs the result of
DESCRIBE EXTERNAL ACCESS INTEGRATIONfor this integration. - enabled bool
- Specifies whether the integration is enabled.
- fully_
qualified_ strname - Fully qualified name of the resource. For more information, see object name resolution.
- name str
- Specifies the identifier for the external access integration. Changing this value recreates the integration. Due to technical limitations (read more here), avoid using the following characters:
|,.,". - show_
outputs Sequence[ExternalAccess Integration Show Output Args] - Outputs the result of
SHOW EXTERNAL ACCESS INTEGRATIONSfor this integration.
- allowed
Api Property MapAuthentication Integrations - Specifies allowed API authentication integrations for this integration. Exactly one of
noneorintegrationsmust be set inside the block. - allowed
Authentication Property MapSecrets - Specifies allowed authentication secrets for this integration. Exactly one of
none,all, orsecretsmust be set inside the block. - allowed
Network List<String>Rules - Specifies the network rules for external locations reachable through this integration. At least one is required. Only egress network rules may be specified. For more information about this resource, see docs.
- comment String
- Specifies a comment for the external access integration.
- describe
Outputs List<Property Map> - Outputs the result of
DESCRIBE EXTERNAL ACCESS INTEGRATIONfor this integration. - enabled Boolean
- Specifies whether the integration is enabled.
- fully
Qualified StringName - Fully qualified name of the resource. For more information, see object name resolution.
- name String
- Specifies the identifier for the external access integration. Changing this value recreates the integration. Due to technical limitations (read more here), avoid using the following characters:
|,.,". - show
Outputs List<Property Map> - Outputs the result of
SHOW EXTERNAL ACCESS INTEGRATIONSfor this integration.
Supporting Types
ExternalAccessIntegrationAllowedApiAuthenticationIntegrations, ExternalAccessIntegrationAllowedApiAuthenticationIntegrationsArgs
- Integrations List<string>
- Specifies the API authentication integrations allowed for authenticating to external locations. Conflicts with
none. - None bool
- When true, no API authentication integrations are allowed. Conflicts with
integrations.
- Integrations []string
- Specifies the API authentication integrations allowed for authenticating to external locations. Conflicts with
none. - None bool
- When true, no API authentication integrations are allowed. Conflicts with
integrations.
- integrations list(string)
- Specifies the API authentication integrations allowed for authenticating to external locations. Conflicts with
none. - none bool
- When true, no API authentication integrations are allowed. Conflicts with
integrations.
- integrations List<String>
- Specifies the API authentication integrations allowed for authenticating to external locations. Conflicts with
none. - none Boolean
- When true, no API authentication integrations are allowed. Conflicts with
integrations.
- integrations string[]
- Specifies the API authentication integrations allowed for authenticating to external locations. Conflicts with
none. - none boolean
- When true, no API authentication integrations are allowed. Conflicts with
integrations.
- integrations Sequence[str]
- Specifies the API authentication integrations allowed for authenticating to external locations. Conflicts with
none. - none bool
- When true, no API authentication integrations are allowed. Conflicts with
integrations.
- integrations List<String>
- Specifies the API authentication integrations allowed for authenticating to external locations. Conflicts with
none. - none Boolean
- When true, no API authentication integrations are allowed. Conflicts with
integrations.
ExternalAccessIntegrationAllowedAuthenticationSecrets, ExternalAccessIntegrationAllowedAuthenticationSecretsArgs
- All bool
- When true, all secrets in the account are allowed for authentication. Conflicts with
noneandsecrets. - None bool
- When true, no secrets are allowed for authentication. Conflicts with
allandsecrets. - Secrets List<string>
- Specifies the fully qualified identifiers of secrets allowed for authentication. Conflicts with
noneandall.
- All bool
- When true, all secrets in the account are allowed for authentication. Conflicts with
noneandsecrets. - None bool
- When true, no secrets are allowed for authentication. Conflicts with
allandsecrets. - Secrets []string
- Specifies the fully qualified identifiers of secrets allowed for authentication. Conflicts with
noneandall.
- all bool
- When true, all secrets in the account are allowed for authentication. Conflicts with
noneandsecrets. - none bool
- When true, no secrets are allowed for authentication. Conflicts with
allandsecrets. - secrets list(string)
- Specifies the fully qualified identifiers of secrets allowed for authentication. Conflicts with
noneandall.
- all Boolean
- When true, all secrets in the account are allowed for authentication. Conflicts with
noneandsecrets. - none Boolean
- When true, no secrets are allowed for authentication. Conflicts with
allandsecrets. - secrets List<String>
- Specifies the fully qualified identifiers of secrets allowed for authentication. Conflicts with
noneandall.
- all boolean
- When true, all secrets in the account are allowed for authentication. Conflicts with
noneandsecrets. - none boolean
- When true, no secrets are allowed for authentication. Conflicts with
allandsecrets. - secrets string[]
- Specifies the fully qualified identifiers of secrets allowed for authentication. Conflicts with
noneandall.
- all bool
- When true, all secrets in the account are allowed for authentication. Conflicts with
noneandsecrets. - none bool
- When true, no secrets are allowed for authentication. Conflicts with
allandsecrets. - secrets Sequence[str]
- Specifies the fully qualified identifiers of secrets allowed for authentication. Conflicts with
noneandall.
- all Boolean
- When true, all secrets in the account are allowed for authentication. Conflicts with
noneandsecrets. - none Boolean
- When true, no secrets are allowed for authentication. Conflicts with
allandsecrets. - secrets List<String>
- Specifies the fully qualified identifiers of secrets allowed for authentication. Conflicts with
noneandall.
ExternalAccessIntegrationDescribeOutput, ExternalAccessIntegrationDescribeOutputArgs
- Allowed
Api List<string>Authentication Integrations - Allowed
Authentication List<string>Secrets - Allowed
Network List<string>Rules - Comment string
- Enabled bool
- Id string
- Allowed
Api []stringAuthentication Integrations - Allowed
Authentication []stringSecrets - Allowed
Network []stringRules - Comment string
- Enabled bool
- Id string
- allowed_
api_ list(string)authentication_ integrations - allowed_
authentication_ list(string)secrets - allowed_
network_ list(string)rules - comment string
- enabled bool
- id string
- allowed
Api List<String>Authentication Integrations - allowed
Authentication List<String>Secrets - allowed
Network List<String>Rules - comment String
- enabled Boolean
- id String
- allowed
Api string[]Authentication Integrations - allowed
Authentication string[]Secrets - allowed
Network string[]Rules - comment string
- enabled boolean
- id string
- allowed_
api_ Sequence[str]authentication_ integrations - allowed_
authentication_ Sequence[str]secrets - allowed_
network_ Sequence[str]rules - comment str
- enabled bool
- id str
- allowed
Api List<String>Authentication Integrations - allowed
Authentication List<String>Secrets - allowed
Network List<String>Rules - comment String
- enabled Boolean
- id String
ExternalAccessIntegrationShowOutput, ExternalAccessIntegrationShowOutputArgs
Import
$ pulumi import snowflake:index/externalAccessIntegration:ExternalAccessIntegration example '"<external_access_integration_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
snowflakeTerraform Provider.
published on Friday, Sep 11, 2026 by Pulumi