ALTER PASSWORD POLICY

既存のパスワードポリシーのプロパティを変更します。

パスワードポリシーのプロパティに加えられた変更は、パスワードポリシーを使用する次の SQL クエリが実行されるときに有効になります。

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

DDL コマンド

構文

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

ALTER PASSWORD POLICY [ IF EXISTS ] <name> SET [ PASSWORD_MIN_LENGTH = <integer> ]
                                               [ PASSWORD_MAX_LENGTH = <integer> ]
                                               [ PASSWORD_MIN_UPPER_CASE_CHARS = <integer> ]
                                               [ PASSWORD_MIN_LOWER_CASE_CHARS = <integer> ]
                                               [ PASSWORD_MIN_NUMERIC_CHARS = <integer> ]
                                               [ PASSWORD_MIN_SPECIAL_CHARS = <integer> ]
                                               [ PASSWORD_MIN_AGE_DAYS = <integer> ]
                                               [ PASSWORD_MAX_AGE_DAYS = <integer> ]
                                               [ PASSWORD_MAX_RETRIES = <integer> ]
                                               [ PASSWORD_LOCKOUT_TIME_MINS = <integer> ]
                                               [ PASSWORD_HISTORY = <integer> ]
                                               [ COMMENT = '<string_literal>' ]

ALTER PASSWORD POLICY [ IF EXISTS ] <name> SET TAG <tag_name> = '<tag_value>' [ , <tag_name> = '<tag_value>' ... ]

ALTER PASSWORD POLICY [ IF EXISTS ] <name> UNSET TAG <tag_name> [ , <tag_name> ... ]

ALTER PASSWORD POLICY [ IF EXISTS ] <name> UNSET [ PASSWORD_MIN_LENGTH ]
                                                 [ PASSWORD_MAX_LENGTH ]
                                                 [ PASSWORD_MIN_UPPER_CASE_CHARS ]
                                                 [ PASSWORD_MIN_LOWER_CASE_CHARS ]
                                                 [ PASSWORD_MIN_NUMERIC_CHARS ]
                                                 [ PASSWORD_MIN_SPECIAL_CHARS ]
                                                 [ PASSWORD_MIN_AGE_DAYS ]
                                                 [ PASSWORD_MAX_AGE_DAYS ]
                                                 [ PASSWORD_MAX_RETRIES ]
                                                 [ PASSWORD_LOCKOUT_TIME_MINS ]
                                                 [ PASSWORD_HISTORY ]
                                                 [ COMMENT ]
Copy

パラメーター

name

パスワードポリシーの識別子。アカウントに対して一意である必要があります。

識別子の値はアルファベットで始まる必要があり、識別子文字列全体が二重引用符で囲まれていない限り、スペースや特殊文字を含めることはできません(例: "My object")。二重引用符で囲まれた識別子も大文字と小文字が区別されます。

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

RENAME TO new_name

セッションポリシーの新しい識別子を指定します。アカウントに対して一意である必要があります。

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

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

注釈

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

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

SET ...

パスワードポリシーに設定する、空白、コンマ、または改行で区切られる1つ以上のパラメーターを指定します。

PASSWORD_MIN_LENGTH = integer

パスワードに含める必要がある最小文字数を指定します。

サポートされている範囲は8から256までです。

デフォルト:14

PASSWORD_MAX_LENGTH = integer

パスワードに含める必要がある最大文字数を指定します。この数は、 PASSWORD_MIN_LENGTHPASSWORD_MIN_UPPER_CASE_CHARS、および PASSWORD_MIN_LOWER_CASE_CHARS の合計以上にする必要があります。

サポートされている範囲は8から256までです。

デフォルト:256

PASSWORD_MIN_UPPER_CASE_CHARS = integer

パスワードに含める必要がある大文字の最小文字数を指定します。

サポートされている範囲は0から256までです。

デフォルト:1

PASSWORD_MIN_LOWER_CASE_CHARS = integer

パスワードに含める必要がある小文字の最小文字数を指定します。

サポートされている範囲は0から256までです。

デフォルト:1

PASSWORD_MIN_NUMERIC_CHARS = integer

パスワードに含める必要がある数字の最小文字数を指定します。

サポートされている範囲は0から256までです。

デフォルト:1

PASSWORD_MIN_SPECIAL_CHARS = integer

