ユーザーに対する DEFAULT_SECONDARY_ROLES オブジェクトプロパティのデフォルト値が(「ALL」)に変更(保留)

注意

この動作変更は2024_08バンドルにあります。

バンドルの現在のステータスについては、 バンドル履歴 をご参照ください。

注意

注意: この変更は、次回の動作変更リリースの SNOWFLAKE.ACCOUNT_USAGE.USERS ビューでのみ表示されます。

この動作変更は、もともと2024_07バンドルで導入されました。ユーザーにこの変更を評価する猶予期間を付与するため、この動作変更は2024_08でも無効のままです。

この BCR はすべてのユーザーに影響します。新規または既存のユーザーの DEFAULT_SECONDARY_ROLES オブジェクトプロパティが未設定、または NULL に設定されている場合は、そのユーザーの DEFAULT_SECONDARY_ROLES オブジェクトプロパティが ('ALL') に変更されます。

新規または既存のユーザーの DEFAULT_SECONDARY_ROLES オブジェクトプロパティが明示的に設定されている場合、 DEFAULT_SECONDARY_ROLES オブジェクトプロパティは変更されません。

ユーザーの DEFAULT_SECONDARY_ROLES オブジェクトプロパティを () に設定すると、ユーザーにはセカンダリロールがないことを指定します。アカウントにある DEFAULT_SECONDARY_ROLES オブジェクトプロパティの既存の動作を維持する場合は、以下の手順を使用して、 DEFAULT_SECONDARY_ROLES を明示的に空のリストに設定することができます。

CREATE OR REPLACE PROCEDURE update_default_secondary_roles()
RETURNS VARIANT NOT NULL
LANGUAGE JAVASCRIPT
EXECUTE AS CALLER
AS
$$
let updated_users = [];
let users = snowflake.execute({sqlText: "SHOW USERS"});
while (users.next()) {
  let username = users.getColumnValue("name");
  let dsr = users.getColumnValue("default_secondary_roles");
  if (dsr !== "") {
    continue;
  }
  snowflake.execute({
    sqlText: "alter user identifier(?) set default_secondary_roles=()",
    binds: ["\"" + username + "\""],
  });
  updated_users.push(username);
}
return updated_users;
$$;

CALL update_default_secondary_roles();
Copy

詳細については、 コミュニティの記事 をご参照ください。

変更前:

ユーザーでの DEFAULT_SECONDARY_ROLES オブジェクトプロパティのデフォルト値は NULL です。

変更後:

ユーザーでの DEFAULT_SECONDARY_ROLES オブジェクトプロパティのデフォルト値は(「ALL」)です。

参照: 1692