翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Snowflake プログラムによるアクセストークン
シークレット値フィールド
以下は、Secrets Manager シークレットに含める必要があるフィールドです。
{
"account": "Snowflake account identifier",
"user": "Snowflake username",
"privateKey": "PEM-encoded private key",
"passphrase": "private key passphrase (optional)",
"patTokenName": "PAT name",
"patTokenValue": "PAT secret value"
}
- アカウント
-
Snowflake アカウント識別子 (例:
myorg-myaccount)。これは Snowflake URL.snowflakecomputing.comの より前の部分です。 - ユーザー
-
PAT を所有する Snowflake ユーザー名。このユーザーには、キーペア認証が設定されている必要があります。
- privateKey
-
キーペア認証用の PEM エンコードされたプライベートキー。このキーはローテーションされません。これは ROTATE PAT コマンドの認証に使用されます (PAT 自体はローテーションできません)。
- パスフレーズ
-
(オプション) 暗号化されたプライベートキーのパスフレーズ。プライベートキーが暗号化されていない場合は空のままにします。
- patTokenName
-
ローテーションするプログラムによるアクセストークンの名前。Snowflake のトークン名と一致する必要があります。
- patTokenValue
-
プログラムによるアクセストークンのシークレット値。これはローテーションされるフィールドです。
シークレットメタデータフィールド
以下は、Snowflake プログラムによるアクセストークンのメタデータフィールドです。
{ "daysToExpiry": "15", "expireOldTokenAfterHours": "24" }
- daysToExpiry
-
(オプション) 作成時 (1~365) に設定された PAT の DAYS_TO_EXPIRY 値。デフォルト: 15。Snowflake 設定と一致する必要があります。ローテーションスケジュールがトークンの TTL よりも短いことを検証するために使用されます。
- expireOldTokenAfterHours
-
(オプション) 前のトークンがローテーション後に期限切れになるまでの時間 (0~720)。デフォルト: 24。古いトークンをすぐに期限切れにするには、 を 0 に設定します。
使用フロー
このローテーションでは、単一シークレットアーキテクチャを使用します。シークレットには、キーペア認証情報 (ローテーションコマンドの認証用) と PAT 値 (ローテーションされた認証情報) の両方が含まれます。
上記のフィールドと SnowflakePat としてのシークレットタイプを含むシークレット値を使用してCreateSecret 呼び出しを使用してシークレットを作成できます。ローテーション設定は、RotateSecret 呼び出しを使用して設定できます。デフォルト値を使用するには、ローテーションメタデータフィールドを空のままにすることができます。RotateSecret 呼び出しでロール ARN を指定する必要があります。これにより、シークレットをローテーションするために必要なアクセス許可がサービスに付与されます。アクセス許可ポリシーの例については、「セキュリティとアクセス許可」を参照してください。
ローテーション中、ドライバーはキーペア認証を介して Snowflake に接続し、 ALTER USER ... ROTATE PAT コマンドを実行します。これにより、新しいトークンがアトミックに生成され、設定された猶予期間で古いトークンが期限切れになります。次に、新しいトークンをパスワードとして接続して検証します。