4D v14.3

CHANGER UTILISATEUR COURANT

Accueil

 
4D v14.3
CHANGER UTILISATEUR COURANT

CHANGER UTILISATEUR COURANT 


 

CHANGER UTILISATEUR COURANT {( utilisateur ; motDePasse )} 
Paramètre Type   Description
utilisateur  Chaîne, Entier long in Nom ou Numéro de référence unique de l’utilisateur
motDePasse  Chaîne in Mot de passe (non crypté)

CHANGER UTILISATEUR COURANT permet de changer l'identité de l'utilisateur courant dans la base, sans devoir la quitter. Le changement d'identité peut être effectué par l'utilisateur lui-même via la boîte de dialogue de connexion à la base (lorsque la commande est appelée sans paramètres) ou directement par la commande. Lorsqu'il change d'identité, l'utilisateur abandonne ses anciens privilèges au profit de ceux de l'utilisateur choisi.

Le nouveau compte est utilisé pour tous les process “utilisateurs” courants de la base. A noter qu’un process créé par un autre process hérite du compte utilisateur de celui-ci.

4D Server : Sur le poste serveur, les process démarrés via les méthodes bases Sur démarrage serveur, Sur arrêt serveur, etc., sont exécutés sous le compte du Super_Utilisateur.

Si la commande CHANGER UTILISATEUR COURANT est exécutée sans paramètres, la boîte de dialogue de connexion à la base s'affiche. L'utilisateur doit alors saisir ou sélectionner un nom et un mot de passe valides pour entrer dans la base. Le contenu de la boîte de dialogue de connexion dépend des options définies dans la page Sécurité des Propriétés de la base.

Note : Cette commande requiert que le système de contrôle d'accès soit activé, c'est-à-dire qu'un mot de passe soit assigné au Super_Utilisateur. Dans le cas contraire, CHANGER UTILISATEUR COURANT est sans effet et n'affichera pas la fenêtre standard de changement d'utilisateur.

Vous pouvez également passer les deux paramètres facultatifs utilisateur et motDePasse afin de spécifier par programmation le nouveau compte à utiliser.
Passez dans le paramètre utilisateur le nom ou le numéro de référence unique (réfUtilisateur) du compte à utiliser. Les noms et les numéros des utilisateurs peuvent être obtenus via la commande LIRE LISTE UTILISATEURS.

Numéro de référence de l’utilisateurDescription de l’utilisateur
1Super_Utilisateur
2Administrateur
3 à 15000Utilisateur créé par le Super_Utilisateur
(l'utilisateur n°3 est le 1er utilisateur créé par le Super_Utilisateur, l'utilisateur n°4 est le deuxième, et ainsi de suite).
-11 à -15010Utilisateur créé par l'Administrateur
(l'utilisateur n°-11 est le 1er utilisateur créé par l'Administrateur, l'utilisateur n°-12 est le deuxième, et ainsi de suite).

Si le compte d’utilisateur désigné n’existe pas ou a été supprimé, l’erreur -9979 est générée. Vous pouvez intercepter cette erreur avec une méthode de gestion d’erreurs installée par la commande APPELER SUR ERREUR. Sinon, vous pouvez appeler la fonction Utilisateur supprime pour tester le compte utilisateur avant d’appeler cette commande.

Passez dans le paramètre motDePasse le mot de passe non crypté du compte de l’utilisateur. Si le mot de passe ne correspond pas à l’utilisateur, la commande ne fait rien et l’erreur -9978 est générée.

La commande est temporisée afin d’éviter des attaques par “force brute” (essais automatiques de multiples combinaisons de noms d’utilisateurs/mots de passe). Ainsi, au bout du quatrième appel à la commande, elle n’est exécutée qu’après 10 secondes d’attente. Cette temporisation est globale au poste de travail.

La commande CHANGER UTILISATEUR COURANT permet de mettre en place des boîtes de dialogue personnalisées pour la saisie du nom et du mot de passe (avec règles de saisie et d'expiration) tout en bénéficiant des avantages du système intégré de contrôle des accès de 4D.
Le principe est le suivant :

1. L’entrée dans la base s’effectue directement en mode “Utilisateur par défaut”, sans boîte de dialogue.

2. Dans la Méthode base Sur ouverture, le développeur provoque l’affichage d’une boîte de dialogue personnalisée de saisie du nom d’utilisateur et du mot de passe (à l’aide de la commande DIALOGUE ou AJOUTER ENREGISTREMENT par exemple). Tout type de traitement peut être envisagé dans la boîte de dialogue :
- Il est possible d’afficher la liste des utilisateurs de la base, comme dans la boîte de dialogue d’accès standard de 4D, à l’aide de la commande LIRE LISTE UTILISATEURS.
- Le champ de saisie du mot de passe peut contenir divers contrôles afin de vérifier la validité des caractères saisis (nombre minimum de caractères, unicité...).
- Pour les caractères du mot de passe saisi soient brouillés à l'écran, vous pouvez utiliser la commande FILTRER FRAPPE CLAVIER.
- Des règles d’expiration peuvent être appliquées au moment de la validation de la boîte de dialogue : date d’expiration, changement forcé à la première connexion, verrouillage du compte après plusieurs saisies erronées, mémorisation des mots de passe déjà utilisés...

3. Lorsque la saisie est validée, les informations requises (nom d’utilisateur et mot de passe) sont passées à la commande CHANGER UTILISATEUR COURANT afin d’ouvrir la base avec les privilèges du compte utilisateur.

Exemple  

L'exemple suivant affiche la boîte de dialogue de connexion :

 CHANGER UTILISATEUR COURANT

 
PROPRIÉTÉS 

Produit : 4D
Thème : Utilisateurs et groupes
Numéro : 289
Nom intl. : CHANGE CURRENT USER

 
HISTORIQUE 

Modifié : 4D 2004

 
VOIR AUSSI  

CHANGER MOT DE PASSE

 
UTILISATION DE L'ARTICLE

4D - Langage ( 4D v11 SQL Release 6)
4D - Langage ( 4D v12.4)
4D - Langage ( 4D v14 R2)
4D - Langage ( 4D v14 R3)
4D - Langage ( 4D v13.5)
4D - Langage ( 4D v14.3)
4D - Langage ( 4D v14 R4)