Skip to main content
Le offre la fonctionnalité de liaison de comptes d’utilisateur, qui vous permet de lier et de dissocier des comptes d’utilisateur distincts provenant de différents fournisseurs afin de les rattacher à un seul profil. Elle vous permet également de mettre à jour les métadonnées de l’utilisateur et d’autres renseignements de profil. Lier des comptes utilisateur permet à un utilisateur de s’authentifier avec n’importe lequel de ses comptes et, peu importe celui utilisé, de retrouver le même profil à la connexion. Par défaut, Auth0 traite tous ces comptes comme des profils distincts. Donc, si vous voulez que les comptes d’un utilisateur soient liés, c’est la méthode à utiliser. La méthode link accepte deux paramètres : l’ID utilisateur du profil principal et le du profil secondaire (le jeton obtenu après la connexion avec cette identité). L’ID utilisateur en question est l’identifiant unique de ce compte utilisateur. Si l’ID est au format facebook|1234567890, l’ID requis est la partie après la barre verticale (dans ce cas, 1234567890).
Auth0
   .users(token: "user-scoped access token")
   .link(userId, withOtherUserToken: "another user token")
   .start { result in
      switch result {
      case .success(let userInfo):
        print("User: \(userInfo)")
      case .failure(let error):
        print(error)
      }
   }
La dissociation d’utilisateurs suit un processus semblable à la liaison d’utilisateurs. La méthode unlink prend trois paramètres : l’ID utilisateur du profil secondaire, le fournisseur du profil secondaire (le de la connexion), et l’ID utilisateur du profil principal. Les paramètres se lisent essentiellement comme suit : « Dissocier cet utilisateur secondaire (avec ce fournisseur) de cet utilisateur principal ».
Auth0
   .users(token: "user-scoped access token")
   .unlink(identityId: identifier, provider: provider, fromUserId:userId)
   .start { result in
      switch result {
      case .success(let userInfo):
        print("User: \(userInfo)")
      case .failure(let error):
        print(error)
      }
   }
Lorsque des comptes sont liés, les métadonnées du profil du compte secondaire ne sont pas fusionnées avec celles du profil du compte principal. De même, lorsque des comptes sont dissociés, le profil du compte secondaire ne conserve pas les métadonnées du profil du compte principal.

Récupérer les métadonnées de l’utilisateur

Auth0
    .users(token: "user-scoped access token")
    .get(userId, fields: ["user_metadata"], include: true)
    .start { result in
        switch result {
        case .success(let userInfo):
            print("User: \(userInfo)")
        case .failure(let error):
            print(error)
        }
    }

Mettre à jour les métadonnées de l’utilisateur

Lorsque vous mettez à jour les métadonnées de l’utilisateur, créez un objet userMetadata, puis appelez la méthode patch en lui passant l’ID utilisateur et l’objet userMetadata. Les valeurs de cet objet remplaceront les valeurs existantes ayant la même clé, ou en ajouteront de nouvelles si elles n’existent pas encore dans les métadonnées de l’utilisateur.
Auth0
    .users(token: "user-scoped access token")
    .patch("user identifier", userMetadata: ["first_name": "John", "last_name": "Doe"])
    .start { result in
        switch result {
        case .success(let userInfo):
          print("User: \(userInfo)")
        case .failure(let error)
          print(error)
        }
    }