FirebirdSQL logo

CREATE USER

affectation

Création d’un compte utilisateur Firebird.

Disponible en

DSQL

Syntaxe
CREATE USER username
  PASSWORD 'password'
  [<user_option> [<user_option> ...]]
  [TAGS ( <tag> [, <tag>  ...] )]

<user_option> ::=
    FIRSTNAME 'firstname'
  | MIDDLENAME 'middlename'
  | LASTNAME 'lastname'
  | {ACTIVE | INACTIVE}
  | USING PLUGIN pluginname
  | GRANT ADMIN ROLE

<tag> ::=
  tagname = 'string_value'
Table 1. Paramètres de l’opérateur CREATE USER
Paramètre Description

username

Nom de l’utilisateur. Longueur maximale de 63 caractères.

password

Mot de passe de l’utilisateur, sensible à la casse.

firstname

Informations auxiliaires : nom de l’utilisateur, longueur maximale de 32 caractères.

middlename

Information auxiliaire : "second prénom" (deuxième prénom, "nom du père") de l’utilisateur. 32 caractères maximum.

lastname

Informations secondaires : nom de l’utilisateur, longueur maximale de 32 caractères.

pluginname

Le nom du plug-in de gestion des utilisateurs dans lequel vous voulez créer un nouvel utilisateur.

tagname

Nom de l’attribut personnalisé. Longueur maximale de 63 caractères. Le nom de l’attribut doit respecter les règles de dénomination des identifiants SQL.

string_value

Valeur d’attribut personnalisée. Longueur maximale de 255 caractères.

L’instruction CREATE USER crée un compte utilisateur Firebird. L’utilisateur ne doit pas exister dans la base de données de sécurité Firebird actuelle ou un message d’erreur approprié sera émis.

Important

Depuis Firebird 3.0, les noms d’utilisateurs sont soumis à la règle générale de nommage des identifiants d’objets de métadonnées. Ainsi, un utilisateur nommé "Alex" et un utilisateur nommé "ALEX" seront des utilisateurs différents.

CREATE USER ALEX PASSWORD 'bz23ds';

-- cet utilisateur est le même que le premier
CREATE USER Alex PASSWORD 'bz23ds';

-- cet utilisateur est le même que le premier
CREATE USER "ALEX" PASSWORD 'bz23ds';

-- et ceci est un utilisateur différent
CREATE USER "Alex" PASSWORD 'bz23ds';

La clause PASSWORD spécifie le mot de passe de l’utilisateur.La longueur maximale du mot de passe dépend du plugin de gestion des utilisateurs concerné (paramètre [paramètre] "UserManager").Pour le plugin SRP, la longueur effective du mot de passe est limitée à 20 octets*. La longueur maximale du mot de passe du plugin Legacy_UserManager est de 8 octets.

Pourquoi la longueur effective du mot de passe est-elle limitée à 20 caractères ?

Note

La longueur d’un mot de passe n’est pas limitée à 20 octets et il peut être utilisé. Les hachages de différents mots de passe, qui sont plus longs que 20 octets, sont également différents. La limite d’efficacité vient du fait que la longueur de hachage de SHA1 est limitée à 20 octets ou 160 bits. Tôt ou tard, un mot de passe plus court avec le même hachage sera trouvé en utilisant une attaque par force brute, c’est pourquoi on dit souvent que la longueur efficace du mot de passe pour l’algorithme SHA1 est de 20 octets.

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

Si l’attribut INACTIVE est spécifié lors de la création d’un compte, l’utilisateur sera créé dans un état inactif, c’est-à-dire qu’il ne sera pas possible de se connecter avec son compte. Si l’attribut ACTIVE est spécifié, l’utilisateur sera créé dans l’état actif. Par défaut, l’utilisateur est créé actif. Cette fonctionnalité n’est disponible que lorsque Srp est utilisé comme gestionnaire d’utilisateurs.

Si l’option GRANT ADMIN ROLE est spécifiée, un nouveau compte utilisateur est créé avec les droits du rôle RDB$ADMIN dans la base de données de sécurité actuelle. Cela permet à l’utilisateur nouvellement créé de gérer les comptes utilisateurs, mais ne lui donne pas de droits spéciaux dans les bases de données normales.

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
Important

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.

Vous pouvez également spécifier un nombre illimité d’attributs d’utilisateur en utilisant la suggestion optionnelle TAGS. Cette fonctionnalité n’est disponible que lorsque Srp est utilisé comme gestionnaire d’utilisateurs.

Qui peut créer un utilisateur

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

  • Les utilisateurs connectés avec le rôle ou ayant reçu ses privilèges (le rôle est attribué par défaut), qui se voit attribuer le privilège système USER_MANAGEMENT.