Eventos
Compilación de Intelligent Apps
17 mar, 21 - 21 mar, 10
Únase a la serie de reuniones para crear soluciones de inteligencia artificial escalables basadas en casos de uso reales con compañeros desarrolladores y expertos.
Regístrese ahoraEste explorador ya no se admite.
Actualice a Microsoft Edge para aprovechar las características y actualizaciones de seguridad más recientes, y disponer de soporte técnico.
Espacio de nombres: microsoft.graph
Recupere las propiedades y las relaciones del objeto de usuario .
Esta operación devuelve de forma predeterminada solo un subconjunto de las propiedades más utilizadas de cada usuario. Estas propiedades predeterminadas se indican en la sección Propiedades. Para obtener propiedades que no se devuelven de forma predeterminada, realice una operación GET para el usuario y especifique las propiedades de una opción de consulta de OData $select
. Dado que el recurso user admite extensiones, también puede utilizar la GET
operación para obtener propiedades personalizadas y datos de extensión en una instancia user.
Los clientes a través de Microsoft Entra ID para los clientes también pueden usar esta operación de API para recuperar sus detalles.
Esta API está disponible en las siguientes implementaciones nacionales de nube.
Servicio global | Gobierno de EE. UU. L4 | Us Government L5 (DOD) | China operada por 21Vianet |
---|---|---|---|
✅ | ✅ | ✅ | ✅ |
Elija el permiso o los permisos marcados como con privilegios mínimos para esta API. Use un permiso o permisos con privilegios superiores solo si la aplicación lo requiere. Para obtener más información sobre los permisos delegados y de aplicación, consulte Tipos de permisos. Para obtener más información sobre estos permisos, consulte la referencia de permisos.
Tipo de permiso | Permisos con privilegios mínimos | Permisos con privilegios más altos |
---|---|---|
Delegado (cuenta profesional o educativa) | User.Read | User.ReadWrite, User.ReadBasic.All, User.Read.All, User.ReadWrite.All, Directory.Read.All, Directory.ReadWrite.All |
Delegado (cuenta personal de Microsoft) | User.Read | User.ReadWrite |
Aplicación | User.Read.All | User.ReadWrite.All, Directory.Read.All, Directory.ReadWrite.All |
Nota
/me
, se requiere un usuario con la sesión iniciada y, por lo tanto, un permiso delegado. Los permisos de aplicación no se admiten cuando se usa el punto de /me
conexión.User.Read
permiso permite a la aplicación leer el perfil y detectar relaciones como la pertenencia a grupos, los informes y el administrador del usuario que ha iniciado sesión únicamente.Para un usuario específico:
GET /me
GET /users/{id | userPrincipalName}
Sugerencia
$
, se produce un error en la sintaxis de la dirección URL de la solicitud GET /users/$x@y.com
que arroja un código de error 400 Bad Request
. Se produce un error en la solicitud porque la dirección URL infringe la convención de dirección URL de OData, que espera que solo las opciones de consulta del sistema estén precedidas de un $
carácter. Quite la barra diagonal (/) después de /users
y escriba userPrincipalName entre paréntesis y comillas simples como se muestra a continuación: /users('$x@y.com')
. Por ejemplo, /users('$AdeleVance@contoso.com')
.#
por %23
. Por ejemplo, /users/AdeleVance_adatum.com%23EXT%23@contoso.com
.Para un usuario con sesión iniciada:
GET /me
Este método admite el $select
parámetro de consulta OData para recuperar propiedades de usuario específicas, incluidas las que no se devuelven de forma predeterminada.
De forma predeterminada, solo se devuelve un conjunto limitado de propiedades. (businessPhones, displayName, givenName, id, jobTitle, mail, mobilePhone, officeLocation, preferredLanguage, surname, userPrincipalName).
Para devolver un conjunto de propiedades alternativo, tiene que especificar el conjunto de propiedades de usuario que prefiera con el parámetro de consulta $select
de OData. Por ejemplo, para devolver displayName, givenName y postalCode, agregue la siguiente expresión a la consulta $select=displayName,givenName,postalCode
.
Las propiedades de extensión también admiten parámetros de consulta como se indica a continuación:
Tipo de extensión | Comentarios |
---|---|
onPremisesExtensionAttributes 1-15 | Solo se devuelve con $select . |
Extensiones de esquema | Solo se devuelve con $select . |
Extensiones abiertas | Solo se devuelve a través de la operación Obtener extensión abierta. |
Extensiones de directorio | Solo se devuelve con $select . |
Encabezado | Valor |
---|---|
Authorization | {token} de portador. Obligatorio. Obtenga más información sobre la autenticación y la autorización. |
No proporcione un cuerpo de solicitud para este método.
Si se ejecuta correctamente, este método devuelve un código de respuesta 200 OK
y el objeto user en el cuerpo de la respuesta. Devuelve las propiedades predeterminadas a menos que se use $select
para especificar propiedades específicas. Este método devuelve 202 Accepted
cuando la solicitud se ha procesado correctamente pero el servidor necesita más tiempo para completar las operaciones en segundo plano relacionadas.
Si un usuario con el identificador no existe, este método devuelve un código de 404 Not Found
error.
De forma predeterminada, solo se devuelve un conjunto limitado de propiedades. (businessPhones, displayName, givenName, id, jobTitle, mail, mobilePhone, officeLocation, preferredLanguage, surname, userPrincipalName). Este ejemplo ilustra las solicitudes y respuestas predeterminadas.
GET https://graph.microsoft.com/v1.0/users/87d349ed-44d7-43e1-9a83-5f2406dee5bd
HTTP/1.1 200 OK
Content-type: application/json
{
"businessPhones": [
"+1 425 555 0109"
],
"displayName": "Adele Vance",
"givenName": "Adele",
"jobTitle": "Retail Manager",
"mail": "AdeleV@contoso.com",
"mobilePhone": "+1 425 555 0109",
"officeLocation": "18/2111",
"preferredLanguage": "en-US",
"surname": "Vance",
"userPrincipalName": "AdeleV@contoso.com",
"id": "87d349ed-44d7-43e1-9a83-5f2406dee5bd"
}
Puede obtener la información de usuario para el usuario que hayan iniciado sesión reemplazando /users/{id | userPrincipalName}
con /me
.
GET https://graph.microsoft.com/v1.0/me
HTTP/1.1 200 OK
Content-type: application/json
{
"businessPhones": [
"+1 425 555 0109"
],
"displayName": "Adele Vance",
"givenName": "Adele",
"jobTitle": "Retail Manager",
"mail": "AdeleV@contoso.com",
"mobilePhone": "+1 425 555 0109",
"officeLocation": "18/2111",
"preferredLanguage": "en-US",
"surname": "Vance",
"userPrincipalName": "AdeleV@contoso.com",
"id": "87d349ed-44d7-43e1-9a83-5f2406dee5bd"
}
Para recuperar propiedades específicas, use el parámetro de consulta OData $select
. Por ejemplo, para devolver displayName, givenName, postalCode e identidades, agregue la siguiente expresión de consulta a la consulta. $select=displayName,givenName,postalCode,identities
GET https://graph.microsoft.com/v1.0/users/87d349ed-44d7-43e1-9a83-5f2406dee5bd?$select=displayName,givenName,postalCode,identities
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users(displayName,givenName,postalCode,identities)/$entity",
"displayName": "Adele Vance",
"givenName": "Adele",
"postalCode": "98004",
"identities": [
{
"signInType": "userPrincipalName",
"issuer": "contoso.com",
"issuerAssignedId": "AdeleV@contoso.com"
}
]
}
En este ejemplo, el identificador de la extensión de esquema es ext55gb1l09_msLearnCourses
.
GET https://graph.microsoft.com/v1.0/users/4562bcc8-c436-4f95-b7c0-4f8ce89dca5e?$select=ext55gb1l09_msLearnCourses
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users(ext55gb1l09_msLearnCourses)/$entity",
"ext55gb1l09_msLearnCourses": {
"@odata.type": "#microsoft.graph.ComplexExtensionValue",
"courseType": "Developer",
"courseName": "Introduction to Microsoft Graph",
"courseId": 1
}
}
En el ejemplo siguiente se muestra cómo obtener las asignaciones de atributos de seguridad personalizados para un usuario.
Atributo n.º 1
Engineering
Project
["Baker","Cascade"]
Atributo n.º 2
Engineering
CostCenter
[1001]
Atributo n.º 3
Engineering
Certification
true
Atributo n.º 4
Marketing
EmployeeId
"QN26904"
Para obtener asignaciones de atributos de seguridad personalizadas, se debe asignar a la entidad de seguridad de llamada el rol Lector de asignación de atributos o Administrador de asignación de atributos y se le debe conceder el permiso CustomSecAttributeAssignment.Read.All o CustomSecAttributeAssignment.ReadWrite.All.
Para obtener más ejemplos de asignaciones de atributos de seguridad personalizadas, vea Ejemplos: Asignación, actualización, lista o eliminación de asignaciones de atributos de seguridad personalizados mediante microsoft Graph API.
GET https://graph.microsoft.com/v1.0/users/{id}?$select=customSecurityAttributes
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users(customSecurityAttributes)/$entity",
"customSecurityAttributes": {
"Marketing": {
"@odata.type": "#microsoft.graph.customSecurityAttributeValue",
"EmployeeId": "QN26904"
},
"Engineering": {
"@odata.type": "#microsoft.graph.customSecurityAttributeValue",
"Project@odata.type": "#Collection(String)",
"Project": [
"Baker",
"Cascade"
],
"CostCenter@odata.type": "#Collection(Int32)",
"CostCenter": [
1001
],
"Certification": true
}
}
}
Si no hay atributos de seguridad personalizados asignados al usuario o si la entidad de seguridad que realiza la llamada no tiene acceso, el siguiente bloque muestra la respuesta:
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users(customSecurityAttributes)/$entity",
"customSecurityAttributes": null
}
Eventos
Compilación de Intelligent Apps
17 mar, 21 - 21 mar, 10
Únase a la serie de reuniones para crear soluciones de inteligencia artificial escalables basadas en casos de uso reales con compañeros desarrolladores y expertos.
Regístrese ahora