Licenshantering för ISV-app för SaaS-erbjudanden

Om du har aktiverat licenshantering för dina SaaS-erbjudanden (för närvarande endast för AppSource) i Partnercenter måste du integrera med usageRights Graph API för att söka efter licenser för kunder. Du använder usageRights API för att fastställa licensieringstillståndet för kunden som anropar din lösning så att du kan agera därefter.

Viktigt!

Azure Active Directory (Azure AD) Graph är inaktuell från och med den 30 juni 2023. Framöver gör vi inga ytterligare investeringar i Azure AD Graph. Azure AD Graph-API:er har inget serviceavtal eller underhållsåtagande utöver säkerhetsrelaterade korrigeringar. Investeringar i nya funktioner och funktioner görs endast i Microsoft Graph.

Vi drar tillbaka Azure AD Graph i stegvisa steg så att du har tillräckligt med tid för att migrera dina program till Microsoft Graph-API:er. Vid ett senare tillfälle som vi kommer att meddela kommer vi att blockera skapandet av nya program med hjälp av Azure AD Graph.

Mer information finns i Viktigt: Utfasning av Azure AD Graph Och Utfasning av Powershell-moduler.

usageRights API

API: usageRight resource type

Så här använder du usageRights API

Du kan anropa usageRights Graph API för att fastställa tillståndet för licensen för den inloggade användare som köpte prenumerationen på ditt erbjudande. Följ dessa steg för att anropa API:et:

  1. Hämta token för användarens räkning: se hämta åtkomst för en användares räkning
  2. Anropa Graph för att hämta användarens objekt-ID: se använda Microsoft Graph API
  3. Anropa usageRights API för att fastställa att användaren har licens till planen: se lista användaranvändningRättigheter

Kommentar

Du måste ha minsta behörighet för User.Read för att anropa usageRights. UsageRights-API:et är för närvarande i betaversion. När versionen har uppdaterats till V1 bör ISV:er uppgradera från betaversion till V1-version när den är tillgänglig.

Svarskoder

Kod 200 med svarstext:

{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#users('ea201692-eb91-44e0-b82a-9dd4c78ced32')/usageRights",
    "@odata.nextLink": "https://graph.microsoft.com/beta/users/ea201692-eb91-44e0-b82a-9dd4c78ced32/usageRights?$skiptoken=ZXlKamIzTnRiM05FWWxSdmEyVnVJam9pVzN0Y0ltTnZiWEJ2YzJsMFpWUnZhMlZ1WENJNmUxd2lkRzlyWlc1Y0lqcHVkV3hzTEZ3aWNtRnVaMlZjSWpwN1hDSnRhVzVjSWpwY0lqRkdSa1pHUmtaR1JrWkdSa1pHUmtaR1JrWkdSa1pHUmt.......",
    "value": [
        {
            "id": "635991be-b7a3-4dd4-a48c-f1d39732fe94",
            "catalogId": "ID of the Product",
            "serviceIdentifier": "ISV friendly ID of the product, this is same as planID in partner center",
            "state": "active"
        }
    ]
}

API-svar förklaras

  • Odata.nextLink: Om din begäran har flera resultat och måste vara växlingspunkt finns Odata.nextLink i svaret. Du kan använda detta för att visa resultatet tills inga fler Odata.nextLink-värden visas, vilket indikerar slutet på svaret.
  • serviceIdentifier: PlanId för den plan som kunden köpte.
  • state: Tillståndet för licensen. Du kan se alla möjliga värden för tillstånd i dokumentationen för usageRights API. Normalt bör användaren kunna köra din lösning om licenstillståndet är aktivt eller varningsmeddelandet. Alla andra tillstånd innebär att användarens prenumeration inte är i gott skick, antingen på grund av att den har upphört att gälla, är pausad för utebliven betalning osv.
  • Kod 200 med tomt svar: Detta beror sannolikt på att kunden inte har någon tilldelad licens.
  • Kod 400 Felaktig begäran: Detta beror troligen på att fält saknas när API:et anropas som ägartoken. Kontrollera api-anropsparametrarna.
  • Kod 403 Förbjuden: Detta beror sannolikt på att den har upphört att gälla eller på att en obehörig token har upphört att gälla. Kontrollera att du använder rätt Microsoft Entra-app för att autentisera usageRights Graph-API:et.
  • Kod 500 Internt serverfel: Försök igen med API-anropet. Kontakta Microsoft Support om felet kvarstår.

Kommentar

Om Den Microsoft Entra-app som du använder för SaaS-uppfyllande-API:et också används för usageRights-API:et kontrollerar du att klientorganisationen där tilläggsappen skapas antingen är den publicerande klientorganisationen eller den associerade klientorganisationen i partnercenter.

Använd följande steg för att fastställa klientorganisationen som Microsoft Entra-appen skapas under ingår i konfigurationen av partnercenter:

  1. Logga in på Microsoft Partner Center med det utgivarkonto som används för att publicera SaaS-erbjudandet.
  2. Under inställningslänken i det övre högra hörnet väljer du "Kontoinställningar" och sedan "klientorganisationer"
  3. Du kan se alla klienter som är associerade i Microsoft AI Cloud Partner Program-kontot.
  4. Den klientorganisation som är ägare till Microsoft Entra-appen bör finnas med i den här listan.
  5. Om klientorganisationen inte finns med i listan kan du använda knappen "Associera Azure-ID" för att länka klientorganisationen.

Screenshot illustrating the Microsoft Entra app list of tenants.