Suplantar a otro usuario
Use la suplantación para ejecutar la lógica de negocios en nombre de otro usuario de Microsoft Dataverse para proporcionar una característica o servicio deseado con el rol que le corresponde y la seguridad basada en objetos de dicho usuario suplantado.
La suplantación puede usarse por distintos clientes y servicios para llamar a los servicios web Dataverse en nombre de un usuario de Dataverse.
La suplantación implica dos diferentes cuentas de usuario:
Suplantador | Usuario suplantado |
---|---|
Cuenta de usuario utilizada cuando se ejecuta código | Cuenta de usuario en nombre de la cual se realiza la tarea. |
Privilegios requeridos
El suplantador necesita el privilegio de Actuar en nombre de otro usuario (prvActOnBehalfOfAnotherUser
), que se incluye en el rol de seguridad Delegado o se puede habilitar para cualquier rol de seguridad.
Nota
Recuerde que los usuarios se pueden asociar a más de un rol de seguridad. La asignación del rol de seguridad Delegado a un usuario le concederá el privilegio prvActOnBehalfOfAnotherUser
así como los privilegios proporcionados por cualquier otro rol de seguridad asociados a la cuenta de usuario.
El conjunto real de privilegios que se utiliza para modificar los datos es la intersección de los privilegios que el usuario suplantador posee con los del usuario suplantado.
Es decir, al suplantador se le permite hacer algo solo si el suplantador y el usuario suplantado tienen el privilegio necesario para realizar la acción.
Se requiere la asignación directa
El privilegio Actuar en nombre de otro usuario (prvActOnBehalfOfAnotherUser
), o una función que contenga ese privilegio, debe asignarse directamente a los usuarios, ya que no puede ser heredado a través de un Equipo. Esta asignación directa es necesaria debido a la naturaleza delicada del privilegio.
Suplantación con la autenticación de servidor a servidor
Si está creando una aplicación de cliente web que requiere una cuenta de usuario que pueda actuar en nombre del usuario de suscripción, puede usar la cuenta especial usuario de la aplicación de modo que no sea necesario usar una licencia de usuario de Dataverse de pago.
Más información: Crear aplicaciones web mediante la autenticación de servidor a servidor (S2S).
Suplantar a otro usuario utilizando la API web
Para suplantar a un usuario, agregue un encabezado de solicitud llamado CallerObjectId
con un valor GUID igual al identificador de objeto de Microsoft Entra ID suplantado antes de enviar la solicitud al servicio web. El id. del objeto Microsoft Entra ID del usuario se incluye en el SystemUser.AzureActiveDirectoryObjectId.
Más información: Suplantar a otro usuario utilizando la API web.
Suplantar a otro usuario utilizando SDK para .NET
Para suplantar a otro usuario, establezca la propiedad CallerId
al valor de GUID del usuario suplantado. Las siguientes clases que implementan IOrganizationService incluyen esta propiedad.
Suplantar a otro usuario mediante complementos
Puede registrar un complemento con código para especificar el usuario que debe usar las operaciones. Más información: Suplantar a un usuario.
Consulte también
Crear aplicaciones web mediante autenticación de servidor a servidor (S2S)
Suplantar a otro usuario utilizando la API web
Escribir un complemento
Nota
¿Puede indicarnos sus preferencias de idioma de documentación? Realice una breve encuesta. (tenga en cuenta que esta encuesta está en inglés)
La encuesta durará unos siete minutos. No se recopilan datos personales (declaración de privacidad).