Freigeben über


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 externen Mandanten .
  • Für synchronisierte Benutzer wird die Möglichkeit, bestimmte Eigenschaften zu aktualisieren, zusätzlich durch die Autoritätsquelle bestimmt und ob die Synchronisierung aktiviert ist.

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

Weltweiter Service US Government L4 US Government L5 (DOD) China, betrieben von 21Vianet

Berechtigungen

Wählen Sie die Berechtigungen aus, die für diese API als am wenigsten privilegiert markiert sind. Verwenden Sie eine höhere Berechtigung oder Berechtigungen nur, wenn Ihre App dies erfordert. 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.
Anwendung User.ManageIdentities.All User.EnableDisableAccount.All, User.ReadWrite.All, Directory.ReadWrite.All

Berechtigungen für bestimmte Szenarien

  • 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.
  • 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 werden, und der angemeldete Benutzer muss über eine höhere Administratorrolle verfügen, wie unter Wer kann vertrauliche Aktionen ausführen kann angegeben ist.
    • In reinen App-Szenarien muss der App zusätzlich zu Den Microsoft Graph-Berechtigungen eine Administratorrolle mit höheren Berechtigungen zugewiesen werden, wie unter Wer kann vertrauliche Aktionen ausführen angegeben ist.
  • So aktualisieren Sie die EmployeeLeaveDateTime-Eigenschaft :
    • In delegierten Szenarien benötigt der Administrator die Rolle "Globaler Administrator ". Der App müssen die delegierten Berechtigungen User.Read.All und User-LifeCycleInfo.ReadWrite.All gewährt werden.
    • In reinen App-Szenarien mit Microsoft Graph-Berechtigungen muss der App die Berechtigungen User.Read.All und User-LifeCycleInfo.ReadWrite.All gewährt werden.
  • So aktualisieren Sie die customSecurityAttributes-Eigenschaft :
    • In delegierten Szenarien muss dem Administrator die Rolle Attributzuweisungsadministrator zugewiesen werden, und der App muss die Berechtigung CustomSecAttributeAssignment.ReadWrite.All gewährt werden.
    • In reinen App-Szenarien mit Microsoft Graph-Berechtigungen muss der App die Berechtigung CustomSecAttributeAssignment.ReadWrite.All erteilt werden.
  • User-Mail.ReadWrite.All ist die Berechtigung mit den geringsten Berechtigungen zum Aktualisieren der otherMails-Eigenschaft .
  • User-PasswordProfile.ReadWrite.All ist die Berechtigung mit den geringsten Berechtigungen zum Aktualisieren der passwordProfile-Eigenschaft .
  • User-Phone.ReadWrite.All ist die Berechtigung mit den geringsten Berechtigungen zum Aktualisieren der Eigenschaften businessPhones und mobilePhone .
  • User.EnableDisableAccount.All + User.Read.All ist die Am wenigsten privilegierte Kombination von Berechtigungen zum Aktualisieren der accountEnabled-Eigenschaft .
  • User.ManageIdentities.All ist erforderlich , um die Identitätseigenschaft zu aktualisieren.

HTTP-Anforderung

PATCH /users/{id | userPrincipalName}

Anforderungsheader

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

Anforderungstext

Geben Sie im Anforderungstext nur die Werte für zu aktualisierende Eigenschaften an. 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.
  • User.EnableDisableAccount.All + User.Read.All ist die Berechtigungskombination mit den geringsten Berechtigungen, die zum Aktualisieren dieser Eigenschaft erforderlich ist.
  • In delegierten Szenarien ist der privilegierte Authentifizierungsadministrator die Rolle mit den geringsten Berechtigungen, die diese Eigenschaft für alle Administratoren im Mandanten aktualisieren darf.
  • 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. ANMERKUNG: Obwohl dies eine Zeichenfolgenauflistung ist, kann für diese Eigenschaft nur eine Zahl festgelegt werden. User-Phone.ReadWrite.All ist die Berechtigung mit den geringsten Berechtigungen zum Aktualisieren dieser Eigenschaft.
    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 in delegierten Szenarien zu aktualisieren, muss dem aufrufenden Prinzipal die Rolle Attributzuweisungsadministrator zugewiesen werden, und der App muss die delegierte Berechtigung CustomSecAttributeAssignment.ReadWrite.All gewährt werden.
  • Um diese Eigenschaft in reinen App-Szenarien mit Microsoft Graph-Berechtigungen zu aktualisieren, muss der App die Anwendungsberechtigung 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.
  • Um diese Eigenschaft zu aktualisieren, muss der aufrufenden App die Berechtigungen User-LifeCycleInfo.Read.All und User.Read.All zugewiesen sein.
  • Um diese Eigenschaft in delegierten Szenarien zu aktualisieren, benötigt der Administrator die Rolle "Globaler Administrator".
  • employeeOrgData employeeOrgData Stellt organization Daten (z. B. division und costCenter) dar, die einem Benutzer zugeordnet sind.
    identities objectIdentity-Sammlung Stellt die Identitäten dar, mit denen Sie sich bei diesem Benutzerkonto anmelden können. Eine Identität kann von Microsoft, von Organisationen oder von Social Media-Identitäsanbietern wie Facebook, Google und Microsoft bereitgestellt und an ein Benutzerkonto gebunden werden. Jede Aktualisierung von Identitäten ersetzt die gesamte Sammlung, und Sie müssen die signInType-Identität userPrincipalName in der Sammlung angeben.

    ANMERKUNG: Das Hinzufügen eines lokalen B2C-Kontos zu einem vorhandenen Benutzerobjekt ist nicht zulässig, es sei denn, das Benutzerobjekt enthält bereits eine lokale Kontoidentität.
    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. User-Phone.ReadWrite.All ist die Berechtigung mit den geringsten Berechtigungen zum Aktualisieren dieser Eigenschaft.
    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"]. Um diese Eigenschaft zu aktualisieren, übergeben Sie alle E-Mail-Adressen, die der Benutzer haben soll. Andernfalls werden vorhandene Werte durch die von Ihnen angegebenen Werte überschrieben.

    User-Mail.ReadWrite.All ist die Berechtigung mit den geringsten Berechtigungen zum Aktualisieren dieser Eigenschaft.
    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.
  • User-PasswordProfile.ReadWrite.Allist die Berechtigung mit den geringsten Berechtigungen zum Aktualisieren dieser Eigenschaft.
  • In delegierten Szenarien ist die Rolle BenutzeradministratorMicrosoft Entra die Administratorrolle mit den geringsten Berechtigungen, die zum Aktualisieren dieser Eigenschaft unterstützt wird.
  • 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.

    • 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 (geringste Berechtigung) oder Directory.ReadWrite.All (höhere Rechte) und mindestens die Rolle BenutzeradministratorMicrosoft Entra zugewiesen werden.

    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