Gestion des utilisateurs BaaS

De RAD Studio
Aller à : navigation, rechercher

Remonter à Présentation de BaaS


Avant de lire cette page, assurez-vous que vous avez lu les pages ci-dessous :


Vous pouvez ajouter une authentification utilisateur à vos apps en utilisant les fournisseurs BaaS Kinvey et Parse. L'utilisation de BaaS pour gérer les utilisateurs vous permet d'effectuer les opérations suivantes :

  • Utilisateurs : s'inscrire, mettre à jour, supprimer et récupérer les détails utilisateur
  • Sessions utilisateur : se connecter et se déconnecter.
  • Groupes/rôles utilisateur : créer, récupérer, mettre à jour et supprimer.
  • Gérer l'authentification utilisateur en utilisant d'autres identités (comme les réseaux sociaux).

Composants

Utilisez les composants suivants dans votre application pour gérer les utilisateurs BaaS :

  • Le composant de service TBackendUsers vous permet d'effectuer des actions utilisateur. Utilisez ce composant non-visuel pour inscrire, connecter, récupérer, mettre à jour et supprimer des utilisateurs.

Excepté à partir du composant service, vous avez besoin de l'un des composants du fournisseur BaaS :

  • TKinveyProvider – Utilisez ce composant lors de l'utilisation de Kinvey en tant que fournisseur BaaS. Ce composant contient des informations à propos de la connexion au service cloud et configure la connexion avec le fournisseur Kinvey BaaS.
  • TParseProvider – Utilisez ce composant lors de l'utilisation de Parse en tant que fournisseur BaaS. Ce composant contient des informations à propos de la connexion au service cloud et configure la connexion avec le fournisseur Parse BaaS.

Création de nouveaux utilisateurs

Ajoutez des utilisateurs à vos applications BaaS afin de sécuriser l'accès. Les fournisseurs BaaS Kinvey et Parse vous permettent de créer et de gérer les utilisateurs en tant que partie du service backend qu'ils fournissent. Vous pouvez créer un nouvel utilisateur à partir des sites web Kinvey et Parse ou le créer à partir de votre application en utilisant l'API REST.Backend.

Création d'un nouvel utilisateur à partir du site web Kinvey

Dès que vous avez créé un compte et une application avec Kinvey, vous pouvez ajouter des utilisateurs à votre application afin d'utiliser l'authentification dans vos apps pour sécuriser l'accès. Pour créer un utilisateur à partir du site web Kinvey (EN), accédez à votre console (EN) et cliquez sur Development dans l'app pour laquelle vous voulez créer l'utilisateur. Cliquez sur Users dans le menu, puis cliquez sur Add User… pour créer un nouvel utilisateur.

Kinvey CreateNewUser.png

Entrez les informations appropriées et cliquez sur Create User.

Création d'un nouvel utilisateur à partir du site web Parse

Dès que vous avez créé un compte et une application avec Parse, vous pouvez ajouter des utilisateurs à votre application afin d'utiliser l'authentification dans vos apps pour sécuriser l'accès. Pour créer un utilisateur à partir du site web Parse (EN), accédez à votre tableau de bord (EN) et entrez le Core de l'app pour laquelle vous voulez créer l'utilisateur. Cliquez sur le menu Data, puis sur Add Class. Pour créer une nouvelle classe à partir du menu déroulant, sélectionnez User et cliquez sur Create Class.

Parse NewClassUser.png

La nouvelle option de menu User est désormais disponible sous Data. Accédez à cette option, créez une nouvelle ligne + Row et ajoutez les informations appropriées pour ajouter un nouvel utilisateur.

Création d'un nouvel utilisateur Kinvey ou Parse avec l'API REST

