Actualizar usuario

Espacio de nombres: microsoft.graph

Actualice las propiedades de un objeto user. No todos los usuarios miembros o invitados pueden actualizar todas las propiedades con sus permisos predeterminados sin roles de administrador. Compare los permisos predeterminados de miembro y para ver las propiedades que pueden administrar.

Permisos

Se requiere uno de los siguientes permisos para llamar a esta API. Para obtener más información, incluido cómo elegir permisos, vea Permisos.

Tipo de permiso Permisos (de menos a más privilegiados)
Delegado (cuenta profesional o educativa) User.ReadWrite, User.ReadWrite.All, User.ManageIdentities.All, Directory.ReadWrite.All
Delegado (cuenta personal de Microsoft) User.ReadWrite
Aplicación User.ReadWrite.All, User.ManageIdentities.All, Directory.ReadWrite.All

Nota

  • La actualización de la propiedad businessPhones, mobilePhone u otherMails de otro usuario solo está permitida en usuarios que no son administradores o tienen asignados uno de los siguientes roles: lectores de directorio, invitador de usuarios, lector de centro de mensajes y lector de informes. Para obtener más información, consulte administrador de soporte técnico (contraseña) en Roles disponibles de Azure AD. Este es el caso para las aplicaciones que concedieron los permisos User.ReadWrite.All o Directory.ReadWrite.All de aplicación o delegados. Solo un administrador global a quien se le ha asignado el permiso Directory.AccessAsUser.All, puede actualizar estas propiedades para administradores con más privilegios.
  • Su cuenta personal de Microsoft debe estar vinculada a un inquilino de AAD para actualizar su perfil con el permiso delegado User.ReadWrite en una cuenta Microsoft personal.
  • La actualización de la propiedad de identidades requiere el permiso User.ManageIdentities.All. Además, no se permite agregar una cuenta local B2C a un objeto de usuario existente, a menos que el objeto de usuario ya contenga una identidad de cuenta local.

Solicitud HTTP

PATCH /users/{id | userPrincipalName}

Encabezados de solicitud

Encabezado Valor
Authorization {token} de portador. Obligatorio.
Content-Type application/json

Cuerpo de la solicitud

En el cuerpo de la solicitud, proporcione los valores de los campos relevantes que deben actualizarse. Las propiedades existentes que no se incluyan en el cuerpo de la solicitud mantendrán los valores anteriores o se recalcularán según los cambios efectuados en otros valores de propiedad. Para obtener el mejor rendimiento, no debe incluir valores existentes que no hayan cambiado.

