Benutzer aktualisieren

Namespace: microsoft.graph

Aktualisieren der Eigenschaften eines user-Objekts. Nicht alle Eigenschaften können von Mitglieds- oder Gastbenutzern mit ihren Standardberechtigungen ohne Administratorrollen aktualisiert werden. Vergleichen Sie die Standardberechtigungen von Mitgliedern und Gästen, um zu sehen, welche Eigenschaften sie verwalten können.

Kunden über Microsoft Entra ID für Kunden können diesen API-Vorgang auch verwenden, um ihre Details zu aktualisieren. Die Liste der Eigenschaften, die sie aktualisieren können, finden Sie unter Standardbenutzerberechtigungen in Kundenmandanten .

Diese API ist in den folgenden nationalen Cloudbereitstellungen verfügbar.

Globaler Dienst US Government L4 US Government L5 (DOD) China, betrieben von 21Vianet

Berechtigungen

Wählen Sie für diese API die Als am wenigsten privilegierten Berechtigungen gekennzeichneten Berechtigungen aus. Verwenden Sie nur dann eine Berechtigung mit höheren Berechtigungen , wenn dies für Ihre App erforderlich ist. Ausführliche Informationen zu delegierten Berechtigungen und Anwendungsberechtigungen finden Sie unter Berechtigungstypen. Weitere Informationen zu diesen Berechtigungen finden Sie in der Berechtigungsreferenz.

Berechtigungstyp Berechtigungen mit den geringsten Berechtigungen Berechtigungen mit höheren Berechtigungen
Delegiert (Geschäfts-, Schul- oder Unikonto) User.ReadWrite User.ManageIdentities.All, User.EnableDisableAccount.All, User.ReadWrite.All, Directory.ReadWrite.All
Delegiert (persönliches Microsoft-Konto) User.ReadWrite Nicht verfügbar.
App User.ManageIdentities.All User.EnableDisableAccount.All, User.ReadWrite.All, Directory.ReadWrite.All

Hinweis

  • So aktualisieren Sie vertrauliche Benutzereigenschaften wie accountEnabled, mobilePhone und otherMails für Benutzer mit privilegierten Administratorrollen:
    • In delegierten Szenarien muss der App die delegierte Berechtigung Directory.AccessAsUser.All zugewiesen sein, und der aufrufende Benutzer muss über eine höhere Administratorrolle verfügen, wie unter Wer kann vertrauliche Aktionen ausführen angegeben.
    • In Reinen App-Szenarien muss der App eine Administratorrolle mit höheren Berechtigungen zugewiesen werden, wie unter Wer kann vertrauliche Aktionen ausführen angegeben.
  • Ihr persönliches Microsoft-Konto muss an einen Microsoft Entra Mandanten gebunden sein, um Ihr Profil mit der delegierten Berechtigung User.ReadWrite für ein persönliches Microsoft-Konto zu aktualisieren.
  • Zum Aktualisieren der Identitätseigenschaft ist die Berechtigung User.ManageIdentities.All erforderlich. Auch das Hinzufügen eines lokalen B2C-Kontos zu einem bestehenden user-Objekt ist nicht zulässig, es sei denn, das user-Objekt enthält bereits eine lokale Kontoidentität.

HTTP-Anforderung

PATCH /users/{id | userPrincipalName}

Anforderungsheader

Kopfzeile Wert
Authorization Bearer {token}. Erforderlich. Erfahren Sie mehr über die Authentifizierung und Autorisierung.
Content-Type application/json

Anforderungstext

Geben Sie im Anforderungstext nur die Werte für die Eigenschaften an, die aktualisiert werden sollen. Vorhandene Eigenschaften, die nicht im Anforderungstext enthalten sind, behalten ihre vorherigen Werte bei oder werden basierend auf Änderungen an anderen Eigenschaftswerten neu berechnet.

In der folgenden Tabelle sind die Eigenschaften angegeben, die aktualisiert werden können.