Vous pouvez créer un nouvel utilisateur Kinvey ou Parse en utilisant l'API REST.Backend. Cela vous permet d'incorporer dans votre application l'option de création d'un nouvel utilisateur. Ainsi, par exemple, de nouveaux utilisateurs peuvent se recenser à partir de votre app.
Pour créer un nouvel utilisateur à partir de votre app :

  1. Créez une nouvelle application multi-périphérique.
  2. Déposez les composants suivants sur la fiche :
    • TEdit : définissez la propriété Name sur username.
    • TEdit : définissez la propriété Name sur password.
    • TLabel : définissez la propriété Text sur Username: et placez-la à côté du TEdit username.
    • TLabel : définissez la propriété Text sur Password: et placez-la à côté du TEdit password.
    • TLabel : définissez la propriété Name sur lastAction et la propriété Text sur No user has been created.
    • TButton : définissez la propriété Text sur Create User et la propriété Name sur CreateUserButton.
    • TKinveyProvider si vous travaillez avec Kinvey en tant que fournisseur BaaS ou TParseProvider si vous travaillez avec Parse en tant que fournisseur BaaS.
    • TBackendUsers et assurez-vous que la propriété Provider est définie sur KinveyProvider1 ou ParseProvider1 selon le fournisseur BaaS utilisé.
  3. Selon le fournisseur BaaS utilisé :
    BaaS CreateUserApp.png
  4. Double-cliquez sur le bouton CreateUserButton et ajoutez le code suivant :
    Delphi :
    procedure TForm3.CreateUserButtonClick(Sender: TObject);
    var
    LEntity: TBackendEntityValue;
    begin
      BackendUsers1.Users.SignupUser(username.Text, password.Text, nil, LEntity);
      ShowMessage('New user created, with username: '+username.Text);
      lastAction.Text:=('Last user created: '+username.Text);
    end;
    
    C++ :
    void __fastcall TForm1::CreateUserButtonClick(TObject *Sender)
    {
      TBackendEntityValue LEntity;
      BackendUsers1->Users->SignupUser(username->Text, password->Text, NULL, LEntity);
      ShowMessage("New user created, with username: "+username->Text);
      lastAction->Text=("Last user created: "+username->Text);
    }
    
  5. Pour exécuter votre projet, appuyez sur F9 ou choisissez Exécuter > Exécuter.

Gestion des sessions utilisateur

Connexion et déconnexion

Avec les fournisseurs BaaS Kinvey et Parse, vous pouvez utiliser des sessions utilisateur pour utiliser l'authentification dans vos apps afin de sécuriser l'accès.
Cet exemple présente comment se connecter à un service BaaS et se déconnecter d'un service BaaS :

  1. Créez une nouvelle application multi-périphérique.
  2. Déposez les composants suivants sur la fiche :
    • TEdit : définissez la propriété Name sur username.
    • TEdit : définissez la propriété Name sur password.
    • TLabel : définissez la propriété Text sur Username: et placez-la à côté du TEdit username.
    • TLabel : définissez la propriété Text sur Password: et placez-la à côté du TEdit password.
    • TLabel : définissez la propriété Name sur status et la propriété Text sur Status: Not logged in.
    • TButton : définissez la propriété Text sur Login et la propriété Name sur LoginButton.
    • TButton : définissez la propriété Text sur Logout et la propriété Name sur LogoutButton.
    • TKinveyProvider si vous travaillez avec Kinvey en tant que fournisseur BaaS ou TParseProvider si vous travaillez avec Parse en tant que fournisseur BaaS.
    • TBackendUsers et assurez-vous que la propriété Provider est définie sur KinveyProvider1 ou ParseProvider1 selon le fournisseur BaaS utilisé.
  3. Selon le fournisseur BaaS utilisé :
    BaaS LoginApp.png
  4. Double-cliquez sur le bouton LoginButton et ajoutez le code suivant :
    Delphi :
    procedure TForm1.LoginButtonClick(Sender: TObject);
    begin
    var
    ACreatedObject: TBackendEntityValue;
    begin
      BackendUsers1.Users.LoginUser(username.Text,password.Text, ACreatedObject);
      ShowMessage('You are logged in.');
      status.Text:=('Status: Logged in');
    end;
    
    C++ :
    void __fastcall TForm1::LoginButtonClick(TObject *Sender)
    {
    	TBackendEntityValue ACreatedObject;
    	BackendUsers1->Users->LoginUser(username->Text, password->Text, ACreatedObject);
    	ShowMessage("You are logged in.");
    	status->Text=("Status: Logged in");
    }
    
  5. Double-cliquez sur le bouton LogoutButton et ajoutez le code suivant :
    Delphi :
    procedure TForm1.LogoutButtonClick(Sender: TObject);
    begin
      BackendUsers1.Users.Logout;
      ShowMessage('You are logged out.');
      status.Text:=('Status: Not logged in');
    end;
    
    C++ :
    void __fastcall TForm1::LogoutButtonClick(TObject *Sender)
    {
    	BackendUsers1->Users->Logout();
    	ShowMessage("You are logged out.");
    	status->Text=("Status: Not logged in");
    }
    
  6. Pour exécuter votre projet, appuyez sur F9 ou choisissez Exécuter > Exécuter.

Voir aussi

Exemples de code