Propiedad Tipo Descripción
aboutMe String Un campo de entrada de texto de forma libre para que el usuario se describa a sí mismo.
accountEnabled Boolean true si la cuenta está habilitada; en caso contrario, false. Esta propiedad es necesaria cuando se crea un usuario. Un administrador global asignado al permiso delegado Directory.AccessAsUser.All puede actualizar el estado accountEnabled de todos los administradores del espacio empresarial.
ageGroup ageGroup Establece el grupo de edad del usuario. Valores permitidos: null, Minor, NotAdult y Adult. Consulte las definiciones de propiedades del grupo de edad legal para obtener más información.
birthday DateTimeOffset El cumpleaños del usuario. El tipo de marca de tiempo representa la información de fecha y hora con el formato ISO 8601 y siempre pertenecen a la zona horaria UTC. Por ejemplo, medianoche en la zona horaria UTC del 1 de enero de 2014 sería 2014-01-01T00:00:00Z
businessPhones Colección string Los números de teléfono del usuario. NOTA: Aunque se trata de una colección de cadenas, solo se puede establecer un número para esta propiedad.
city Cadena La ciudad en la que se encuentra el usuario.
CompanyName String El nombre de la empresa a la que está asociado el usuario. Esta propiedad puede ser útil para describir la empresa de la que procede un usuario externo. La longitud máxima es de 64 caracteres.
consentProvidedForMinor consentProvidedForMinor Determina si se ha obtenido el consentimiento para menores. Valores permitidos: null, Granted, Denied y NotRequired. Consulte las definiciones de propiedades del grupo de edad legal para obtener más información.
country Cadena País o región en la que se encuentra el usuario; por ejemplo, "US" o "UK".
department Cadena El nombre del departamento en el que trabaja el usuario.
displayName Cadena El nombre del usuario que aparece en la libreta de direcciones. Suele ser la combinación del nombre del usuario, la inicial del segundo nombre y el apellido. Esta propiedad es necesaria cuando se crea un usuario y no se puede borrar durante las actualizaciones.
employeeId Cadena El identificador de empleado asignado al usuario en la organización. La longitud máxima es de 16 caracteres.
employeeType Cadena Es para capturar el tipo de trabajador de la empresa. Por ejemplo, Employee, Contractor, Consultant o Vendor. Solo se devuelve en $select.
givenName Cadena El nombre (nombre de pila) del usuario.
employeeHireDate DateTimeOffset La fecha de contratación del usuario. El tipo de marca de tiempo representa la información de fecha y hora con el formato ISO 8601 y siempre pertenece a la zona horaria UTC. Por ejemplo, medianoche en la zona horaria UTC del 1 de enero de 2014 sería 2014-01-01T00:00:00Z.
interests Colección string Una lista para que el usuario describa sus intereses.
jobTitle Cadena El puesto del usuario.
mail Cadena La dirección SMTP del usuario (por ejemplo, la dirección jeff@contoso.onmicrosoft.com). Los cambios realizados en esta propiedad también actualizarán la colección de proxyAddresses del usuario para incluir el valor como una dirección SMTP. Para las cuentas de Azure AD B2C, esta propiedad solo se puede actualizar hasta diez veces con direcciones SMTP únicas.
mailNickname Cadena El alias de correo para el usuario. Esta propiedad debe especificarse cuando se crea un usuario.
mobilePhone String El número de teléfono móvil principal del usuario.
mySite String La dirección URL del sitio personal del usuario.
officeLocation String La ubicación de la oficina del lugar de trabajo del usuario.
onPremisesExtensionAttributes OnPremisesExtensionAttributes Contiene los extensionAttributes 1-15 para el usuario. Tenga en cuenta que los atributos de extensión individuales no se pueden seleccionar ni filtrar. Para un usuario de onPremisesSyncEnabled, el origen de autoridad para este conjunto de propiedades es la implementación local y es de solo lectura. Estos atributos de extensión se conocen también como atributos personalizados de Exchange 1-15.
onPremisesImmutableId String Esta propiedad se usa para asociar una cuenta de usuario de Active Directory local a su objeto de usuario Azure AD. Esta propiedad debe especificarse al crear una nueva cuenta de usuario en Graph si usa un dominio federado para la propiedad userPrincipalName(UPN) del usuario. Nota: no se pueden usar los caracteres $ y _ al especificar esta propiedad.
otherMails Colección string Una lista de direcciones de correo electrónico adicionales para el usuario. Por ejemplo: ["bob@contoso.com", "Robert@fabrikam.com"].
passwordPolicies String Especifica las directivas de contraseña para el usuario. Este valor es una enumeración con un valor posible DisableStrongPassword, que permite especificar contraseñas más débiles que la directiva predeterminada. DisablePasswordExpirationtambién se puede especificar. Los dos se pueden especificar juntos; por ejemplo: DisablePasswordExpiration, DisableStrongPassword.
passwordProfile PasswordProfile Especifica el perfil de contraseña del usuario. El perfil contiene la contraseña del usuario. Esta propiedad es necesaria cuando se crea un usuario. La contraseña del perfil debe cumplir los requisitos mínimos especificados por la propiedad passwordPolicies. De manera predeterminada, se requiere una contraseña segura. Los usuario federados no pueden usarla.

