Ottenere le licenze assegnate a un utente per gruppo di licenze

Come ottenere un elenco di licenze assegnate dall'utente per i gruppi di licenze specificati.

Prerequisiti

  • Credenziali descritte in Autenticazione del Centro per i partner. Questo scenario supporta l'autenticazione solo con le credenziali app + utente.

  • ID cliente (customer-tenant-id). Se non si conosce l'ID del cliente, è possibile cercarlo nel Centro per i partner selezionando l'area di lavoro Clienti , quindi il cliente dall'elenco dei clienti, quindi Account. Nella pagina Account del cliente cercare l'ID Microsoft nella sezione Informazioni sull'account del cliente. L'ID Microsoft corrisponde all'ID del cliente (customer-tenant-id).

  • Identificatore utente.

  • Elenco di uno o più identificatori del gruppo di licenze.

Ruoli GDAP

Sono necessari almeno uno dei ruoli GDAP seguenti:

  • Ruolo con autorizzazioni di lettura della directory
  • Amministratore licenze
  • Amministratore utenti
  • Ruolo con autorizzazioni di scrittura nella directory

C#

Per verificare quali licenze vengono assegnate a un utente dai gruppi di licenze specificati, iniziare creando un'istanza di [List/dotnet/api/system.collections.generic.list-1) di tipo LicenseGroupId e quindi aggiungere i gruppi di licenze all'elenco. Usare quindi il metodo IAggregatePartner.Customers.ById con l'ID cliente per identificare il cliente. Chiamare quindi il metodo Users.ById con l'ID utente per identificare l'utente. Ottenere quindi un'interfaccia per le operazioni di licenza utente del cliente dalla proprietà Licenses . Infine, passare l'elenco dei gruppi di licenze al metodo Get o GetAsync per recuperare la raccolta di licenze assegnate all'utente.

// string selectedCustomerUserId;
// string selectedCustomerId;
// IAggregatePartner partnerOperations;

// To get the group1 (Azure Active Directory (AAD)) assigned licenses.
List<LicenseGroupId> licenseGroupIds = new List<LicenseGroupId>(){ LicenseGroupId.Group1 };
var customerUserAadAssignedLicenses = partnerOperations.Customers.ById(selectedCustomerId).Users.ById(selectedCustomerUserId).Licenses.Get(licenseGroupIds);

// To get the group2 (Minecraft) assigned licenses.
List<LicenseGroupId> licenseGroupIds = new List<LicenseGroupId>(){ LicenseGroupId.Group2 };
var customerUserSfbAssignedLicenses = partnerOperations.Customers.ById(selectedCustomerId).Users.ById(selectedCustomerUserId).Licenses.Get(licenseGroupIds);

// To get both AAD and Minecraft assigned licenses.
List<LicenseGroupId> licenseGroupIds = new List<LicenseGroupId>(){ LicenseGroupId.Group1, LicenseGroupId.Group2 };
var customerUserBothAadAndSfbAssignedLicenses = partnerOperations.Customers.ById(selectedCustomerId).Users.ById(selectedCustomerUserId).Licenses.Get(licenseGroupIds);

Richiesta REST

Sintassi della richiesta

metodo URI della richiesta
GET {baseURL}/v1/customers/{customer-id}/users/{user-id}/licenses?licenseGroupIds=Group1 HTTP/1.1
GET {baseURL}/v1/customers/{customer-id}/users/{user-id}/licenses?licenseGroupIds=Group2 HTTP/1.1
GET {baseURL}/v1/customers/{customer-id}/users/{user-id}/licenses?licenseGroupIds=Group1&licenseGroupIds=Group2 HTTP/1.1

Parametro URI

Usare il percorso e i parametri di query seguenti per identificare il cliente, l'utente e i gruppi di licenze.

