FirebirdSQL logo

ALTER USER

affectation:

Changer le compte utilisateur de Firebird.

Disponible en:

DSQL.

Syntaxe:
ALTER {USER username | CURRENT USER}
  [SET] [<user_option> [<user_option> ...]]
  [USING PLUGIN pluginname]
  [{GRANT | REVOKE} ADMIN ROLE]
  [TAGS ( <tag> [, <tag>  ...] )]

<user_option> ::=
    PASSWORD 'password'
  | FIRSTNAME 'firstname'
  | MIDDLENAME 'middlename'
  | LASTNAME 'lastname'
  | {ACTIVE | INACTIVE}

<tag> ::=
    tagname = 'string_value'
  | DROP tagname

Pour une description des paramètres de l’opérateur, voir [fblangref-security-user-create].

L’instruction ALTER USER modifie les détails du compte utilisateur. L’instruction ALTER USER doit contenir au moins une des phrases optionnelles.

La phrase optionnelle PASSWORD définit un nouveau mot de passe pour l’utilisateur.

Les phrases facultatives FIRSTNAME, MIDDLENAME et LASTNAME vous permettent de modifier des attributs supplémentaires de l’utilisateur tels que le nom d’utilisateur (nom de personne), le second prénom et le nom de famille respectivement.

L’attribut INACTIVE vous permet de rendre un compte inactif. Ceci est utile lorsque vous souhaitez désactiver temporairement un compte sans le supprimer. L’attribut ACTIVE vous permet de remettre un compte inactif à l’état actif. Cette fonctionnalité n’est disponible que lorsque vous utilisez Srp comme gestionnaire d’utilisateurs.

La phrase optionnelle TAGS vous permet de spécifier, modifier ou supprimer les attributs de l’utilisateur. S’il n’y a pas d’attribut avec le nom donné dans la liste des attributs, il sera ajouté, sinon sa valeur sera modifiée. Les attributs non spécifiés dans la liste ne seront pas modifiés. Pour supprimer un attribut de l’utilisateur, le mot clé DROP doit être spécifié avant son nom dans la liste des attributs. Cette fonctionnalité n’est disponible que si vous utilisez Srp comme gestionnaire d’utilisateurs.

L’offre GRANT ADMIN ROLE accorde à l’utilisateur spécifié les privilèges du rôle RDB$ADMIN dans la base de données de sécurité actuelle. Cela permet à l’utilisateur spécifié de gérer les comptes utilisateurs, mais ne lui donne pas d’autorité spéciale dans les bases de données normales.

La phrase REVOKE ADMIN ROLE retire à l’utilisateur spécifié les privilèges du rôle RDB$ADMIN dans la base de données de sécurité actuelle, ce qui l’empêche de gérer les comptes utilisateurs.

La clause optionnelle USING PLUGIN vous permet de spécifier explicitement quel plugin de gestion des utilisateurs sera utilisé. La valeur par défaut est le plugin listé en premier dans le paramètre UserManager du fichier de configuration firebird.conf. Seules les valeurs listées dans le paramètre UserManager sont valides.

Important
Il est important de:

Notez que les utilisateurs avec le même nom créés avec différents plugins de gestion des utilisateurs sont des utilisateurs différents, donc un utilisateur créé avec le même plugin de gestion des utilisateurs ne peut être supprimé ou modifié qu’en spécifiant le même plugin.

Si vous voulez changer de compte, vous pouvez utiliser le mot clé CURRENT USER au lieu de spécifier le nom de l’utilisateur actuel.

Qui peut modifier un compte utilisateur ?

Les autres utilisateurs peuvent modifier le compte de quelqu’un d’autre :

  • SYSDBA et les autres utilisateurs qui sont administrateurs dans la base de données de sécurité (avec le rôle de RDB$ADMIN) ;

  • Les utilisateurs connectés avec le rôle (rôle attribué par défaut) ou ayant reçu des privilèges à ce rôle, auquel est attribué le privilège système USER_MANAGEMENT.

Tous les utilisateurs peuvent modifier leurs propres comptes, mais cela ne s’applique pas aux options {GRANT | REVOKE} ADMIN ROLE et à l’attribut ACTIVE/INACTIVE qui nécessitent des privilèges administratifs pour être modifiés.

Exemples ALTER USER

Example 1. Changer l’utilisateur et lui accorder des privilèges de gestion des utilisateurs.
ALTER USER bobby PASSWORD '67-UiT_G8'
GRANT ADMIN ROLE;
Example 2. Changez le mot de passe d’un utilisateur créé en utilisant le plugin de gestion des utilisateurs Legacy_UserManager.
ALTER USER godzilla PASSWORD 'robot12'
USING PLUGIN Legacy_UserManager;
Example 3. Modifier les attributs supplémentaires de votre compte.
ALTER CURRENT USER
FIRSTNAME 'No_Jack'
LASTNAME 'Kennedy';
Example 4. Désactiver un compte utilisateur.
ALTER USER dan INACTIVE;
Example 5. Retirer à l’utilisateur le privilège de gestion de l’utilisateur.
ALTER USER dumbbell
REVOKE ADMIN ROLE;
Example 6. Modifiez les attributs de l’utilisateur de votre compte.
ALTER CURRENT USER
TAGS (BIRTHYEAR = '1971', DROP CITY);

L’attribut BIRTHDAY sera mis à une nouvelle valeur et l’attribut CITY sera supprimé.

CREATE OR ALTER USER

affectation

Créer ou modifier un compte utilisateur Firebird.

Disponible en

DSQL

Syntaxe
ALTER USER _username_
  [SET] [<user_option> [<user_option> ...]]
  [USING PLUGIN _pluginname_]
  [{GRANT | REVOKE} ADMIN ROLE]
  [TAGS ( <tag> [, <tag>  ...] )]

<user_option> ::=
    PASSWORD '_password_'
  | FIRSTNAME '_firstname_'
  | MIDDLENAME '_middlename_'
  | LASTNAME '_lastname_'
  | {ACTIVE | INACTIVE}

<tag> ::=
    _tagname_ = '_string_value_'
  | DROP _tagname_

Voir [fblangref-security-user-create] pour une description des paramètres de l’opérateur.

L’instruction CREATE OR ALTER USER crée un nouveau compte ou modifie un compte. Si l’utilisateur n’existe pas, il sera créé à l’aide de l’instruction CREATE USER. S’il existe déjà, il sera modifié et les privilèges existants seront conservés.