En el acceso delegado, la aplicación que realiza la llamada debe tener asignado el permiso delegado Directory.AccessAsUser.All en nombre del usuario que ha iniciado sesión. En el acceso de solo aplicación, la aplicación que realiza la llamada debe tener asignado el permiso de aplicación User.ReadWrite.All y al menos el rol de Azure AD de Administrador de usuarios.
pastProjects Colección string Una lista para que el usuario enumere sus últimos proyectos.
postalCode String El código postal de la dirección del usuario. El código postal es específico del país o de la región del usuario. En Estados Unidos, este atributo contiene el código postal.
preferredLanguage Cadena Idioma preferido para el usuario. Debe seguir el código ISO 639-1; por ejemplo, en-US.
responsibilities Colección string Una lista para que el usuario enumere sus responsabilidades.
schools Colección string Una lista para que el usuario enumere las escuelas a las que ha ido.
skills Colección string Una lista para que el usuario enumere sus aptitudes.
state Cadena El estado o la provincia de la dirección del usuario.
streetAddress String La dirección postal del lugar de trabajo del usuario.
surname Cadena El apellido (o apellidos) del usuario.
usageLocation Cadena Un código de país de dos letras (estándar ISO 3166). Necesario para los usuarios a los que se asignarán licencias debido a un requisito legal para comprobar la disponibilidad de los servicios en los países. Algunos ejemplos son: US, JPy GB. No admite valores NULL.
userPrincipalName Cadena Nombre principal de usuario (UPN) del usuario. El UPN es un nombre de inicio de sesión de estilo internet para el usuario basado en RFC 822 estándar de Internet. Por convención, debe asignarse al nombre de correo electrónico del usuario. El formato general es alias@dominio, donde el dominio debe estar presente en la colección de dominios comprobados del inquilino. Se puede acceder a los dominios comprobados del inquilino desde la propiedad verifiedDomains de la organización.
NOTA: Esta propiedad no puede contener caracteres de énfasis. Los caracteres siguientes no están permitidos A - Z, a - z, 0 - 9, ' . - _ ! # ^ ~. Para obtener la lista completa de caracteres permitidos, vea directivas de nombre de usuario.
userType Cadena Un valor de cadena puede utilizarse para clasificar los tipos de usuario en el directorio. Por ejemplo: Member e Guest.

Nota

  • Las siguientes propiedades no se pueden actualizar con una app con solo permisos de aplicación: aboutMe, birthday, employeeHireDate, interests, mySite, pastProjects, responsibilities, schools y skills.
  • Para actualizar las propiedades siguientes, debe especificarlas en su propia solicitud PATCH, sin incluir las demás propiedades enumeradas en la tabla anterior: aboutMe, birthday, interests, mySite, pastProjects, responsibilities, schools y skills.

Administración de extensiones y datos asociados

Use esta API para administrar el directorio, el esquema y las extensiones abiertas y sus datos para los usuarios como se indica a continuación:

  • Agregar, actualizar y almacenar datos en las extensiones de un usuario existente
  • Para las extensiones de directorio y esquema, quite los datos almacenados estableciendo el valor de la propiedad de extensión personalizada en null. Para las extensiones abiertas, use la API Eliminar extensión abierta.

Respuesta

Si se ejecuta correctamente, este método devuelve un código de respuesta 204 No Content.

Ejemplo

Ejemplo 1: actualice las propiedades del usuario con la sesión iniciada

Solicitud

En el ejemplo siguiente se muestra la solicitud.

PATCH https://graph.microsoft.com/v1.0/me
Content-type: application/json

{
  "businessPhones": [
    "+1 425 555 0109"
  ],
  "officeLocation": "18/2111"
}

Respuesta

En el ejemplo siguiente se muestra la respuesta.

HTTP/1.1 204 No Content

Ejemplo 2: actualice las propiedades del usuario con la sesión iniciada

Solicitud

En el ejemplo siguiente se muestra la solicitud.

PATCH https://graph.microsoft.com/v1.0/users/{id}
Content-type: application/json

{
  "businessPhones": [
    "+1 425 555 0109"
  ],
  "officeLocation": "18/2111"
}

Respuesta

En el ejemplo siguiente se muestra la respuesta.

HTTP/1.1 204 No Content

Ejemplo 3: actualice passwordProfile de un usuario para restablecer su contraseña

En el ejemplo siguiente, se muestra una solicitud para restablecer la contraseña de otro usuario.

Solicitud

PATCH https://graph.microsoft.com/v1.0/users/{id}
Content-type: application/json

{
  "passwordProfile": {
    "forceChangePasswordNextSignIn": false,
    "password": "xWwvJ]6NMw+bWH-d"
  }
}

Respuesta

HTTP/1.1 204 No Content

Ejemplo 4: agregue o actualice los valores de una extensión de esquema para un usuario

Puede actualizar o asignar un valor a una propiedad única o a todas las propiedades de la extensión.

Solicitud

PATCH https://graph.microsoft.com/v1.0/users/4562bcc8-c436-4f95-b7c0-4f8ce89dca5e
Content-type: application/json

{
    "ext55gb1l09_msLearnCourses": {
        "courseType": "Admin"
    }
}

Respuesta

HTTP/1.1 204 No Content

Nota: Para quitar el valor de la extensión de esquema del objeto de usuario, establezca la propiedad en null. Por ejemplo:

PATCH https://graph.microsoft.com/v1.0/users/4562bcc8-c436-4f95-b7c0-4f8ce89dca5e
Content-type: application/json

{
   "ext55gb1l09_msLearnCourses": null
}

Recursos adicionales