セッションに現在のロールを設定します。これはディレクトリ管理のロールとデータベース管理のロールとを区別しません。
プロシージャの定義ではSET ROLEを使用できません。
SET ROLE ALLを使用すると、SET ROLEを実行依頼するユーザーに対して、入れ子になったロールを含むすべてのロールを付与できます。
SET ROLE EXTERNALを使用するには、ユーザーがディレクトリ ユーザーで、ディレクトリ内の外部ロール オブジェクトにマップされている必要があります。詳細については、<Teradata Vantage™ - Advanced SQL Engineセキュリティ管理ガイド、B035-1100>を参照してください。
信頼済みセッションでSET ROLEを使用することはできません。 信頼済みセッションでのアクティブ ロールは、SET QUERY_BANDリクエストを使って定義する必要があります。 SET QUERY_BANDを参照してください。
ANSI準拠
SET ROLEは、Teradataの拡張機能であるNULL、EXTERNAL、およびALLオプションを除いて、ANSI SQL:2011に準拠しています。
必要な権限
文 | 結果 |
---|---|
SET ROLE NONE SET ROLE NULL |
セッションの現行ロールを使用不能にするには権限は必要ありません。 |
SET ROLE role_name | このロールがユーザーにすでに付与されている必要があります。 |
SET ROLE ALL | 権限は必要ありません。ユーザーにロールが付与されている必要もありません。 |
SET ROLE EXTERNAL | ディレクトリ内のユーザーに対して1つ以上のロールが割り当て済みになっている(マップされている)ことが必要です。 <セキュリティ管理ガイド>を参照してください。 |