Auth fournit l'authentification et l'autorisation pour votre application, y compris la gestion des utilisateurs, la gestion des groupes, l'enregistrement des utilisateurs, la connexion et les fonctions connexes. Il est installé automatiquement lors de la création du projet.
Le login et le mot de passe par défaut de l'utilisateur Admin sont les suivants :
- Login: [email protected]
- Password: appmaster
Lesparamètres du module peuvent être configurés de la manière suivante :
- SignUp Groups: définit la liste des groupes où l'utilisateur peut s'inscrire ;
- SignUp: permet aux utilisateurs de s'inscrire et d'obtenir des comptes dans l'application ;
- Session timeout (minutes): définit le temps après lequel la session courante de l'utilisateur se terminera si l'utilisateur est inactif ; par défaut 60 min ;
- Failed login delay (in ms): définit le délai pour les réponses après des tentatives de connexion échouées ; par défaut 0ms ;
- Email confirmation required: définit si l'utilisateur doit confirmer son inscription par e-mail ;
- Signed-Up User Active: définit active=true pour chaque objet Utilisateur nouvellement créé si activé ;
- Groups permet de créer et de configurer une liste de groupes d'utilisateurs ;
User et User Session sont créés automatiquement lorsque le module Auth est installé. Vous pouvez les trouver dans l'onglet Data Design onglet. Il n'est pas possible de configurer les attributs par défaut de ces modèles, mais il est possible d'en ajouter de nouveaux.
User, User Session et Auth Module les BP connexes
Les processus d'affaires préinstallés relatifs aux User et User Session sont les suivants :
User Modèle
- DB: Delete User: supprime l'objet User de la base de données sur la base de son ID;
- DB: Update User: réinitialise tous les champs d'un objet modèle donné dans la base de données et les met à jour avec les valeurs données (DB: Patch User doit être utilisé pour modifier uniquement les champs fournis et conserver les autres tels quels) ;
- DB: Create Usercrée un enregistrement dans la base de données et renvoie l'objet modèle User (il faut utiliser le bloc Make User pour créer l'objet modèle User l'objet modèle en fonction des champs d'entrée) ;
- DB: Soft Delete User: met à jour le champ DeletedAt champ de l'objet modèle User sélectionné au lieu de supprimer l'enregistrement entier comme DB: Delete User le fait ;
- DB: Bulk Delete UserSuppression en masse de l'ensemble des User l'ensemble des enregistrements d'objets de modèle avec la valeur IDs (ids tableau) ; failed_ids - un tableau d'utilisateurs IDs qui ne seront pas supprimés ;
- DB: Patch UserMise à jour des champs sélectionnés de l'objet User l'objet modèle dans la base de données (DB: Update User doit être utilisé pour réinitialiser tous les champs) ;
- DB: Search Userrecherche un ou plusieurs objets User objets modèles dans la base de données en fonction de leurs champs et les renvoie ;
- DB: GetOne Userrecherche l'objet User sur la base de ses champs ID et le renvoie ;
- Expand User: retourne tous les champs de l'objet de modèle User l'objet modèle sélectionné ;
- Make User: fabrique l'objet modèle User objet modèle basé sur des champs d'entrée (il est nécessaire d'utiliser DB: Create User afin de créer l'enregistrement dans la base de données) ;
User Session
- DB: Delete User Session: supprime User Session de la base de données en fonction de ses champs de ID;
- DB: Update User Session: réinitialise tous les champs d'un objet modèle donné dans la base de données, et les met à jour avec des valeurs données (DB: Patch User Session doit être utilisé pour modifier les champs fournis uniquement) ;
- DB: Create User Sessioncrée un enregistrement dans la base de données et renvoie l'objet de type User Session objet modèle (il faut utiliser Make User Session pour créer User l'objet modèle en fonction des champs d'entrée) ;
- DB: Soft Delete User Session: met à jour le champ DeletedAt champ de l'objet modèle User Session l'objet modèle sélectionné ;
- DB: Bulk Delete User Sessionsuppression en masse de l'ensemble des User Session enregistrements d'objets de modèle avec les champs IDs (ids tableau) ; failed_ids Le tableau définit l'ensemble des enregistrements IDs qui seront ignorés du processus de suppression ;
- DB: Patch User Sessionmet à jour les champs sélectionnés de l'objet User Session l'objet modèle dans la base de données (DB: Update User Session
- DB: Search User Sessionrecherche un ou plusieurs objets User Session objets modèles dans la base de données en fonction de leurs champs et les renvoie ;
- DB: GetOne User Sessionrecherche l'objet User Session sur la base de ses champs ID et le renvoie ;
- Expand User Session: retourne tous les champs de l'objet de modèle User Session l'objet modèle sélectionné ;
- Make User Session: fabrique l'objet modèle User Session objet modèle basé sur les champs d'entrée (il est nécessaire d'utiliser le champ DB: Create User Session afin de créer l'enregistrement dans la base de données) ;
Auth Module
- Auth: Generate Auth Token: génère un jeton d'autorisation (Auth Token) de la longueur donnée ;
- Auth: Registration: enregistre un nouvel utilisateur ;
- Auth: Authorization: vérifie si un objet Auth Token existe et renvoie l'utilisateur qui lui est associé ;
- Auth: Authentification: vérifie le login et le mot de passe de l'utilisateur et retourne Auth Token;
- Auth: Logout: met fin à la session de l'utilisateur actuel en se basant sur le nom de l'utilisateur. Auth Token;
- Auth: Get current user: retourne l'objet de modèle User objet modèle ;
- Auth: Remove user from group: supprime un utilisateur du groupe sélectionné en se basant sur l'objet ID;
- Auth: Add user to group: ajoute un utilisateur au groupe sélectionné en se basant sur son nom ID;
- Auth: Hash Password: convertit la chaîne de mots de passe en hash ;
- Auth: Restore Password: restaure le mot de passe basé sur le login de l'utilisateur ;
- Auth: Change Password: change le mot de passe de l'utilisateur ;
- Auth: Probe Password: vérifie l'association entre le mot de passe et le hachage ;
Auth Module, User et User Session endpoints
Préinstallé Endpoints des Auth Module et User et User Session sont générés automatiquement lors de la création du projet.
Auth Module
Type de demande | Endpoint | Processus métier associé |
/logout/ | Auth: Logout | |
/auth/ | Auth: Authentification | |
/register/ | Auth: Registration | |
/confirm/ | Auth: Get Current User | |
/user/change-password/ | Auth: Change Password | |
/user/restore-password/ | Auth: Restore Password | |
/user/profile/ | Auth: Get Current User |
Utilisateur
Type de demande | Endpoint | Processus de gestion associé |
/user/:id/ | DB: Update User | |
/user/:id/ | DB: Delete User | |
/user/:id/ | DB: GetOne User | |
/user/ | DB: Search User | |
/user/:id/ | DB: Patch User | |
/user/ | DB: Create User |
User Session
Type de demande | Endpoint | Processus de gestion associé |
/user-session/:id/ | DB: Delete User Session | |
/user-session/:id/ | DB: GetOne User Session | |
/user-session/ | DB: Search User Session | |
/user-session/:id/ | DB: Patch User Session | |
/user-session/ | DB: Create User Session | |
/user-session/:id/ | DB: Update User Session |
Auth Token
Auth Token est utilisé comme jeton de session d'un utilisateur autorisé. Il est possible d'interagir avec le Auth Token, dans les processus métier de l'application web :
- Get Auth Token renvoie la session de l'utilisateur actuel Auth Token;
- Set Auth Token réécrit la session de l'utilisateur actuel Auth Token;
- Remove Auth Token supprime la session de l'utilisateur actuel Auth Token;
Comment obtenir l'utilisateur actuel
1. Allez dans l'onglet Business logic et faites glisser le bloc Auth: Get current user bloc.
2. Allez dans l'onglet Endpoints et développez la section User section. Ensuite, créez une méthode GET méthode de type pour le processus d'entreprise créé à l'étape 1. L'URL de endpoint serait /user_current.
3. Allez dans l'onglet Web Apps et créez un nouveau processus métier avec Server request GET /user_current pour obtenir l'utilisateur actuel à partir du processus métier de l'application Web.