Trabajar con usuarios en Microsoft Graph
Importante
Las API de la versión /beta
de Microsoft Graph están sujetas a cambios. No se admite el uso de estas API en aplicaciones de producción. Para determinar si una API está disponible en la versión 1.0, use el selector de Versión.
Puede usar Microsoft Graph para crear experiencias de aplicación atractivas basadas en usuarios y sus relaciones con otros objetos. Por ejemplo, sus relaciones con otros usuarios y grupos, pertenencias a grupos y los recursos a los que acceden, como sus correos electrónicos, calendarios, archivos y roles administrativos.
Puede acceder a los usuarios a través de Microsoft Graph de dos formas:
- Por su identificador o userPrincipalName,
/users/{id}
o/users/{userPrincipalName}
- Mediante el alias
/me
del usuario que ha iniciado sesión, que es el mismo que/users/{signed-in user's id}
Operaciones de API comunes
Ruta de acceso | Descripción |
---|---|
/me |
Obtenga los detalles del usuario que ha iniciado sesión. |
/users |
Enumera los usuarios de la organización. |
/users/{id} |
Obtiene un usuario específico por identificador. |
/users/{id}/photo/$value |
Obtiene la foto de perfil del usuario. |
/users/{id}/manager |
Obtiene el administrador del usuario. |
/users/{id}/messages |
Enumera los mensajes de correo electrónico del usuario en su bandeja de entrada principal. |
/users/{id}/events |
Enumera los eventos próximos del usuario en su calendario. |
/users/{id}/drive |
Obtiene el almacén de archivos del OneDrive del usuario. |
/users/{id}/memberOf |
Enumera los grupos de los que el usuario es miembro. |
/users/{id}/joinedTeams |
Enumera los equipos de Microsoft Teams de los que el usuario es miembro. |
Autorización y privilegios
Microsoft Graph admite el uso de permisos delegados y de aplicación para administrar las operaciones de usuario. Para obtener más información, consulte Permisos delegados frente a permisos de aplicación y la documentación de referencia de API correspondiente para los permisos necesarios para cada operación.
El usuario que ha iniciado sesión puede realizar algunas operaciones de usuario con sus propios detalles. Para estas operaciones, el usuario puede conceder a la aplicación los permisos de Microsoft Graph para acceder a sus propios detalles. Los permisos User.ReadBasic.All, User.Read y User.ReadWrite son estos permisos.
Otras operaciones, incluida la administración de detalles para otros usuarios, requieren privilegios administrativos que se conceden a través de otros permisos de Microsoft Graph y roles de Microsoft Entra. Además, algunas operaciones se consideran confidenciales y solo los administradores limitados pueden realizarlas. Para obtener más información, consulte Las secciones Quién puede restablecer contraseñas y Quién puede actualizar atributos confidenciales .
Permisos de usuario predeterminados en Microsoft Entra ID
Hay dos tipos de usuarios en Microsoft Entra ID: miembros e invitados. Inicialmente, los usuarios miembros se crean de forma nativa en el inquilino. Los usuarios invitados se unen al inquilino mediante el canje de su invitación y acceden al inquilino como invitados de colaboración de negocio a negocio (B2B).
El conjunto de permisos predeterminados depende de si el usuario es un miembro o un usuario invitado. Para obtener más información sobre lo que pueden hacer los usuarios miembros y los usuarios invitados, consulte ¿Cuáles son los permisos de usuario predeterminados en Microsoft Entra ID?.
Permisos de usuario predeterminados en inquilinos de clientes
También hay permisos predeterminados para los clientes en Microsoft Entra ID para los clientes. En la tabla siguiente se indican las operaciones de API que permiten a los clientes administrar su propio perfil.
El identificador de usuario o userPrincipalName siempre es el del usuario que ha iniciado sesión.
Operación de usuario | Operación de API | Permisos necesarios |
---|---|---|
Leer perfil |
GET /me o GET /users/{id or userPrincipalName} |
User.Read |
Actualizar perfil |
PATCH /me o PATCH /users/{id or userPrincipalName} Las propiedades siguientes son actualizables: city, country, displayName, givenName, jobTitle, postalCode, state, streetAddress, surname y preferredLanguage |
User.ReadWrite |
Cambiar contraseña | POST /me/changePassword |
Directory.AccessAsUser.All |
Acciones confidenciales
Las siguientes acciones en el objeto de usuario se consideran confidenciales y pueden bloquearse solo para administradores específicos. Todos los usuarios pueden leer las propiedades confidenciales.
Acción confidencial | Nombre de propiedad confidencial |
---|---|
Deshabilitar o habilitar usuarios | accountEnabled |
Actualización del teléfono empresarial | businessPhones |
Actualización del teléfono móvil | mobilePhone |
Actualización del identificador inmutable local | onPremisesImmutableId |
Actualizar otros correos electrónicos | otherMails |
Actualizar perfil de contraseña | passwordProfile |
Actualización del nombre principal de usuario | userPrincipalName |
Suprimir o restaurar usuarios | No aplicable |
Quién puede realizar acciones confidenciales
Algunos administradores pueden realizar las acciones confidenciales anteriores para algunos usuarios.
En la tabla siguiente, las columnas enumeran los roles que pueden realizar acciones confidenciales. Las filas enumeran los roles en los que se puede realizar la acción confidencial.
La tabla siguiente es para los roles asignados en el ámbito de un inquilino. Para los roles asignados en el ámbito de una unidad administrativa, se aplican más restricciones.
Rol en el que se puede realizar una acción confidencial | Autenticación Administración | Administración de usuario | Privileged Auth Administración | Administrador global |
---|---|---|---|---|
Autenticación Administración | ✅ | ✅ | ✅ | |
Lectores de directorio | ✅ | ✅ | ✅ | ✅ |
Administrador global | ✅ | ✅ | ||
Grupos Administración | ✅ | ✅ | ✅ | |
Invitador | ✅ | ✅ | ✅ | ✅ |
Administración del departamento de soporte técnico | ✅ | ✅ | ✅ | |
Lector del Centro de mensajes | ✅ | ✅ | ✅ | ✅ |
Administración de contraseña | ✅ | ✅ | ✅ | ✅ |
Privileged Auth Administración | ✅ | ✅ | ||
Rol con privilegios Administración | ✅ | ✅ | ||
Lector de informes | ✅ | ✅ | ✅ | ✅ |
Usuario (sin rol de administrador) |
✅ | ✅ | ✅ | ✅ |
Usuario (sin rol de administrador, pero miembro o propietario de un grupo asignable por roles) |
✅ | ✅ | ||
Usuario con un rol en el ámbito de una unidad administrativa de administración restringida | ✅ | ✅ | ||
Administración de usuario | ✅ | ✅ | ✅ | |
Resumen de uso de Lector de informes | ✅ | ✅ | ✅ | ✅ |
Todos los roles personalizados | ✅ | ✅ |
Quién puede restablecer contraseñas
En la tabla siguiente, las columnas muestran los roles que pueden restablecer contraseñas e invalidar los tokens de actualización. Las filas enumeran los roles para los que se puede restablecer su contraseña. Por ejemplo, un administrador de contraseñas puede restablecer la contraseña para lectores de directorio, invitador de invitado, administrador de contraseñas y usuarios sin rol de administrador. Si a un usuario se le asigna cualquier otro rol, el administrador de contraseñas no puede restablecer su contraseña.
La tabla siguiente es para los roles asignados en el ámbito de un inquilino. Para los roles asignados en el ámbito de una unidad administrativa, se aplican más restricciones.
Rol que se puede restablecer la contraseña | Administración de contraseña | Administración del departamento de soporte técnico | Autenticación Administración | Administración de usuario | Privileged Auth Administración | Administrador global |
---|---|---|---|---|---|---|
Autenticación Administración | ✅ | ✅ | ✅ | |||
Lectores de directorio | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Administrador global | ✅ | ✅* | ||||
Grupos Administración | ✅ | ✅ | ✅ | |||
Invitador | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Administración del departamento de soporte técnico | ✅ | ✅ | ✅ | ✅ | ||
Lector del Centro de mensajes | ✅ | ✅ | ✅ | ✅ | ✅ | |
Administración de contraseña | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Privileged Auth Administración | ✅ | ✅ | ||||
Rol con privilegios Administración | ✅ | ✅ | ||||
Lector de informes | ✅ | ✅ | ✅ | ✅ | ✅ | |
Usuario (sin rol de administrador) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Usuario (sin rol de administrador, pero miembro o propietario de un grupo asignable por roles) |
✅ | ✅ | ||||
Usuario con un rol en el ámbito de una unidad administrativa de administración restringida | ✅ | ✅ | ||||
Administración de usuario | ✅ | ✅ | ✅ | |||
Resumen de uso de Lector de informes | ✅ | ✅ | ✅ | ✅ | ✅ | |
Todos los roles personalizados | ✅ | ✅ |
La capacidad de restablecer una contraseña incluye la capacidad de actualizar las siguientes propiedades confidenciales necesarias para el autoservicio de restablecimiento de contraseña:
- businessPhones
- mobilePhone
- otherMails
Limitaciones de búsqueda de usuarios y grupos para usuarios invitados en las organizaciones
Las funciones de búsqueda de grupos y usuarios permiten que la aplicación busque cualquier usuario o grupo en un directorio de la organización mediante la realización de consultas en el conjunto de recursos /users
o /groups
(por ejemplo, https://graph.microsoft.com/v1.0/users
). Tanto los administradores como los usuarios que son miembros tienen esta funcionalidad; sin embargo, los usuarios invitados no.
Si el usuario que ha iniciado sesión es un usuario invitado, en función de los permisos que se hayan concedido a una aplicación, puede leer el perfil de un usuario o grupo específico (por ejemplo, https://graph.microsoft.com/v1.0/users/241f22af-f634-44c0-9a15-c8cd2cea5531
), pero no puede realizar consultas en el conjunto de recursos /users
o /groups
que devuelvan potencialmente más de un solo recurso.
Con los permisos adecuados, la aplicación puede leer los perfiles de usuarios o grupos que obtiene al seguir los vínculos de las propiedades de navegación, como /users/{id}/directReports
o /groups/{id}/members
.
Propiedades no devueltas de forma predeterminada
Algunas propiedades del objeto de usuario no se devuelven de forma predeterminada y deben especificarse en un $select
parámetro de consulta. Por ejemplo, cumpleaños y aptitudes. Consulte la tabla de propiedades de la entidad de usuario para identificar las propiedades que se devuelven solo cuando se .$select
Propiedades almacenadas fuera del almacén de datos principal
Aunque los datos de recursos de usuario se almacenan principalmente en Microsoft Entra ID, algunas de sus propiedades, como las aptitudes, se almacenan en SharePoint Online. En la mayoría de los casos, no puede especificar estas propiedades en el mismo cuerpo de la solicitud Create o Update que otras propiedades de usuario.
Las propiedades almacenadas fuera del almacén de datos principal tampoco se admiten como parte del seguimiento de cambios. Por lo tanto, un cambio en cualquiera de estas propiedades no da lugar a que un objeto aparezca en la respuesta de consulta delta.