Freigeben über


Benutzer aktualisieren

Namespace: microsoft.graph

Wichtig

Die APIs unter der /beta Version in Microsoft Graph können sich ändern. Die Verwendung dieser APIs in Produktionsanwendungen wird nicht unterstützt. Um festzustellen, ob eine API in v1.0 verfügbar ist, verwenden Sie die Version Selektor.

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 .
  • 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.

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.
  • 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.

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 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. Ein privilegierter Authentifizierungsadministrator, dem die delegierte Berechtigung Directory.AccessAsUser.All zugewiesen ist, ist die Rolle mit den geringsten Berechtigungen, die berechtigt ist, die accountEnabled-status aller Administratoren im Mandanten zu aktualisieren.
ageGroup ageGroup Legt die Altersgruppe des Benutzers fest. Zulässige Werte: null, Minor, NotAdult und Adult. Weitere Informationen finden Sie in den gesetzlichen Eigenschaftsdefinitionen für Altersgruppen.
assignedLicenses assignedLicense collection Die Lizenzen, die dem Benutzer zugewiesen sind. Lässt keine NULL-Werte zu.
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.
Ort String 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, Deniedund 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 String 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.
    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.
    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.
    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. Für Azure AD B2C-Konten kann diese Eigenschaft bis zu 10-mal mit eindeutigen SMTP-Adressen aktualisiert werden. Änderungen an dieser Eigenschaft aktualisiert auch die proxyAddresses-Auflistung des Benutzers, um den Wert als SMTP-Adresse einzuschließen. Kann nicht auf nullaktualisiert werden.
    mailNickname String 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 String 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 (geringste Berechtigung) oder Directory.ReadWrite.All (höhere Rechte) 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 String 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 String 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.

    Da die BenutzerressourceErweiterungen unterstützt, können Sie den PATCH Vorgang verwenden, um Ihre eigenen App-spezifischen Daten in benutzerdefinierten Eigenschaften einer Erweiterung in einem vorhandenen Benutzer instance hinzuzufügen, zu aktualisieren oder zu löschen.

    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 in der obigen Tabelle aufgeführten Eigenschaften anzugeben: 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/beta/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/beta/users/{id}
    Content-type: application/json
    
    {
        "businessPhones": [
            "+1 425 555 0109"
        ],
        "officeLocation": "18/2111",
        "authorizationInfo": {
            "certificateUserIds": [
                "5432109876543210@mil"
            ]
        }
    }
    

    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, die das Kennwort eines anderen Benutzers zurücksetzt. 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/beta/users/{id}
    Content-type: application/json
    
    {
      "passwordProfile": {
        "forceChangePasswordNextSignIn": true,
        "password": "xWwvJ]6NMw+bWH-d"
      }
    }
    

    Antwort

    HTTP/1.1 204 No Content
    

    Beispiel 4: 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/beta/users/{id}
    Content-type: application/json
    
    {
        "customSecurityAttributes":
        {
            "Engineering":
            {
                "@odata.type":"#Microsoft.DirectoryServices.CustomSecurityAttributeValue",
                "ProjectDate":"2022-10-01"
            }
        }
    }
    

    Antwort

    HTTP/1.1 204 No Content
    

    Beispiel 5: 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/beta/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