パスワードに含める必要がある特殊文字の最小文字数を指定します。

サポートされている範囲は0から256までです。

デフォルト:0

PASSWORD_MIN_AGE_DAYS = integer

最近変更したパスワードが再度変更できるようになるまでの日数を指定します。

サポートされている範囲は0から999までです。

デフォルト:0

PASSWORD_MAX_AGE_DAYS = integer

パスワードの変更が必要になるまでの最大日数を指定します。

サポートされている範囲は0から999までです。

ゼロの値(つまり、 0)は、パスワードを変更する必要がないことを示します。Snowflakeは、デフォルトのアカウントレベルのパスワードポリシーまたはユーザーレベルのポリシーにこの値を選択することを推奨しません。代わりに、社内のセキュリティガイドラインを満たす値を選択してください。

デフォルト:90。これは、90日ごとにパスワードを変更する必要があることを意味します。

重要

このパラメーターはステートフルです。詳細については、 アカウントとユーザーのカスタムパスワードポリシー の注意事項をご参照ください。

PASSWORD_MAX_RETRIES = integer

ロックアウトされるまでのパスワード入力の最大試行回数を指定します。

サポートされている範囲は1から10までです。

デフォルト:5

重要

このパラメーターはステートフルです。詳細については、 アカウントとユーザーのカスタムパスワードポリシー の注意事項をご参照ください。

PASSWORD_LOCKOUT_TIME_MINS = integer

指定されたパスワード再試行回数(つまり、 PASSWORD_MAX_RETRIES)に達した後、ユーザーアカウントがロックされる分数を指定します。

サポートされている範囲は1から999までです。

デフォルト:15

重要

このパラメーターはステートフルです。詳細については、 アカウントとユーザーのカスタムパスワードポリシー の注意事項をご参照ください。

PASSWORD_HISTORY = integer

Snowflakeが保存する最新のパスワードの数を指定します。保存されたこれらのパスワードは、ユーザーがパスワードの値を更新するときに繰り返して使用することはできません。

現在のパスワードの値は履歴にカウントされません。

履歴の値を増やすと、Snowflakeは以前の値を保存します。

値を下げると、Snowflakeは保存された値を設定された値まで保存します。たとえば、履歴の値が8で、履歴の値を3に変更した場合、Snowflakeは最新の3つパスワード値を保存し、履歴から5つの古いパスワード値を削除します。

デフォルト:5

最大:24

COMMENT = 'string_literal'

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

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

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

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

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

UNSET ...

パスワードポリシーの設定を解除する1つ以上のパラメーターを指定します。これにより、パラメーターはシステムデフォルトにリセットされます。

単一の ALTER ステートメントで複数のプロパティをリセットできます。各プロパティはコンマで区切る 必要があります。プロパティをリセットするときは、名前のみを指定します。プロパティに値を指定すると、エラーが返されます。

アクセス制御の要件

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

権限

オブジェクト

注意

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 権限が必要です。スキーマに対する 任意の権限を付与されたロールは、そのロールがスキーマを解決できることに注意してください。たとえば、スキーマに対するCREATE権限を付与されたロールは、そのスキーマにオブジェクトを作成できますが、そのスキーマに対するUSAGE*も*付与されている必要はありません。

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

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

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

使用上の注意

  • このコマンドを実行する前に、 DESCRIBE PASSWORD POLICY コマンドを実行してポリシーの属性値を確認します。

    既存のパスワードポリシーを更新するために、ポリシーの現在の定義を確認する必要がある場合は、 GET_DDL 関数を呼び出すか、 DESCRIBE PASSWORD POLICY コマンドを実行します。

  • パスワードポリシーをマネージドアクセススキーマに移動することは、パスワードポリシーの所有者(つまり、パスワードポリシーの OWNERSHIP 権限を持つロール)がターゲットスキーマも所有している場合を 除き、禁止されています。詳細については、 アクセス制御権限の概要 をご参照ください。

次の例では、現在のパスワードポリシーについて説明し、パスワードポリシーを更新して、許可されるパスワードの再試行回数を指定します。

DESC PASSWORD POLICY password_policy_prod_1;

ALTER PASSWORD POLICY password_policy_prod_1 SET PASSWORD_MAX_RETRIES = 3;
Copy