ALTER NOTIFICATION INTEGRATION(ウェブフック)¶
ウェブフック の既存の通知統合のプロパティを変更します。
- こちらもご参照ください。
CREATE NOTIFICATION INTEGRATION(ウェブフック)、 DESCRIBE INTEGRATION、 DROP INTEGRATION、 SHOW INTEGRATIONS
構文¶
ALTER [ NOTIFICATION ] INTEGRATION [ IF EXISTS ] <name> SET
[ ENABLED = { TRUE | FALSE } ]
[ WEBHOOK_URL = '<url>' ]
[ WEBHOOK_SECRET = <secret_name> ]
[ WEBHOOK_BODY_TEMPLATE = '<template_for_http_request_body>' ]
[ WEBHOOK_HEADERS = ( '<header_1>'='<value_1>' [ , '<header_N>'='<value_N>', ... ] ) ]
[ COMMENT = '<string_literal>' ]
ALTER [ NOTIFICATION ] INTEGRATION [ IF EXISTS ] <name> UNSET {
ENABLED |
WEBHOOK_SECRET |
WEBHOOK_BODY_TEMPLATE |
WEBHOOK_HEADERS |
COMMENT
}
パラメーター¶
name
ドロップする統合の識別子を指定します。
識別子にスペースまたは特殊文字が含まれる場合は、文字列全体を二重引用符で囲む必要があります。二重引用符で囲まれた識別子も大文字と小文字が区別されます。
詳細については、 識別子の要件 をご参照ください。
SET ...
サービスに1つ以上のプロパティを設定します。
ENABLED = { TRUE | FALSE }
統合の操作を開始するか、中断するかを指定します。
TRUE
は、統合を有効にします。FALSE
は、メンテナンスのための統合を無効にします。Snowflakeとサードパーティサービス間の統合はいずれも機能しません。
WEBHOOK_URL = 'url'
ウェブフックの URL を指定します。URL は
https://
プロトコルを使用する必要があります。値は URLs としてのみ指定できます。
Slackウェブフック用の URLs 。これらの URLs は
https://hooks.slack.com/services/
で始まる必要があります。Teams ウェブフック用の URLs 。これらの URLs には、以下の一般的な形式を使用しなければなりません:
https://<hostname>.webhook.office.com/webhookb2/<path_components>/IncomingWebhook/<path_components>
PagerDuty ウェブフック用の URLs 。この URL は
https://events.pagerduty.com/v2/enqueue
にする必要があります。
URL にシークレットが含まれ、そのシークレット用のシークレットオブジェクトを 作成した場合 、 URL のそのシークレットを SNOWFLAKE_WEBHOOK_SECRET に置き換えます。例えば、 がSlackのウェブフック URL にシークレット用のシークレットオブジェクトを作成した場合、 WEBHOOK_URL を以下に設定します。
WEBHOOK_URL='https://hooks.slack.com/services/SNOWFLAKE_WEBHOOK_SECRET'
WEBHOOK_SECRET = secret_name
この統合で使用する シークレットを指定します 。
WEBHOOK_URL や WEBHOOK_BODY_TEMPLATE、 WEBHOOK_HEADERS で SNOWFLAKE_WEBHOOK_SECRET プレースホルダーを使用している場合、通知を送信する際にプレースホルダーはこのシークレットに置き換えられます。
シークレットオブジェクトを含むデータベースとスキーマが、通知を送信するときにアクティブでない場合、 スキーマ名でシークレット名を修飾するか、データベース名とスキーマ名を修飾します 。例:
WEBHOOK_SECRET = my_secrets_db.my_secrets_schema.my_slack_webhook_secret
このパラメータを指定するには、シークレット(およびそれを含むデータベースとスキーマ)の USAGE 権限が必要です。
デフォルト: 値なし
WEBHOOK_BODY_TEMPLATE = 'template_for_http_request_body'
通知のために送信する HTTP リクエストのボディのテンプレートを指定します。
ウェブフックが HTTP リクエストのボディに特定の形式(例えば、特定の JSON 形式)を要求する場合、その形式を指定する文字列を設定します。この文字列の中では
メッセージにシークレットを含める必要があり、そのシークレット用のシークレットオブジェクトを 作成した場合 、そのシークレットをメッセージに表示する SNOWFLAKE_WEBHOOK_SECRET プレースホルダーを使います。
通知メッセージを含める必要がある場合は、 SNOWFLAKE_WEBHOOK_MESSAGE プレースホルダーを使用してください。
例:
WEBHOOK_BODY_TEMPLATE='{ "routing_key": "SNOWFLAKE_WEBHOOK_SECRET", "event_action": "trigger", "payload": { "summary": "SNOWFLAKE_WEBHOOK_MESSAGE", "source": "Snowflake monitoring", "severity": "INFO", } }'
WEBHOOK_BODY_TEMPLATE を設定した場合は、
Content-Type
ヘッダーにメッセージのタイプを含めるために、 WEBHOOK_HEADERS も設定する必要があります。例えば、 WEBHOOK_BODY_TEMPLATE を JSON 形式のテンプレートに設定した場合、 WEBHOOK_HEADERS をヘッダーContent-Type: application/json
を含むように設定します。WEBHOOK_HEADERS=('Content-Type'='application/json')
デフォルト: 値なし
WEBHOOK_HEADERS = ( 'header'='value' [ , 'header'='value', ... ] )
ウェブフックの HTTP リクエストに含める HTTP ヘッダーと値のリストを指定します。
HTTP ヘッダーにシークレットを含める必要があり(例えば、
Authorization
ヘッダー)、そのシークレットのためのシークレットオブジェクトを 作成した場合 、ヘッダー値の SNOWFLAKE_WEBHOOK_SECRET プレースホルダーを使用します。例:WEBHOOK_HEADERS=('Authorization'='Basic SNOWFLAKE_WEBHOOK_SECRET')
デフォルト: 値なし
COMMENT = 'string_literal'
統合のコメントを指定する文字列(リテラル)。
デフォルト: 値なし
UNSET ...
統合の1つ以上のプロパティの設定を解除し、プロパティをデフォルト値にリセットします。
ENABLED
WEBHOOK_SECRET
WEBHOOK_BODY_TEMPLATE
WEBHOOK_HEADERS
COMMENT
1つの ALTER ステートメントで複数のプロパティまたはパラメーターの設定を解除するには、各プロパティまたはパラメーターをコンマで区切ります。
プロパティまたはパラメーターの設定を解除する場合は、プロパティ名またはパラメーター名のみを指定します(上記の構文で値を指定するように指示されている場合を除く)。値を指定するとエラーが返されます。
アクセス制御の要件¶
この SQL コマンドの実行に使用される ロール には、少なくとも次の 権限 が必要です。
権限 |
オブジェクト |
メモ |
---|---|---|
OWNERSHIP |
統合 |
OWNERSHIP is a special privilege on an object that is automatically granted to the role that created the object, but can also be transferred using the GRANT OWNERSHIP command to a different role by the owning role (or any role with the MANAGE GRANTS privilege). |
USAGE |
シークレット |
WEBHOOK_SECRET プロパティをシークレット・オブジェクトに設定する場合、そのシークレット、およびそのシークレットを含むデータベースとスキーマに対して USAGE 権限を持っている必要があります。 |
指定された権限のセットを使用してカスタムロールを作成する手順については、 カスタムロールの作成 をご参照ください。
セキュリティ保護可能なオブジェクト に対して SQL アクションを実行するためのロールと権限付与に関する一般的な情報については、 アクセス制御の概要 をご参照ください。
使用上の注意¶
メタデータについて:
注意
Snowflakeサービスを使用する場合、お客様は、個人データ(ユーザーオブジェクト向け以外)、機密データ、輸出管理データ、またはその他の規制されたデータがメタデータとして入力されていないことを確認する必要があります。詳細については、 Snowflakeのメタデータフィールド をご参照ください。