Eigenschaft Typ Beschreibung
aboutMe String Ein Freihandform-Texteingabefeld, in dem der Benutzer sich selbst beschreiben kann.
accountEnabled Boolesch true, wenn das Konto aktiviert ist; andernfalls false. Diese Eigenschaft ist erforderlich, wenn ein Benutzer erstellt wird. Ein globaler Administrator, dem die delegierte Berechtigung Directory.AccessAsUser.All zugewiesen ist, kann den Status accountEnabled aller Administratoren im Mandanten aktualisieren.
ageGroup ageGroup Legt die Altersgruppe des Benutzers fest. Zulässige Werte: null, Minor, NotAdultund Adult. Weitere Informationen finden Sie in den gesetzlichen Eigenschaftsdefinitionen für Altersgruppen.
birthday DateTimeOffset Der Geburtstag des Benutzers. Der Timestamp-Typ stellt die Datums- und Uhrzeitinformationen mithilfe des ISO 8601-Formats dar und wird immer in UTC-Zeit angegeben. Zum Beispiel, Mitternacht UTC am 1. Januar 2014 ist 2014-01-01T00:00:00Z
businessPhones String-Sammlung Die Telefonnummern für den Benutzer. HINWEIS: Obwohl dies eine String-Sammlung ist, kann nur eine Nummer für diese Eigenschaft festgelegt werden.
Ort Zeichenfolge Die Stadt, in der sich der Benutzer befindet.
CompanyName String Der Name des Unternehmens, dem der Benutzer zugeordnet ist. Diese Eigenschaft kann nützlich sein, um die Firma zu beschreiben, aus der ein externer Benutzer kommt. Die Höchstlänge beträgt 64 Zeichen.
consentProvidedForMinor consentProvidedForMinor Legt fest, ob die Einverständniserklärung für Minderjährige eingeholt wurde. Zulässige Werte: null, Granted, Denied und NotRequired. Weitere Informationen finden Sie in den gesetzlichen Eigenschaftsdefinitionen für Altersgruppen.
Land/Region Zeichenfolge Land/Region, in dem/der sich der Benutzer befindet, z. B. US oder UK.
customSecurityAttributes customSecurityAttributeValue Ein offener komplexer Typ, der den Wert eines benutzerdefinierten Sicherheitsattributs enthält, das einem Verzeichnisobjekt zugewiesen ist.

Um diese Eigenschaft zu aktualisieren, muss dem aufrufenden Prinzipal die Rolle "Attributzuweisungsadministrator" zugewiesen sein, und ihm muss die Berechtigung CustomSecAttributeAssignment.ReadWrite.All erteilt werden.
department Zeichenfolge Der Name der Abteilung, in der der Benutzer arbeitet.
displayName Zeichenfolge Der Name des Benutzers, der im Adressbuch angezeigt wird. Dies ist normalerweise eine Kombination aus dem Vornamen, der Initiale des weiteren Vornamens und des Nachnamens. Diese Eigenschaft ist erforderlich, wenn ein Benutzer erstellt wird, und sie kann während Updates nicht gelöscht werden.
employeeId String Die Mitarbeiter-ID, die dem Benutzer von der Organisation zugewiesen wurde. Die maximale Länge beträgt 16 Zeichen.
employeeType Zeichenfolge Erfasst den Arbeitnehmertyp des Unternehmens. Zum Beispiel Employee, Contractor, Consultant oder Vendor. Wird nur auf $select zurückgegeben.
givenName Zeichenfolge Der Vorname des Benutzers.
employeeHireDate DateTimeOffset Das Einstellungsdatum des Benutzers. Der Timestamp-Typ stellt die Datums- und Uhrzeitinformationen mithilfe des ISO 8601-Formats dar und wird immer in UTC-Zeit angegeben. Zum Beispiel, Mitternacht UTC am 1. Januar 2014 ist 2014-01-01T00:00:00Z
employeeLeaveDateTime DateTimeOffset Das Datum und die Uhrzeit, zu dem der Benutzer die organization verlassen hat oder verlässt. Der Zeitstempeltyp stellt Datums- und Uhrzeitinformationen im ISO 8601-Format dar und ist immer in UTC-Zeit angegeben. Zum Beispiel, Mitternacht UTC am 1. Januar 2014 ist 2014-01-01T00:00:00Z.

