17.10 - CREATE AUTHORIZATIONおよびREPLACE AUTHORIZATIONの構文要素 - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQLデータ定義言語 構文規則および例

Product
Advanced SQL Engine
Teradata Database
Release Number
17.10
Release Date
2021年7月
Content Type
プログラミング リファレンス
Publication ID
B035-1144-171K-JPN
Language
日本語 (日本)
database_name
user_name
定義または置換される許可が含まれる、現在またはデフォルト以外のデータベースまたはユーザーの名前[オプション]。
authorization_name
許可の名前。外部ルーチン定義または関数マッピングで許可を指定できます。
許可オブジェクトの名前は、オブジェクトの命名ルールに準拠している必要があります。データベース オブジェクト命名の詳細については、<Teradata Vantage™ - SQLの基本、B035-1141>を参照してください。
次のようなルールが、許可名に適用されます。
  • 許可は、その許可が作成されたデータベースまたはユーザーに属し、他のデータベースまたはユーザーでは無効です。 SCRIPTテーブル演算子で許可オブジェクトを使用する詳細については、<Teradata Vantage™ - SQL演算子およびユーザー定義関数、B035-1210>を参照してください。
  • 許可オブジェクト名はこれを含むデータベースまたはユーザー内で固有でなければなりません。
  • 許可オブジェクト名は数字で始めることはできません。
  • 許可オブジェクト名はSQLキーワードであってはなりません。
DEFINER
DEFINERを指定して、許可オブジェクトが存在するデータベースの複数のユーザーと許可オブジェクトを共有します。任意のデータベースで許可を作成できます。
DEFAULT
以下の文のEXTERNAL SECURITY DEFINER句で許可名が指定されないすべての外部ルーチンに関し、その外部ルーチンとこの許可とを関連付ける、DEFINERキーワードの任意指定のキーワード修飾子を指定します。
デフォルトのDEFINERオブジェクトは、1つのデータベースにつき1つしか割り当てることができません。それ以外のすべてのDEFINERオブジェクトについては、特定のDEFINER名が必要です。
INVOKER
ユーザーによる排他的アクセスを許可するには、INVOKERを指定します。現在のユーザーのデータベースに許可を作成する必要があります。
TRUSTED
必須のキーワード。
user_name
この許可の割り当てられるデータベース ユーザーの名前である文字列リテラルを指定する句。
Amazon S3、Azure BLOBストレージ、Google Cloud Storageなどの外部オブジェクト ストア内のパブリック バケット(またはパブリック コンテナ)には、アクセスに信頼証明は必要ありません。これらに対する許可を作成するには、一重引用符のペア'' で区切られた空の文字列を使用します。
password
user_nameに割り当てられるオペレーティング システム プラットフォームのパスワードの名前である文字列リテラルを指定する句。
AWS、AZURE、およびGCPの場合、passwordは最大で4096バイトを使用できます。
パスワードは、セキュア サーバー プロセスの作成時にユーザー許可に使用されます。この文を使用するあらゆるセッションを、暗号化されたトランスポート プロトコルを使用するように設定することが最善です。<Teradata Vantage™ - Advanced SQL Engineセキュリティ管理ガイド、B035-1100>を参照してください。
Amazon S3、Azure BLOBストレージ、Google Cloud Storageなどの外部オブジェクト ストア内のパブリック バケット(またはパブリック コンテナ)には、アクセスに信頼証明は必要ありません。これらに対する許可を作成するには、一重引用符のペア'' で区切られた空の文字列を使用します。
パスワードを平文で入力するのは決して望ましいことではありませんが、これが問題になるのはBTEQなどのインターフェースを使ってパスワードを入力する場合のみです。パスワードの入力時にパスワードをアスタリスク文字で表示するGUI、WWW(World Wide Web)のインターフェースなど、情報を安全な方法で要求するアプリケーションがパスワードの入力を求める場合は問題になりません。この方法は、セキュリティが重視されるすべてのサイトで推奨されます。

次のテーブルに、USERとPASSWORDでサポートされている信頼証明を示します。

システム/スキーマ USER PASSWORD
AWS アクセス キーID アクセス キー シークレット
Azure/共有キー ストレージ アカウント名 ストレージ アカウント キー
Azure共有アクセス署名(SAS) ストレージ アカウント名 アカウントSASトークン
Google Cloud (S3相互運用モード) アクセス キーID アクセス キー シークレット
Google Cloud (ネイティブ) クライアントの電子メール 秘密鍵
オンプレミス オブジェクト ストア アクセス キーID アクセス キー シークレット
パブリック アクセス オブジェクト ストア <空の文字列>

空の文字列を左右の区別がない一重引用符で囲む: USER ''

<空の文字列>

空の文字列を左右の区別がない一重引用符で囲む: PASSWORD ''

Amazon Identity and Access Management (IAM)は、アクセス キーとパスワードを使用してS3バケットを保護するための代わりの方法です。