ユーザー管理¶
ユーザー管理者は、 SQL またはウェブインターフェイスを介してSnowflakeユーザーを作成および管理できます。
SQL を使用すると、管理者はユーザーのログイン認証情報やデフォルトの変更など、ユーザーに関連するすべてのタスクを実行できます。
ウェブインターフェイスはすべてのユーザー関連タスクをサポートしていませんが、ユーザーを作成し、ユーザーのパスワードのリセットなどの最も一般的なアクティビティを実行するための便利なウィザードを提供します。
このトピックの内容:
ユーザーの作成と変更に必要な権限¶
アカウントのユーザーを管理するには、次のロールまたは権限が必要です。
- ユーザーの作成
USERADMIN システムロールは、 SQL(CREATE USER)を使用してユーザーを作成できます。
この目的でカスタムロールを使用する場合は、アカウントの CREATE USER 権限をこのロールに付与してください。
- ユーザーの変更
ユーザーに対する OWNERSHIP 権限を持つロール、またはそれ以上のロールのみが、 SQL (ALTER USER)を使用してほとんどのユーザープロパティを変更できます。さらに、ロールにはグローバル CREATE USER 権限が必要です。
パスワードポリシー¶
パスワードポリシーは、Snowflakeに対して認証するためのパスワードを作成およびリセットするときに満たす必要がある要件を指定します。
Snowflakeは、パスワードポリシーに2つのオプションを提供します。
初期ユーザープロビジョニングプロセスを容易にする組み込みパスワードポリシー。
ユースケースとユーザー管理者のニーズに応じて、Snowflakeアカウント、個々のユーザー、またはその両方のレベルで設定できるスキーマレベルのパスワードポリシーオブジェクト。
ベストプラクティスと各パスワードポリシーオプションの詳細については、次をご参照ください。
パスワードポリシーおよびパスワードのベストプラクティス¶
Snowflakeは、パスワードとパスワードポリシーに関する次のベストプラクティスを推奨しています。
- カスタムパスワードポリシーを作成して適用する
アカウントまたはユーザーにパスワードポリシーが設定されると、パスワードポリシーオブジェクトが適用されます。
ユーザーがSnowflakeへの初回または次回のログイン時にパスワードポリシーを満たすようにパスワードを変更することをリクエストするには、 ALTER USER コマンドを使用してユーザーの
MUST_CHANGE_PASSWORD
プロパティをTRUE
に設定します。詳細については、 ステップ6: パスワードの変更をリクエストする (このトピック内)をご参照ください。
- 強力なパスワードをリクエストする
アカウントレベルのパスワードポリシーを定義して、強力なパスワードをリクエストします。
強力なパスワードは、少なくとも8文字で構成され、大文字と小文字、特殊文字(例:
!
や*
)、および数字の組み合わせが含まれます。- MFA
セキュリティを強化するには 多要素認証(MFA) を使用します。
- SCIM の使用
ユーザーが SCIM API リクエストでSnowflakeにアクセスするためのパスワードを設定できます。SCIM 管理者とユーザー管理者は、IDプロバイダーで、 または Snowflakeのパスワードポリシーを使用して、Snowflakeにアクセスするためのユーザーパスワードを管理することを選択する必要があります。
現在、 SCIM でSnowflakeにプロビジョニングされたユーザーには、 デフォルトのSnowflakeパスワードポリシー を満たすパスワードが必要です。このパスワードポリシー機能を使用することを選択した場合は、この要件を回避できます。
デフォルトのパスワードポリシー要件を回避するには、 パスワードポリシーの使用 セクション(このトピック内)の手順に従います。
- パスワードのモニター
パスワードをモニターするには、
Snowflake Account Usage USERS ビューにクエリを実行して、特定のユーザーに対して
HAS_PASSWORD
列の値がTRUE
を返すかどうかを判断します。Snowflake Account Usage LOGIN_HISTORY ビューにクエリを実行し、
FIRST_AUTHENTICATION_FACTOR
列を評価します。ユーザーがSnowflakeにアクセスするためにパスワードを必要としない場合は、 ALTER USER コマンドを実行してpassword
プロパティを NULL に設定します。`
Snowflakeが提供するパスワードポリシー¶
パスワードには、空白文字や感嘆符(!
)、パーセント記号(%
)、アスタリスク(*
)などの特殊文字(英数字以外の文字)を含め、256文字までの大文字と小文字が区別される文字列を使用できます。
ユーザーを最初に作成する ときに、以下で説明する最小要件を満たさないユーザーに対して弱いパスワードを設定することができます(例: 'test12345'
)。この機能により、管理者は作成プロセス中に、ユーザーの汎用パスワードを使用するオプションを利用できるようになります。このパスウェイを選択した場合は、 MUST_CHANGE_PASSWORD
プロパティを TRUE
に設定して、ユーザーが最初のログインを含むSnowflakeへの次回のログイン時に、パスワードを変更するように要求することを 強く お勧めします。
さらに、Snowflakeでは、初期パスワードなしでのユーザー作成を許可し、新しいユーザーがシステムにログインできないようにするビジネスプロセスをサポートします。これが発生した場合、ユーザーの PASSWORD
プロパティ値は NULL
です。ただし、一般的な規則としてSnowflakeでは、ユーザーが初期パスワードと合わせて作成されることを想定しています。
既存のパスワードをリセット (例: 'test12345'
を 'q@-*DaC2yjZoq3Re4JYX'
に変更)するコンテキストの場合、Snowflakeは、 ALTER USER コマンドと ウェブインターフェイス を使用する際に、最小要件として次のパスワードポリシーを適用します。
少なくとも8文字の長さが必要です。
少なくとも数字1つを含める必要があります。
少なくとも1つの大文字と1つの小文字を含める必要があります。
Snowflakeはできるだけ強力なパスワードを作成するために、次のガイドラインを 強く 推奨しています。
Snowflake用に一意のパスワードを作成します(つまり、他のシステムまたはアカウントからのパスワードを再利用しない)。
8文字以上を使用してください。
複数のランダムな大文字、小文字混合の文字、数字、および空白を含む特殊文字を含めます。
推測しやすい一般的なパスワード、名前、数字、または日付は使用しません。
最後に、ユーザーログインの最高レベルのセキュリティを構成するには、ユーザーを MFA に登録する ことをお勧めします。
アカウントおよびユーザーのカスタムパスワードポリシー¶
カスタムパスワードポリシーは、Snowflakeへの認証のためにパスワードを作成およびリセットするときに満たす必要がある要件を指定する、スキーマレベルのオブジェクトです。これには、パスワードを正常に入力するための試行回数や、パスワードを再試行できるまでの分数が含まれます。(つまり、「ロックアウト」時間)。
パスワードのパスワードポリシー要件には、ユーザーとクライアントがSnowflakeへの認証セキュリティ要件を満たすための、大文字または小文字、特殊文字、数字、およびパスワードの長さが含まれます。強力なパスワードをリクエストするパスワードポリシーは、セキュリティのガイドラインと規制を満たすために役立ちます。
Snowflakeは、Snowflakeアカウントおよび個別ユーザーのパスワードポリシーの設定をサポートしています。Snowflakeアカウントまたはユーザーに対して一度に設定できるパスワードポリシーは1つだけです。Snowflakeアカウントにパスワードポリシーが存在し、同じSnowflakeアカウントのユーザーに別のパスワードポリシーが設定されている場合は、ユーザーレベルのパスワードポリシーがアカウントレベルのパスワードポリシーよりも優先されます。
パスワードポリシーは、Snowflakeアカウントに設定された新しいパスワードに適用されます。既存のパスワードを持つユーザーがパスワードポリシーの要件を満たしていることを確認するには、 ステップ6: パスワードの変更をリクエストする (このトピック内)に示すように、Snowflakeへの次回のログイン時にパスワードを変更するようユーザーにリクエストします。
注釈
各パスワードポリシーパラメーターには、 MUST_CHANGE_PASSWORD
プロパティを TRUE
に設定する ALTER USER ステートメントが必要です。これにより、Snowflakeへの次回ログイン時にパスワードポリシーパラメーター値に準拠するようにユーザーがパスワードを更新する必要があります。
ただし、次のパラメーターは例外です。
PASSWORD_MAX_AGE_DAYS = integer
PASSWORD_MAX_AGE_DAYS = integer
PASSWORD_LOCKOUT_TIME_MINS = integer
これらのパラメーターはステートフルです。ステートフルパラメーターとは、コマンドの実行が終了するとパラメーター値が有効になることを意味します。 CREATE PASSWORD POLICY または ALTER PASSWORD POLICY ステートメントに1つ以上のステートフルパラメーターしか含まれていない場合は、ALTER USER ... SET MUST_CHANGE_PASSWORD コマンドを実行する必要はありません。
ALTER PASSWORD POLICY コマンドでステートフルパラメーター値を変更しても、現在のセッションに影響は ありません。たとえば、 PASSWORD_MAX_AGE_DAYS
パラメーターの値を、ユーザーの現在のパスワードの有効期限が切れる原因となる数値に変更すると、Snowflakeへの次回ログイン時に、ユーザーはパスワードを変更することになります。Snowflakeは、ユーザーが現在のセッションでパスワードを変更することを強制しません。
考慮事項¶
パスワードポリシーに対する権限の 将来の付与 はサポートされていません。
回避策として、カスタムロールに APPLYPASSWORD POLICY 権限を付与して、そのロールがユーザーまたはSnowflakeアカウントにパスワードポリシーを適用できるようにします。
パスワードポリシーは、 SnowSQL またはサポートされている ドライバーかコネクタ を使用して SQL により、 または Worksheets で Classic Console か Snowsight を使用して 管理 できます。
-
Classic Console、 SnowSQL、およびサポートされているコネクタとドライバー:
ALTER USER コマンドを実行するか、 Classic Console を使用してパスワードをリセットまたは変更する場合、Snowflakeはパスワードポリシーを評価して、新しく作成されたパスワードがパスワードポリシーの要件と一致することを確認します。
パスワードポリシーの使用状況の追跡:
Account Usage PASSWORD_POLICIES ビューをクエリして、Snowflakeアカウントの各パスワードポリシーの行を返します。
Information Schemaテーブル関数 POLICY_REFERENCES を使用して、指定されたパスワードポリシーに割り当てられた各ユーザーの行と、Snowflakeアカウントに割り当てられたパスワードポリシーの行を返します。
現在、パスワードポリシーでは次の構文のみがサポートされています。
POLICY_REFERENCES( POLICY_NAME => '<password_policy_name>' )
ここで、
password_policy_name
はパスワードポリシーの完全修飾名です。たとえば、次のクエリを実行して、
my_db
という名前のデータベースとmy_schema
という名前のスキーマに格納されている、password_policy_prod_1
という名前のパスワードポリシーが割り当てられている各ユーザーの行を返します。SELECT * FROM TABLE( my_db.information_schema.policy_references( POLICY_NAME => 'my_db.my_schema.password_policy_prod_1' ) );
パスワードポリシーの使用¶
次のステップは、Snowflakeでパスワードポリシーを定義および設定するための代表的なガイドです。
これらのステップは、 policy_admin
という名前のカスタムロールがパスワードポリシーを所有し(つまり、パスワードポリシーに対する OWNERSHIP 権限を持っている)、アカウントまたはユーザーにパスワードポリシーを設定する責任がある(つまり、 ステップ2 に示すように APPLY PASSWORD POLICY グローバル権限を持っている)ことを前提としています。
注釈
アカウントにポリシーを設定するには、 policy_admin
カスタムロールに、パスワードポリシーを含むデータベースとスキーマに対する USAGE 権限も必要です。
詳細については、 アクセス制御権限 をご参照ください。
ステップ1: カスタムロールを作成する¶
パスワードポリシーの作成と管理を許可するカスタムロールを作成します。このトピック全体を通して、カスタムロールの例には policy_admin
という名前が付けられていますが、ロールには適切な名前を付けることができます。
カスタムロールがすでに存在する場合は、次のステップに進みます。
それ以外の場合は、 policy_admin
カスタムロールを作成します。
USE ROLE USERADMIN; CREATE ROLE policy_admin;
ステップ2: カスタムロールに権限を付与する¶
policy_admin
カスタムロールに次の権限がまだない場合は、以下に示すようにこれらの権限を付与します。
パスワードポリシーを含むデータベースとスキーマの USAGE。
パスワードポリシーを格納するスキーマの CREATE PASSWORD POLICY。
アカウントの APPLY PASSWORD POLICY。
USE ROLE SECURITYADMIN;
GRANT USAGE ON DATABASE security TO ROLE policy_admin;
GRANT USAGE ON SCHEMA security.policies TO ROLE policy_admin;
GRANT CREATE PASSWORD POLICY ON SCHEMA security.policies TO ROLE policy_admin;
GRANT APPLY PASSWORD POLICY ON ACCOUNT TO ROLE policy_admin;
ユーザーにパスワードポリシーを設定する場合は、ユーザーに APPLY PASSWORD POLICY 権限を付与します。たとえば、ユーザー名が JSMITH
の場合、次のコマンドを実行します。
GRANT APPLY PASSWORD POLICY ON USER jsmith TO ROLE policy_admin;
詳細については、 DDL コマンド、操作、および権限の概要 をご参照ください。
ステップ3: ユーザーにカスタムロールを付与する¶
パスワードポリシーの管理を担当するユーザーに policy_admin
カスタムロールを付与します。
USE ROLE SECURITYADMIN;
GRANT ROLE policy_admin TO USER jsmith;
詳細については、 アクセス制御の構成 をご参照ください
ステップ4: パスワードポリシーを作成する¶
policy_admin
カスタムロールを使用して、 password_policy_prod_1
という名前のパスワードポリシーを作成します。詳細については、 CREATE PASSWORD POLICY をご参照ください。
USE ROLE policy_admin; USE SCHEMA security.policies; CREATE PASSWORD POLICY PASSWORD_POLICY_PROD_1 PASSWORD_MIN_LENGTH = 12 PASSWORD_MAX_LENGTH = 24 PASSWORD_MIN_UPPER_CASE_CHARS = 2 PASSWORD_MIN_LOWER_CASE_CHARS = 2 PASSWORD_MIN_NUMERIC_CHARS = 2 PASSWORD_MIN_SPECIAL_CHARS = 2 PASSWORD_MAX_AGE_DAYS = 999 PASSWORD_MAX_RETRIES = 3 PASSWORD_LOCKOUT_TIME_MINS = 30 COMMENT = 'production account password policy';注釈
プロパティ
PASSWORD_MAX_AGE_DAYS
は最大値999に設定されています。自社内のガイドラインに沿った値を選択します。詳細については、 CREATE PASSWORD POLICY をご参照ください。
ステップ5: アカウントまたは個別ユーザーにパスワードポリシーを設定する¶
ALTER ACCOUNT コマンドを使用して、アカウントにポリシーを設定します。
ALTER ACCOUNT SET PASSWORD POLICY security.policies.password_policy_prod_1;
1人以上のユーザーに対して追加のパスワードポリシーを作成する場合は、 ALTER USER コマンドを使用して、ユーザーレベルのパスワードポリシーをユーザーに設定します。
ALTER USER jsmith SET PASSWORD POLICY security.policies.password_policy_user;
重要
アカウントまたはユーザーにすでに設定されているパスワードポリシーを置き換えるには、最初にパスワードポリシーの設定を解除してから、アカウントまたはユーザーに新しいパスワードポリシーを設定します。例:
ALTER ACCOUNT UNSET PASSWORD POLICY; ALTER ACCOUNT SET PASSWORD POLICY security.policies.password_policy_prod_2;
ステップ6: パスワードの変更をリクエストする¶
ALTER USER ステートメントを使用して個別ユーザーの MUST_CHANGE_PASSWORD
プロパティを TRUE
に設定し、Snowflakeへの次回のログイン時にパスワードポリシーを満たすようにユーザーにパスワードの変更をリクエストします。
ALTER USER JSMITH SET MUST_CHANGE_PASSWORD = true;
パスワードポリシーの管理¶
Snowflakeは、パスワードポリシーを管理するために、次の権限と DDL のセットを提供します。
Snowflakeは、パスワードポリシーオブジェクトを管理するために次の DDL コマンドを提供します。
スキーマ内の任意のオブジェクトを操作するには、親データベースとスキーマに対する USAGE 権限も必要であることに注意してください。
権限 |
使用法 |
---|---|
CREATE PASSWORD POLICY |
新しいパスワードポリシーの作成を有効にします。 |
APPLY PASSWORD POLICY |
アカウントまたはユーザーレベルでパスワードポリシーを適用できるようにします。 |
OWNERSHIP |
パスワードポリシーに対する包括的な制御を付与します。パスワードポリシーのほとんどのプロパティを変更するために必要です。 |
DDL コマンド、操作、および権限の概要¶
次のテーブルは、パスワードポリシー DDL 操作と必要な権限の関係をまとめたものです。
スキーマ内の任意のオブジェクトを操作するには、親データベースとスキーマに対する USAGE 権限も必要であることに注意してください。
操作 |
必要な権限 |
---|---|
パスワードポリシーを作成する |
パスワードポリシーを格納するためのスキーマに対する CREATE PASSWORD POLICY 権限を持つロール。 |
パスワードポリシーを変更する |
パスワードポリシーに対する OWNERSHIP 権限を持つロール。 |
パスワードポリシーをドロップする |
パスワードポリシーに対する OWNERSHIP 権限を持つロール。 |
パスワードポリシーを説明する |
パスワードポリシーの OWNERSHIP 権限 または . アカウントの APPLY PASSWORD POLICY 権限を持つロール。 |
パスワードポリシーを表示する |
パスワードポリシーの OWNERSHIP 権限 または . アカウントの APPLY PASSWORD POLICY 権限を持つロール。 |
パスワードポリシーを設定および設定解除する |
アカウントまたはユーザーに対する APPLY PASSWORD POLICY 権限を持つロール。 |
ユーザーのロール¶
Snowflakeはロールを使用して、ユーザーがアクセスできるオブジェクト(仮想ウェアハウス、データベース、テーブルなど)を制御します。
Snowflakeは、一連の事前定義されたロールと、カスタムロールの階層を定義するためのフレームワークを提供します。
すべてのSnowflakeユーザーには、事前に定義された PUBLIC ロールが自動的に割り当てられ、Snowflakeへのログインと基本的なオブジェクトアクセスが可能になります。
PUBLIC のロールに加えて、各ユーザーに追加のロールを割り当てることができ、これらのロールの1つを 既定のロール として指定できます。ユーザーの既定のロールにより、ユーザーが開始したSnowflakeセッションで使用されるロールが決まります。ただし、これはデフォルトにすぎません。ユーザーは、セッション内のロールをいつでも変更できます。
ロールは、ユーザー作成時またはその後に割り当てることができます。
注意
ユーザーに割り当てる追加のロールを決定し、既定のロールを指定するときは、事前定義された ACCOUNTADMIN のロール(アカウントレベルの管理タスクを実行するために必要)について以下を考慮します。
Snowflakeでは、 ACCOUNTADMINの割り当てを厳密に制御するようにお勧めしますが、少なくとも2人のユーザーに割り当てることをお勧めします。
ACCOUNTADMIN は 決して ユーザーの既定のロールとして指定されるべきではありません。代わりに、下位レベルの管理ロールまたはカスタムロールをデフォルトとして指定します。
ACCOUNTADMIN のロールに関する詳細とベストプラクティスについては、 アクセス制御の考慮事項 をご参照ください。ロールの一般的な情報については、 アクセス制御の概要 をご参照ください。
ユーザーの作成¶
ウェブインターフェイスまたは SQL を使用してユーザーを作成できます。
注釈
ウェブインターフェイスでは、ユーザーを作成するときにパスワードを指定する必要があります。 CREATE USER コマンドはサポートしていません。
Snowflakeでのパスワードに関する詳細については、 パスワードポリシー (このトピック内)をご参照ください。
ウェブインターフェイスの使用¶
Create ボタンをクリックします。
User Name フィールドに、ユーザーの一意の識別子を入力します。
注釈
ユーザー名は、Snowflakeのユーザーの一意の識別子です。ユーザーのログイン名(つまり、Snowflakeにログインするときにユーザーが入力する名前)では ありません 。Snowflakeでは、必要に応じて、ユーザーが異なるユーザー名とログイン名を持つことができます。次の画面でユーザーのログイン名を指定します。
Password および Confirm Password フィールドに、ユーザーのログインパスワードを入力します。
Force Password Change チェックボックスを選択したままにして、ユーザーに次回のログイン時にパスワードの変更を強制します。それ以外の場合は、チェックボックスをオフにします。
Next ボタンをクリックします。 Advanced 画面が開きます。
オプションで、ユーザーの Login Name、 Display Name、および個人情報を入力します。
注釈
ユーザーはSnowflakeにログインするためにログイン名が必要です。ログイン名を明示的に指定しない場合、Snowflakeはログイン名としてユーザー名を使用します。
Next ボタンをクリックします。 Preferences 画面が開きます。
オプションで、ユーザーのデフォルトを入力します。
仮想ウェアハウス
名前空間の形式:
db_name
またはdb_name.schema_name
ロール
Finish ボタンをクリックします。Snowflakeは成功メッセージを表示します。
SQLの使用¶
CREATE USER コマンドを使用してユーザーを作成します。
重要
ユーザーを作成するときに、既定のロールをユーザーに割り当てる場合は、このロールをユーザーに明示的に付与する必要があります。例:
CREATE USER janesmith PASSWORD = 'abc123' DEFAULT_ROLE = myrole MUST_CHANGE_PASSWORD = TRUE; GRANT ROLE myrole TO USER janesmith;
GRANT ROLE コマンドを使用すると、単一のユーザーに複数のロールを割り当てることができます。現在、ウェブインターフェイスは同機能をサポートしていません。
ユーザーのパスワードのリセット¶
管理者は、ウェブインターフェイスまたは SQLを使用してユーザーのパスワードを変更できます。
注釈
ユーザーは、ウェブインターフェイスからのみ自分のパスワードを変更できます。詳細については、 パスワードの変更/(セッション)ロールの切り替え/ログアウト をご参照ください。
ウェブインターフェイスの使用¶
SQLの使用¶
ALTER USER コマンドを使用して、ユーザーのパスワードを入力します。例:
ALTER USER janesmith SET PASSWORD = 'H8MZRqa8gEe/kvHzvJ+Giq94DuCYoQXmfbb$Xnt' MUST_CHANGE_PASSWORD = TRUE;
または、 ALTER USER ... RESET PASSWORD 構文を使用して、 URL を生成し、ユーザーと共有します。URL は、ユーザーが新しいパスワードを入力できるウェブページを開きます。例:
ALTER USER janesmith RESET PASSWORD;注釈
生成された URL は1回の使用に対してのみ有効であり、4時間後に有効期限が切れます。
ALTER USER ... RESET PASSWORD ステートメントを実行しても、現在のパスワードは無効になりません。ユーザーは、新しいパスワードが設定されるまで、古いパスワードを引き続き使用できます。
管理者のパスワードのリセット¶
アカウント管理者(つまり、ACCOUNTADMIN ロールを持つユーザー)は、 ユーザーのパスワードのリセット で説明されている手順を使用して、自分のパスワードをリセットできます。
アカウント管理者がアカウントからロックアウトされた場合は、 ACCOUNTADMIN ロールを持つ別のユーザーが、ロックアウトされた管理者のパスワードをリセットできます。管理者がロックアウトされ、パスワードを変更できる管理者が他にいない場合は、 Snowflakeサポート に連絡してパスワードをリセットします。
ユーザーのパスワード変更機能の無効化¶
ユーザーは、右上(ログイン名の横)のドロップダウンメニューの » Change Password をクリックして、ウェブインターフェイスでSnowflakeのパスワードを変更します。 Select a New Password ダイアログが開きます。ダイアログは現在のパスワードと新しいパスワードを受け入れます。
オプションで、アカウント内のユーザーが自分のパスワードを変更する機能を無効にすることができます。アカウント管理者は、 Account » Users のウェブインターフェイスを使用して、または SQL を介し ALTER USER コマンドを使用して、引き続きユーザーパスワードを変更できます。
この変更をリクエストするには、 Snowflakeサポート にご連絡ください。
ユーザーの無効化/有効化¶
ユーザーを無効にすると、ユーザーはSnowflakeにログインできなくなります。ウェブインターフェイスまたは SQLを使用して、ユーザーを無効にできます。
ウェブインターフェイスの使用¶
ユーザー行をクリックして選択し、 Disable User ボタンをクリックします。確認ダイアログが開きます。
Yes をクリックして、ユーザーを無効にします。
ユーザーを有効にするには、同じ手順に従いますが、 Enable User ボタンをクリックします。
SQLの使用¶
ALTER USER コマンドを使用して、ユーザーを無効または有効にします。例:
ユーザーを無効にします。
ALTER USER janesmith SET DISABLED = TRUE;
ユーザーを有効にします。
ALTER USER janesmith SET DISABLED = FALSE;
ユーザーのロック解除¶
ユーザーログインが5回連続して失敗した場合、ユーザーは一定期間(現在は15分)アカウントからロックアウトされます。一定の時間が経過すると、システムは自動的にロックを解除し、ユーザーは再度ログインを試みることができます。
時間が経過する前にユーザーのロックを解除するには、 ALTER USER コマンドを使用してタイマーをリセットできます。
次の例では、タイマーを0にリセットし、ユーザー janesmith
をすぐにロック解除します。
ALTER USER janesmith SET MINS_TO_UNLOCK= 0;
ちなみに
単一のロールですべてのSnowflakeユーザーに対する OWNERSHIP 権限がある場合は、複数のユーザーにロールを付与することをお勧めします。これにより、ロールのメンバーがロックアウトされた場合、別のメンバーがそのユーザーのロックを解除できます。
ユーザーのセッションパラメーターの変更¶
ユーザーのセッションパラメーターを表示するには、次の SQL 構文を使用します。
SHOW PARAMETERS [ LIKE '<pattern>' ] FOR USER <name>
ユーザーのセッションパラメーターを変更するには、次の構文を使用します。
ALTER USER <name> SET <session_param> = <value>
たとえば、ユーザーがタイムアウトせずに無期限にSnowflakeに接続したままにできるようにします。
ALTER USER janesmith SET CLIENT_SESSION_KEEP_ALIVE = TRUE;
ユーザーのセッションパラメーターをデフォルト値にリセットするには、次の構文を使用します。
ALTER USER <name> UNSET <session_param>
他のユーザープロパティの変更¶
ALTER USER コマンドを使用して、他のすべてのユーザープロパティを変更できます。例:
ユーザー
janesmith
の姓をJones
に変更します。ALTER USER janesmith SET LAST_NAME = 'Jones';
ユーザー
janesmith
のデフォルトのウェアハウス、名前空間、プライマリロール、およびセカンダリロールを設定または変更します。ALTER USER janesmith SET DEFAULT_WAREHOUSE = mywarehouse DEFAULT_NAMESPACE = mydatabase.myschema DEFAULT_ROLE = myrole DEFAULT_SECONDARY_ROLES = ('ALL');
ユーザーの表示¶
SQL を使用してユーザーに関する情報を表示できます。
DESCRIBE USER または SHOW USERS コマンドを使用して、1人以上のユーザーに関する情報を表示します。
例:
DESC USER janeksmith;