In delegierten Szenarien muss der aufrufende Benutzer über die Rolle "Globaler Administrator" verfügen, und der aufrufenden App müssen die delegierten Berechtigungen User.Read.All und User-LifeCycleInfo.ReadWrite.All zugewiesen sein.
employeeOrgData employeeOrgData Stellt organization Daten (z. B. division und costCenter) dar, die einem Benutzer zugeordnet sind.
interests String collection Eine Liste für den Benutzer, um dessen Interessen zu beschreiben.
jobTitle Zeichenfolge Die Position des Benutzers.
mail Zeichenfolge SMTP-Adresse für den Benutzer, z. B. jeff@contoso.com. Änderungen an dieser Eigenschaft aktualisieren auch die proxyAddresses-Auflistung des Benutzers, um den Wert als SMTP-Adresse einzuschließen. Für Azure AD B2C-Konten kann diese Eigenschaft bis zu 10-mal mit eindeutigen SMTP-Adressen aktualisiert werden. Kann nicht auf nullaktualisiert werden.
mailNickname Zeichenfolge Der E-Mail-Alias für den Benutzer. Diese Eigenschaft muss beim Erstellen eines Benutzers angegeben werden.
mobilePhone String Die Nummer des primären Mobiltelefons für den Benutzer.
mySite String Die URL für die persönliche Website des Benutzers.
officeLocation String Der Bürostandort der Firma des Benutzers
onPremisesExtensionAttributes onPremisesExtensionAttributes Enthält die Erweiterungsattribute 1 bis 15 für den Benutzer. Die einzelnen Erweiterungsattribute können nicht ausgewählt oder gefiltert werden. Für onPremisesSyncEnabled-Benutzende ist die Autoritätsquelle dieser Eigenschaftsgruppe die Lokale. Sie ist schreibgeschützt. Diese Erweiterungsattribute werden auch als benutzerdefinierte Exchange-Attribute 1-15 bezeichnet.
onPremisesImmutableId Zeichenfolge Diese Eigenschaft wird verwendet, um ihrem Microsoft Entra-Benutzerobjekt ein lokales Active Directory Benutzerkonto zuzuordnen. Diese Eigenschaft muss beim Erstellen eines neuen Benutzerkontos in Graph angegeben werden, wenn Sie eine Verbunddomäne für die UserPrincipalName-Eigenschaft (UPN) des Benutzers verwenden. Wichtig: Die $ Zeichen und _ können beim Angeben dieser Eigenschaft nicht verwendet werden.
otherMails Zeichenfolgensammlung Eine Liste zusätzlicher E-Mail-Adressen für den Benutzer; z. B.: ["bob@contoso.com", "Robert@fabrikam.com"].
passwordPolicies String Gibt die Kennwortrichtlinien für den Benutzer an. Dieser Wert ist eine Enumeration, deren einziger möglicher Wert DisableStrongPassword lautet. Damit können schwächere Kennwörter als in der Standardrichtlinie angegeben festgelegt werden. Auch DisablePasswordExpiration kann angegeben werden. Die beiden können zusammen angegeben werden; Beispiel: DisablePasswordExpiration, DisableStrongPassword.
passwordProfile PasswordProfile Gibt das Kennwortprofil für den Benutzer an. Das Profil enthält das Kennwort des Benutzers. Das Kennwort im Profil muss den Mindestanforderungen entsprechen, wie von der passwordPolicies-Eigenschaft angegeben. Standardmäßig ist ein sicheres Kennwort erforderlich. Als bewährte Methode legen Sie forceChangePasswordNextSignIn immer auf fest true. Dies kann nicht für Verbundbenutzer verwendet werden.

Im delegierten Zugriff muss der aufrufenden App im Namen des angemeldeten Benutzers die delegierte Berechtigung Directory.AccessAsUser.All zugewiesen werden. Beim reinen Anwendungszugriff muss der aufrufenden App die Anwendungsberechtigung User.ReadWrite.All und mindestens die Rolle BenutzeradministratorMicrosoft Entra zugewiesen werden.
pastProjects String collection Eine Liste zur Aufzählung der erledigten Projekte eines Benutzers.
postalCode String Die Postleitzahl für die Postanschrift des Benutzers. Die Postleitzahl ist für das Land/die Region des Benutzers spezifisch. In den USA enthält dieses Attribut den ZIP Code.
preferredLanguage String Die bevorzugte Sprache für den Benutzer. Muss im ISO 639-1-Code angegeben werden, z. B. en-US.
responsibilities String collection Eine Liste zur Aufzählung der Verantwortlichkeiten eines Benutzers.
schools String collection Eine Liste, in der der Benutzer die Schulen auflisten kann, die er besucht hat.
skills String collection Eine Liste zur Aufzählung der Qualifikationen eines Benutzers.
state Zeichenfolge Bundesland oder Kanton in der Adresse des Benutzers.
streetAddress String Die Straße der Firma des Benutzers.
surname Zeichenfolge Der Nachname des Benutzers.
usageLocation Zeichenfolge Ein aus zwei Buchstaben bestehender Ländercode (ISO-Standard 3166). Erforderlich für Benutzer, denen Lizenzen zugewiesen werden, aufgrund der gesetzlichen Vorschrift, dass die Verfügbarkeit von Diensten in einzelnen Ländern geprüft werden muss. Beispiele sind US, JP und GB. Lässt keine NULL-Werte zu.
userPrincipalName Zeichenfolge Der User Principal Name (UPN) des Benutzers. Der UPN ist ein Anmeldename im Internetformat für den Benutzer, der auf dem Internetstandard RFC 822 basiert. Gemäß der Konvention sollte er dem E-Mail-Namen des Benutzers zugeordnet sein. Das allgemeine Format lautet „alias@domäne“, wobei „domäne“ in der Sammlung der verifizierten Domänen des Mandanten vorhanden sein muss. Auf die verifizierten Domänen für den Mandanten kann über die verifiedDomains -Eigenschaft von organization zugegriffen werden.
HINWEIS: Diese Eigenschaft darf keine Akzentzeichen enthalten. Nur die folgenden Zeichen sind zulässig: A - Z, a - z, 0 - 9, ' . - _ ! # ^ ~. Eine vollständige Liste der zulässigen Zeichen finden Sie unter Richtlinien für Benutzernamen.
userType Zeichenfolge Ein Zeichenfolgenwert kann zum Klassifizieren der Benutzertypen in Ihrem Verzeichnis verwendet werden, z. B. Member und Guest.

