GRANT および REVOKE コマンド: 失敗した付与の出力の変更¶
これらのコマンドの動作は以下のとおりです。
- 以前:
これらのコマンドのいずれかを実行し、コマンドで指定した1つ以上の権限またはロールで操作が機能しなかった場合、Snowflakeは応答を「成功したステータスメッセージ」(つまり、テーブル)として 書式設定 し、関連する情報を示します。例:
GRANT ALL ON ACCOUNT TO ROLE r1;
+--------------------------------------------------------------------------------------------------------------------------+ | status | |--------------------------------------------------------------------------------------------------------------------------| | Grant partially executed: privileges [MANAGE LISTING AUTO FULFILLMENT, MANAGE ORGANIZATION SUPPORT CASES] not granted. | +--------------------------------------------------------------------------------------------------------------------------+
この出力は、これらのコマンドのいずれかを実行したときに表示されるメッセージの代表例です。
- 現在:
これらのコマンドのいずれかを実行し、コマンドで指定した1つ以上の権限またはロールで操作が機能しない場合、Snowflakeは応答をエラーコードが含まれるエラーメッセージとして 書式設定 し、関連する情報を示します。例:
003011 (42501): Grant partially executed: privileges [MANAGE LISTING AUTO FULFILLMENT, MANAGE ORGANIZATION SUPPORT CASES] not granted.
実際のメッセージテキストは変更されません。
Tip
これらのコマンドの結果に依存するワークフローがある場合は、エラーコード情報を解析するようにスクリプトを更新します(この例では
003011 (42501)
)。この変更によって影響を受けるエラーコードのリストは以下のとおりです。
003011: Grant partially executed: [ one or more privileges ] not granted. 003012: Revoke partially executed: [ one or more privileges ] not revoked. 003102: Grant not executed: Insufficient privileges. 003103: Revoke not executed: Insufficient privileges. 003104: Grant not executed: Operation not supported on a SHARE object. 003105: Revoke not executed: Operation not supported on a SHARE object.
この例の値
(42501)
は、ユーザーがコマンドを実行するために選択した SQL クライアントを反映したものです(この例では Python用Snowflakeコネクタ)。この値は、コマンドの実行方法によっては表示されないことがあります(例: Snowsight はこの値を返さないか、エラーコード値が003011
)。[ one or more privileges ]
値は、エラーの原因となったステートメントに関する情報を返すプレースホルダーです。この例では、 REFERENCE_USAGE 権限が付与されていないことを示しています。
参照: 515