Skip to main content
La ofrece la función de vinculación de cuentas de usuario, que le permite vincular y desvincular cuentas de usuario distintas de diferentes proveedores para asociarlas a un único perfil. También le permite actualizar los metadatos del usuario y otra información del perfil. Vincular cuentas de usuario permite que un usuario se autentique con cualquiera de sus cuentas y, sin importar cuál use, acceda al mismo perfil al iniciar sesión. De forma predeterminada, Auth0 trata todas estas cuentas como perfiles independientes, por lo que, si quiere que las cuentas de un usuario estén vinculadas, esta es la forma de hacerlo. El método link acepta dos parámetros: el ID de usuario del perfil principal y el del perfil secundario (el token obtenido después de iniciar sesión con esta identidad). El ID de usuario en cuestión es el identificador único de esta cuenta de usuario. Si el ID tiene el formato facebook|1234567890, el ID requerido es la parte que aparece después de la barra vertical (|) delimitadora (en este caso, 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)
      }
   }
Desvincular usuarios es un proceso similar al de vincularlos. El método unlink acepta tres parámetros: el ID de usuario del perfil secundario, el proveedor del perfil secundario (el de la conexión) y el ID de usuario del perfil principal. En esencia, los parámetros se interpretan así: “Desvincula este usuario secundario (con este proveedor) de este usuario 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)
      }
   }
Cuando se vinculan cuentas, los metadatos del perfil de la cuenta secundaria no se fusionan con los metadatos del perfil de la cuenta principal. Del mismo modo, al desvincular cuentas, el perfil de la cuenta secundaria no conserva los metadatos del perfil de la cuenta principal.

Obtener metadatos del usuario

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)
        }
    }

Actualizar los metadatos del usuario

Al actualizar los metadatos del usuario, crearás un objeto userMetadata y luego llamarás al método patch, al que pasarás el ID del usuario y el objeto userMetadata. Los valores de este objeto sobrescribirán los valores existentes con la misma clave o añadirán otros nuevos para las claves que aún no existan en los metadatos del usuario.
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)
        }
    }