Hinweis

  • Die folgenden Eigenschaften können nicht mittels einer App mit nur Anwendungsberechtigungen aktualisiert werden: aboutMe, birthday, employeeHireDate, interests, mySite, pastProjects, responsibilities, schools und skills.
  • Um die folgenden Eigenschaften zu aktualisieren, müssen Sie sie in ihrer eigenen PATCH-Anforderung angeben, ohne die anderen Eigenschaften einzufügen: aboutMe, birthday, interests, mySite, pastProjects, responsibilities, schools und skills.

Erweiterungen und zugehörige Daten verwalten

Verwenden Sie diese API, um Verzeichnis-, Schema- und offene Erweiterungen und deren Daten für Benutzer wie folgt zu verwalten:

  • Hinzufügen, Aktualisieren und Speichern von Daten in den Erweiterungen für einen vorhandenen Benutzer
  • Entfernen Sie für Verzeichnis- und Schemaerweiterungen alle gespeicherten Daten, indem Sie den Wert der benutzerdefinierten Erweiterungseigenschaft auf null festlegen. Für offene Erweiterungen die API zum Löschen offener Erweiterungen verwenden.

Antwort

Wenn die Methode erfolgreich verläuft, wird der Antwortcode 204 No Content zurückgegeben.

Beispiel

Beispiel 1: Aktualisieren der Eigenschaften des angemeldeten Benutzers

Anfrage

Das folgende Beispiel zeigt eine Anfrage.

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

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

Antwort

Das folgende Beispiel zeigt die Antwort.

HTTP/1.1 204 No Content

Beispiel 2: Aktualisieren der Eigenschaften des angegebenen Benutzers

Anfrage

Das folgende Beispiel zeigt eine Anfrage.

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

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

Antwort

Das folgende Beispiel zeigt die Antwort.

HTTP/1.1 204 No Content

Beispiel 3: Aktualisieren des passwordProfiles eines Benutzers und Zurücksetzen des Kennworts

Das folgende Beispiel zeigt eine Anforderung zum Zurücksetzen des Kennworts eines anderen Benutzers. Als bewährte Methode legen Sie forceChangePasswordNextSignIn immer auf fest true.

Anforderung

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

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

Antwort

HTTP/1.1 204 No Content

Beispiel 4: Hinzufügen oder Aktualisieren der Werte einer Schemaerweiterung für einen Benutzer

Sie können einen Wert einer einzelnen Eigenschaft oder allen Eigenschaften in der Erweiterung aktualisieren oder zuweisen.

Anforderung

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

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

Um den Wert der Schemaerweiterung aus dem Benutzerobjekt zu entfernen, legen Sie die ext55gb1l09_msLearnCourses -Eigenschaft auf fest null.

Antwort

HTTP/1.1 204 No Content

Beispiel 5: Zuweisen eines benutzerdefinierten Sicherheitsattributes mit einem Zeichenfolgenwert zu einem Benutzer

Das folgende Beispiel zeigt, wie sie einem Benutzer ein benutzerdefiniertes Sicherheitsattribute mit einem Zeichenfolgenwert zuweisen.

  • Attributsatz: Engineering
  • Attribut: ProjectDate
  • Attributdatentyp: Zeichenfolge
  • Attributwert: "2022-10-01"

Um benutzerdefinierte Sicherheitsattribute zuzuweisen, muss dem aufrufenden Prinzipal die Rolle "Attributzuweisungsadministrator" zugewiesen werden, und dem aufrufenden Prinzipal muss die Berechtigung CustomSecAttributeAssignment.ReadWrite.All erteilt werden.

Beispiele für benutzerdefinierte Sicherheitsattributezuweisungen finden Sie unter Beispiele: Zuweisen, Aktualisieren, Auflisten oder Entfernen von benutzerdefinierten Sicherheitsattributen mithilfe des Microsoft Graph-API.

Anforderung

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

{
    "customSecurityAttributes":
    {
        "Engineering":
        {
            "@odata.type":"#Microsoft.DirectoryServices.CustomSecurityAttributeValue",
            "ProjectDate":"2022-10-01"
        }
    }
}

Antwort

HTTP/1.1 204 No Content