Nome Digita Obbligatorio Descrizione
customer-id string Stringa con formato GUID che identifica il cliente.
user-id string Stringa con formattazione GUID che identifica l'utente.
licenseGroupIds string No Valore di enumerazione che indica il gruppo di licenze delle licenze assegnate. Valori validi: Group1, Group2 Group1: questo gruppo include tutti i prodotti la cui licenza può essere gestita nell'ID Microsoft Entra. Group2: questo gruppo ha solo licenze di prodotto Minecraft.

Intestazioni delle richieste

Per altre informazioni, vedi Intestazioni REST del Centro per i partner.

Corpo della richiesta

Nessuno.

Esempio di richiesta

GET https://api.partnercenter.microsoft.com/v1/customers/0c39d6d5-c70d-4c55-bc02-f620844f3fd1/users/482e2152-4b49-48ec-b715-823365ce3d4c/licenses?licenseGroupIds=Group1&licenseGroupIds=Group2 HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: a1d077e4-28b1-4578-b873-6d1a82fa1644
MS-CorrelationId: c8cb5a60-ae08-4afc-92f0-efc42adfa186
X-Locale: en-US
Host: api.partnercenter.microsoft.com

Risposta REST

In caso di esito positivo, il corpo della risposta contiene la raccolta di risorse license .

Codici di errore e di esito della risposta

Ogni risposta viene fornita con un codice di stato HTTP che ne indica l'esito e con informazioni di debug aggiuntive. Usa uno strumento di traccia di rete per leggere il codice, il tipo di errore e parametri aggiuntivi. Per l'elenco completo, vedere Codici di errore del Centro per i partner.

Risposta di esempio

HTTP/1.1 200 OK
Content-Type: application/json
MS-CorrelationId: 8a53b025-d5be-4d98-ab20-229d1813de76
MS-RequestId: b1317092-f087-471e-a637-f66523b2b94c
Date: June 24 2016 22:00:25 PST

{
    "totalCount": 2,
    "items": [{
            "servicePlans": [

            ],
            "productSku": {
                "id": "984df360-9a74-4647-8cf8-696749f6247a",
                "name": "Minecraft Education Edition Faculty",
                "skuPartNumber": "CFQ7TTC0K5DR/0002",
                "licenseGroupId": "group2"
            },
            "attributes": {
                "objectType": "License"
            }
        }, {
            "servicePlans": [{
                    "displayName": "Windows Defender Advanced Threat Protection",
                    "serviceName": "WINDEFATP",
                    "id": "871d91ec-ec1a-452b-a83f-bd76c7d770ef",
                    "capabilityStatus": "Assigned",
                    "targetType": "User"
                }, {
                    "displayName": "Windows 10 Enterprise E3",
                    "serviceName": "WIN10_PRO_ENT_SUB",
                    "id": "21b439ba-a0ca-424f-a6cc-52f954a5b111",
                    "capabilityStatus": "Assigned",
                    "targetType": "User"
                }
            ],
            "productSku": {
                "id": "1e7e1070-8ccb-4aca-b470-d7cb538cb07e",
                "name": "Windows 10 Enterprise E5",
                "skuPartNumber": "WIN_ENT_E5",
                "licenseGroupId": "group1"
            },
            "attributes": {
                "objectType": "License"
            }
        }
    ],
    "attributes": {
        "objectType": "Collection"
    }
}

Esempio di risposta (nessuna licenza corrispondente trovata)

Se non è possibile trovare licenze corrispondenti per i gruppi di licenze specificati, la risposta contiene una raccolta vuota con un elemento totalCount il cui valore è 0.

HTTP/1.1 200 OK
Content-Length: 71
Content-Type: application/json; charset=utf-8
MS-CorrelationId: c8cb5a60-ae08-4afc-92f0-efc42adfa186
MS-RequestId: a1d077e4-28b1-4578-b873-6d1a82fa1644
MS-CV: q05xrhUeDUKvhrFt.0
MS-ServerId: 030020525
Date: Fri, 09 Jun 2017 22:50:11 GMT

{
    "totalCount": 0,
    "items": [],
    "attributes": {
        "objectType": "Collection"
    }
}