メインコンテンツまでスキップ

EXECUTE AS

EXECUTE AS

説明

ユーザの権限を取得した後、EXECUTE AS文を使用して、現在のセッションの実行コンテキストを切り替えることができます。

このコマンドはv2.4からサポートされています。

構文

EXECUTE AS user WITH NO REVERT

パラメータ

user:ユーザは既に存在している必要があります。

使用上の注意

  • EXECUTE AS文を呼び出す現在のログインユーザは、他のユーザを偽装する権限を持っている必要があります。詳細については、GRANTを参照してください。
  • EXECUTE AS文には、WITH NO REVERT句が含まれている必要があります。これにより、現在のセッションが終了するまで、現在のセッションの実行コンテキストを元のログインユーザに戻すことはできません。

現在のセッションの実行コンテキストをユーザ test2 に切り替えます。

EXECUTE AS test2 WITH NO REVERT;

切り替えが成功した後、select current_user() コマンドを実行して、現在のユーザを取得できます。

select current_user();
+-----------------------------+
| CURRENT_USER() |
+-----------------------------+
| 'default_cluster:test2'@'%' |
+-----------------------------+