ALTER PROJECTION POLICY

既存の 投影ポリシー ルールを新しいルールまたは新しいコメントで置き換え、投影ポリシーの名前を変更できるようにします。

ポリシールールに加えられた変更は、投影ポリシーを使用する SQL クエリが次回実行されるときに有効になります。

こちらもご参照ください。

投影ポリシー DDL 参照

構文

ALTER PROJECTION POLICY [ IF EXISTS ] <name> RENAME TO <new_name>

ALTER PROJECTION POLICY [ IF EXISTS ] <name> SET BODY -> <expression>

ALTER PROJECTION POLICY <name> SET TAG <tag_name> = '<tag_value>' [ , <tag_name> = '<tag_value>' ... ]

ALTER PROJECTION POLICY <name> UNSET TAG <tag_name> [ , <tag_name> ... ]

ALTER PROJECTION POLICY [ IF EXISTS ] <name> SET COMMENT = '<string_literal>'

ALTER PROJECTION POLICY [ IF EXISTS ] <name> UNSET COMMENT
Copy

パラメーター

name

変更する投影ポリシーの識別子を指定します。

識別子にスペースまたは特殊文字が含まれる場合は、文字列全体を二重引用符で囲む必要があります。二重引用符で囲まれた識別子も大文字と小文字が区別されます。

詳細については、 識別子の要件 をご参照ください。

RENAME TO new_name

投影ポリシーの新しい識別子を指定します。スキーマに対して一意である必要があります。識別子が別の投影ポリシーにすでに配置されている場合、新しい識別子は使用できません。

詳細については、 識別子の要件 をご参照ください。

オプションでオブジェクトの名前を変更して、オブジェクトを別のデータベースやスキーマに移動できます。これを実行するには、新しいデータベース名やスキーマ名をそれぞれ db_name.schema_name.object_name または schema_name.object_name の形式で含む、修飾された new_name 値を指定します。

注釈

  • 宛先データベースやスキーマはすでに存在している必要があります。また、同じ名前のオブジェクトが宛先データベースにすでに存在することはできません。存在する場合、ステートメントはエラーを返します。

  • オブジェクトをマネージドアクセススキーマに移動することは、オブジェクトの所有者(つまり、オブジェクトに対して OWNERSHIP 権限を持つロール)がターゲットスキーマも所有している場合を 除き 禁止されています。

SET ...

投影ポリシーに設定する1つ以上のプロパティを指定します。

BODY -> expression

SQL 列を投影するかどうかを決定する式。

この式は内部 PROJECTION_CONSTRAINT 関数を呼び出して、列を投影するかどうかを決定します。

  • PROJECTION_CONSTRAINT(ALLOW => TRUE) --- 投影ポリシーがアタッチされている列を投影できるようにします。

  • PROJECTION_CONSTRAINT(ALLOW => FALSE) --- 投影ポリシーがアタッチされている列を投影できないようにします。

TAG tag_name = 'tag_value' [ , tag_name = 'tag_value' , ... ]

タグ の名前とタグ文字列の値を指定します。

タグ値は常に文字列であり、タグ値の最大文字数は256です。

ステートメントでのタグの指定に関する情報については、 オブジェクトおよび列のタグクォータ をご参照ください。

COMMENT = 'string_literal'

投影ポリシーのコメントを追加するか、既存のコメントを上書きします。

デフォルト: 値なし

UNSET ...

投影ポリシーに対して、デフォルトにリセットして設定を解除する1つまたは複数のプロパティおよび/またはパラメーターを指定します。

  • TAG tag_name [ , tag_name ... ]

  • COMMENT

プロパティ/パラメーターをリセットするときは、名前のみを指定します。プロパティの値を指定すると、エラーが返されます。

アクセス制御の要件

この SQL コマンドの実行に使用される ロール には、少なくとも次の 権限 が必要です。

権限

オブジェクト

メモ

OWNERSHIP

投影ポリシー

OWNERSHIP is a special privilege on an object that is automatically granted to the role that created the object, but can also be transferred using the GRANT OWNERSHIP command to a different role by the owning role (or any role with the MANAGE GRANTS privilege).

スキーマ内の任意のオブジェクトを操作するには、親データベースとスキーマに対する USAGE 権限も必要であることに注意してください。

指定された権限のセットを使用してカスタムロールを作成する手順については、 カスタムロールの作成 をご参照ください。

セキュリティ保護可能なオブジェクト に対して SQL アクションを実行するためのロールと権限付与に関する一般的な情報については、 アクセス制御の概要 をご参照ください。

投影ポリシー DDL と権限の詳細については、 権限とコマンド をご参照ください。

使用上の注意

  • 既存の投影ポリシーを更新し、ポリシーの現在の定義を確認する必要がある場合は、 DESCRIBE PROJECTION POLICY コマンドまたは GET_DDL 関数を実行します。

  • 投影ポリシーを マネージドアクセススキーマ に(ALTER PROJECTION POLICY ... RENAME TO 構文を使用して)移動することは、投影ポリシーの所有者(つまり、投影ポリシーの OWNERSHIP 権限を持つロール)がターゲットスキーマも所有している場合を 除き、禁止されています。

  • メタデータについて:

    注意

    Snowflakeサービスを使用する場合、お客様は、個人データ(ユーザーオブジェクト向け以外)、機密データ、輸出管理データ、またはその他の規制されたデータがメタデータとして入力されていないことを確認する必要があります。詳細については、 Snowflakeのメタデータフィールド をご参照ください。

投影ポリシーの名前を変更します。

ALTER PROJECTION POLICY mypolicy RENAME TO proj_policy_acctnumber;
Copy