La valeur par défaut de la propriété d’objet DEFAULT_SECONDARY_ROLES sur les utilisateurs a été remplacée par (“ALL”) (En attente)

Attention

Ce changement de comportement est présent dans le bundle 2024_08.

Pour connaître le statut actuel du bundle, reportez-vous à Historique du bundle.

Attention

Attention : ce changement ne sera visible que dans la vue SNOWFLAKE.ACCOUNT_USAGE.USERS dans la prochaine version de changements de comportement.

Ce changement de comportement a été initialement introduit dans le bundle 2024_07. Afin de donner aux utilisateurs plus de temps pour évaluer le changement, ce changement de comportement reste désactivé dans le bundle 2024_08.

Ce BCR affecte tous les utilisateurs. Si un utilisateur nouveau ou existant a sa propriété d’objet DEFAULT_SECONDARY_ROLES non définie ou définie sur NULL, alors leur propriété d’objet DEFAULT_SECONDARY_ROLES est remplacée par ('ALL').

Si un utilisateur nouveau ou existant a sa propriété d’objet DEFAULT_SECONDARY_ROLES explicitement définie, alors leur propriété d’objet DEFAULT_SECONDARY_ROLES ne change pas.

La définition de la propriété d’objet DEFAULT_SECONDARY_ROLES d’un utilisateur sur () spécifie qu’un utilisateur n’a pas de rôles secondaires. Si vous souhaitez conserver le comportement existant de la propriété d’objet DEFAULT_SECONDARY_ROLES dans votre compte, vous pouvez utiliser la procédure suivante pour définir explicitement des DEFAULT_SECONDARY_ROLES vers une liste vide :

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

Pour plus d’informations, voir l’article de la communauté.

Avant la modification:

La valeur par défaut de la propriété d’objet DEFAULT_SECONDARY_ROLES sur les utilisateurs est NULL.

Après la modification:

La valeur par défaut de la propriété d’objet DEFAULT_SECONDARY_ROLES sur les utilisateurs est (“ALL”).

Réf : 1692