4D v16.3Méthode base Sur authentification 4D Mobile |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v16.3
Méthode base Sur authentification 4D Mobile
Méthode base Sur authentification 4D Mobile
La Méthode base Sur authentification 4D Mobile vous permet de contrôler de manière personnalisée l’ouverture des sessions 4D Mobile (via REST) sur 4D. Cette méthode base est principalement destinée au filtrage des connexions lors de la mise en place d’une liaison entre un Wakanda Server et 4D. Lorsque la demande d’ouverture de session 4D Mobile provient de Wakanda Server via la méthode mergeOutsideCatalog() (cas général), les identifiants de connexion sont fournis dans l’en-tête de la requête. La Méthode base Sur authentification 4D Mobile est appelée afin de vous permettre d’évaluer ces identifiants. Vous pouvez utiliser la liste des utilisateurs de la base 4D ou votre propre table d’identifiants. Important : Lorsque la Méthode base Sur authentification 4D Mobile est définie (c’est-à-dire, lorsqu’elle contient du code), 4D lui délègue entièrement le contrôle des requêtes 4D Mobile : le paramétrage éventuellement effectué dans le menu "Lecture/Ecriture" de la page Web/4D Mobile des propriétés de la base est ignoré (cf. manuel Mode Développement). La méthode base reçoit deux paramètres de type texte ($1 et $2) et un booléen ($3), passés par 4D, et retourne un booléen, $0. Vous devez déclarer ces paramètres de la manière suivante : //Méthode base Sur authentification 4D Mobile $1 contient le nom d’utilisateur et $2 le mot de passe utilisés pour la connexion. Le mot de passe ($2) peut être reçu soit en clair soit sous forme hachée, en fonction du mode utilisé par la requête. Pour vous permettre d’effectuer le traitement approprié, ce mode est indiqué par le paramètre $3 :
Lorsque la demande de connexion 4D Mobile provient de Wakanda Server, le mot de passe est toujours envoyé sous forme hachée. Vous devez contrôler les identifiants de la connexion 4D Mobile dans la méthode base. Généralement, vous contrôlerez le nom et le mot de passe à l’aide d’une table d’utilisateurs personnalisée. Si les identifiants sont valides, passez Vrai dans $0. La requête est alors acceptée, 4D l’exécute et retourne le résultat en JSON. Si l’utilisateur est référencé dans la liste des utilisateurs 4D de la base, vous pouvez contrôler directement le mot de passe à l’aide de l’instruction suivante : $0:=Valider mot de passe($1;$2;$3) La commande Valider mot de passe accepte un nom d’utilisateur en premier paramètre ainsi qu’un paramètre optionnel indiquant si le mot de passe est exprimé sous forme hachée. Si vous souhaitez utiliser votre propre liste d’utilisateurs extérieurement à la liste de la base 4D, vous pouvez stocker leurs mots de passe sous une forme hachée en utilisant le même algorithme que celui utilisé par Wakanda Server lors de l’envoi de la requête de connexion à la Méthode base Sur authentification 4D Mobile dans $2. Pour hacher un mot de passe selon cette méthode, il suffit d’écrire : $MdPHaché :=Generer digest($MdPClair ;Digest 4D) La commande Generer digest accepte Digest 4D comme algorithme de hachage, correspondant à la méthode utilisée par 4D pour sa gestion interne des mots de passe. Cet exemple n’accepte que l’utilisateur "admin" avec le mot de passe "123" ne correspondant pas à un utilisateur 4D : //Méthode base sur authentification 4D Mobile Cet exemple de Méthode base Sur authentification 4D Mobile vérifie que la demande de connexion provient d’un des deux serveurs Wakanda autorisés, enregistrés dans les utilisateurs de la base 4D : C_TEXTE($1;$2)
|
PROPRIÉTÉS
Produit : 4D
HISTORIQUE
Créé : 4D v14 UTILISATION DE L'ARTICLE
4D - Langage ( 4D v16) |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||