Notification Integration
Configuration can be provided to Snowflake Object Lifecycle Engine for the following operation with Notification Integration:
- Manage Lifecycle of new and existing Notification Integrations
- Manage Grants of Notification Integrations
Supported Parameters
The engine supports the parameters listed below.
- AWS_SNS_ROLE_ARN: AWS IAM role ARN for notification integration to assume.
- REQUIRED Only if notification_provider set to
AWS_SNS
- Configuration key:
aws_sns_role_arn
- Data Type: String
- REQUIRED Only if notification_provider set to
- AWS_SNS_TOPIC_ARN: AWS SNS Topic ARN for notification integration to connect to.
- REQUIRED Only if notification_provider set to
AWS_SNS
- Configuration key:
aws_sns_topic_arn
- Data Type: String
- REQUIRED Only if notification_provider set to
- AWS_SQS_ARN: AWS SQS queue ARN for notification integration to connect to .
- REQUIRED Only if notification_provider set to
AWS_SQS
- Configuration key:
aws_sqs_arn
- Data Type: String
- REQUIRED Only if notification_provider set to
- AWS_SQS_ROLE_ARN: AWS IAM role ARN for notification integration to assume .
- REQUIRED Only if notification_provider set to
AWS_SQS
- Configuration key:
aws_sqs_role_arn
- Data Type: String
- REQUIRED Only if notification_provider set to
- AZURE_STORAGE_QUEUE_PRIMARY_URL: The queue ID for the Azure Queue Storage queue created for Event Grid notifications.
- REQUIRED Only if notification_provider set to
AZURE_STORAGE_QUEUE
- Configuration key:
azure_storage_queue_primary_uri
- Data Type: String
- REQUIRED Only if notification_provider set to
- AZURE_TENANT_ID: The ID of the Azure Active Directory tenant used for identity management.
- REQUIRED Only if notification_provider set to
AZURE_STORAGE_QUEUE
- Configuration key:
azure_tenant_id
- Data Type: String
- REQUIRED Only if notification_provider set to
- GCP_PUBSUB_SUBSCRIPTION_NAME: Pub/Sub topic subscription ID used to allow Snowflake access to event messages.
- REQUIRED Only if notification_provider set to
AZURE_STORAGE_QUEUE
- Configuration key:
gcp_pubsub_subscription_name
- Data Type: String
- REQUIRED Only if notification_provider set to
- DIRECTION: Direction of the cloud messaging with respect to Snowflake.
- REQUIRED Only if notification_provider set to
AWS_SQS
ORAWS_SNS
- Configuration key:
direction
- Data Type: String
- Possible Values:
OUTBOUND
INBOUND
- REQUIRED Only if notification_provider set to
- NOTIFICATION_PROVIDER: The third-party cloud message queuing service .
- REQUIRED
- Configuration key:
notification_provider
- Data Type: String
- Possible Values:
AZURE_STORAGE_QUEUE
AWS_SQS
AWS_SNS
GCP_PUBSUB
cautionCurrently
AWS_SQS
notification_provider is not supported in snowflake.
- ENABLED: Specifies whether to initiate operation of the integration or suspend it.
- Configuration key:
enabled
- Data Type: Booleantip
TRUE enables the integration.
FALSE disables the integration for maintenance. Any integration between Snowflake and a third-party service fails to work.
- Configuration key:
- COMMENT: A comment for the integration.
- Configuration key:
comment
- Data Type: String
- Configuration key:
- TYPE: A type of integration.
- Configuration key:
type
- Data Type: String
- Possible Values:
QUEUE
(Default)
- Configuration key:
- NAMESPACING: Specify whether Prefix or Suffix or both are to be added to Notification Integration Name.
- Configuration key:
namespacing
- Data Type: String
- Possible Values:
none
prefix
suffix
both
(Default)
- Configuration key:
- ENVIRONMENT: Specify the environment in which the Notification Integration is managed. Regex can be provided as well.
- Configuration key:
environment
- Data Type: String
- Configuration key:
- MANAGE_MODE: Configures what properties to manage for the Notification Integration.
- Configuration key:
manage_mode
- Data Type: String
- Possible Values:
none
grants
all
(Default)
- Configuration key:
- GRANTS: List of Privileges and Roles to which privileges are granted to on the current API Integration.
- Configuration key:
grants
- Data Type: Map
- Configuration key:
Basic syntax
notification_integrations:
<notification_integrations-name>:
<configuration-key>: <value>
grants:
<privilege>:
- <role-name>
- <role-name>
Supported Notification Integration Grants to Roles
Following is the list of Privileges Grant to Roles that can be specified in the database definition
- USAGE
- OWNERSHIP
Examples
- Notification Integration example with
notification_provider
asAZURE_STORAGE_QUEUE
notification_integrations:
NOTIFICATION_INTEGRATION_AZURE:
comment: "test notification"
enabled: true
type: "QUEUE"
notification_provider: "AZURE_STORAGE_QUEUE"
azure_storage_queue_primary_uri: "https://myqueue.queue.core.windows.net/mystoragequeue"
azure_tenant_id: "a123bcde-1234-5678-abc1-9abc12345678"
- Notification Integration example with
notification_provider
asAWS_SNS
notification_integrations:
NOTIFICATION_INTEGRATION_AWS_SNS:
comment: "test notification"
enabled: true
type: "QUEUE"
direction: "OUTBOUND"
notification_provider: "AWS_SNS"
aws_sns_topic_arn: "arn:aws:sns:us-west-2:432981146916:user-updates-topic"
aws_sns_role_arn: "arn:aws:iam::209163973960:role/S3Full_Access"
grants:
USAGE:
- SYSADMIN
- Notification Integration example with
notification_provider
asGCP_PUBSUB
notification_integrations:
NOTIFICATION_INTEGRATION_GCP_PUBSUB:
comment: "test notification"
notification_provider: "GCP_PUBSUB"
gcp_pubsub_subscription_name: "projects/project-1234/subscriptions/sub2"
grants:
USAGE:
- SYSADMIN