Benutzer: assignLicense

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.

Fügen Sie Lizenzen für den Benutzer hinzu oder entfernen Sie sie, um die Verwendung von Microsoft Cloud-Angeboten, für die das Unternehmen über Lizenzen verfügt, zu aktivieren oder zu deaktivieren. Beispielsweise kann eine organization über ein Microsoft 365 Enterprise E3-Abonnement mit 100 Lizenzen verfügen, und diese Anforderung weist eine dieser Lizenzen einem bestimmten Benutzer zu. Sie können auch einzelne Pläne aktivieren oder deaktivieren, die einem Abonnement zugeordnet sind. Die direkte Benutzerlizenzierung ist eine Alternative zur gruppenbasierten Lizenzierung.

Führen Sie eine GET subscribedSKUS-Anforderung aus, um die im Verzeichnis verfügbaren Abonnements abzurufen.

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) LicenseAssignment.ReadWrite.All AgentIdUser.ReadWrite.All, AgentIdUser.ReadWrite.IdentityParentedBy, Directory.ReadWrite.All, User.ReadWrite.All
Delegiert (persönliches Microsoft-Konto) Nicht unterstützt Nicht unterstützt
Application LicenseAssignment.ReadWrite.All AgentIdUser.ReadWrite.All, AgentIdUser.ReadWrite.IdentityParentedBy, Directory.ReadWrite.All, User.ReadWrite.All

Wichtig

In delegierten Szenarien mit Geschäfts-, Schul- oder Unikonten muss dem angemeldeten Benutzer eine unterstützte Microsoft Entra-Rolle oder eine benutzerdefinierte Rolle mit der microsoft.directory/users/assignLicense Rollenberechtigung zugewiesen werden. Die folgenden Rollen mit den geringsten Berechtigungen werden für diesen Vorgang unterstützt:

  • Verzeichnisautoren
  • Lizenzadministrator
  • Benutzeradministrator

HTTP-Anforderung

POST /users/{id | userPrincipalName}/assignLicense

Anforderungsheader

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

Anforderungstext

Geben Sie im Anforderungstext ein JSON-Objekt mit den folgenden Parametern an.

Parameter Typ Beschreibung
addLicenses assignedLicense Sammlung Eine Sammlung von assignedLicense-Objekten, die die hinzuzufügenden Lizenzen angeben. Sie können servicePlans, die einer Lizenz zugeordnet sind, deaktivieren, indem Sie die disabledPlans-Eigenschaft für ein zugewiesenes License-Objekt festlegen.
removeLicenses GUID-Sammlung Eine Auflistung von skuIds, die die zu entfernenden Lizenzen identifizieren. Erforderlich. Kann eine leere Sammlung sein.

Antwort

Bei erfolgreicher Ausführung gibt diese Methode den Antwortcode und ein aktualisiertes Benutzerobjekt im Antworttext zurück200 OK.

Beispiele

Beispiel 1: Zuweisen von Lizenzen an den angemeldeten Benutzer

Anforderung

POST https://graph.microsoft.com/beta/me/assignLicense
Content-type: application/json

{
    "addLicenses": [
        {
            "disabledPlans": [
                "8a256a2b-b617-496d-b51b-e76466e88db0"
            ],
            "skuId": "84a661c4-e949-4bd2-a560-ed7766fcaf2b"
        },
        {
            "disabledPlans": [],
            "skuId": "f30db892-07e9-47e9-837c-80727f46fd3d"
        }
    ],
    "removeLicenses": []
}

Antwort

Hinweis: Das hier gezeigte Antwortobjekt kann zur besseren Lesbarkeit gekürzt werden.

HTTP/1.1 200 OK
Content-type: application/json

{
  "accountEnabled": true,
  "assignedLicenses": [
        {
            "disabledPlans": [
                "8a256a2b-b617-496d-b51b-e76466e88db0"
            ],
            "skuId": "84a661c4-e949-4bd2-a560-ed7766fcaf2b"
        },
        {
            "disabledPlans": [],
            "skuId": "f30db892-07e9-47e9-837c-80727f46fd3d"
        }
    ],
  "city": "Nairobi",
  "companyName": "Contoso"
}

Beispiel 2: Entfernen von Lizenzen des angemeldeten Benutzers

Anforderung

POST https://graph.microsoft.com/beta/me/assignLicense
Content-type: application/json

{
    "addLicenses": [],
    "removeLicenses": [
        "f30db892-07e9-47e9-837c-80727f46fd3d",
        "84a661c4-e949-4bd2-a560-ed7766fcaf2b"
    ]
}

Antwort

Hinweis: Das hier gezeigte Antwortobjekt kann zur besseren Lesbarkeit gekürzt werden.

HTTP/1.1 200 OK
Content-type: application/json

{
  "accountEnabled": true,
  "assignedLicenses": [],
  "city": "Nairobi",
  "companyName": "Contoso"
}