ISV-app-licentiebeheer voor SaaS-aanbiedingen

Als u licentiebeheer hebt ingeschakeld voor uw SaaS-aanbiedingen (momenteel alleen beschikbaar voor AppSource) in partnercentrum, moet u integreren met usageRights Graph API om licenties van klanten op te zoeken. U gebruikt de UsageRights-API om de licentiestatus te bepalen van de klant die uw oplossing aanroept, zodat u dienovereenkomstig kunt handelen.

Belangrijk

Azure Active Directory (Azure AD) Graph is vanaf 30 juni 2023 afgeschaft. In de toekomst doen we geen verdere investeringen in Azure AD Graph. Azure AD Graph-API's hebben geen SLA of onderhoudsverplichting buiten beveiligingsgerelateerde oplossingen. Investeringen in nieuwe functies en functionaliteiten worden alleen gedaan in Microsoft Graph.

Azure AD Graph wordt in incrementele stappen buiten gebruik gesteld, zodat u voldoende tijd hebt om uw toepassingen te migreren naar Microsoft Graph-API's. Op een later tijdstip dat we zullen aankondigen, blokkeren we het maken van nieuwe toepassingen met behulp van Azure AD Graph.

Zie Belangrijk: Buitengebruikstelling van Azure AD Graph en Afschaffing van Powershell-module voor meer informatie.

usageRights-API

API: resourcetype UsageRight

UsageRights-API gebruiken

U kunt usageRights Graph API aanroepen om te bepalen wat de status is van de licentie voor de aangemelde gebruiker die het abonnement van uw aanbieding heeft gekocht. Voer de volgende stappen uit om de API aan te roepen:

  1. Gebruiker namens token ophalen: zie Toegang krijgen namens een gebruiker
  2. Roep Graph aan om de object-id van de gebruiker op te halen: zie De Microsoft Graph API gebruiken
  3. Roep de UsageRights-API aan om te bepalen of de gebruiker een licentie voor het plan heeft: zie lijst met gebruikersgebruikRights

Notitie

U moet minimaal user.read-machtigingen hebben om usageRights aan te roepen. De usageRights-API is momenteel in bètaversie. Nadat de versie is bijgewerkt naar V1, moeten ISV's een upgrade uitvoeren van de bètaversie naar de V1-versie, indien beschikbaar.

Antwoordcodes

Code 200 met antwoordtekst:

{
    "@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"
        }
    ]
}

Uitleg van API-antwoord

  • Odata.nextLink: Als uw aanvraag meerdere resultaten heeft en moet worden gepaginad, staat Odata.nextLink in het antwoord. U kunt deze gebruiken om de resultaten te pagina's totdat er geen Odata.nextLink-waarden meer worden weergegeven, wat het einde van het antwoord aangeeft.
  • serviceIdentifier: de planId van het abonnement dat de klant heeft gekocht.
  • status: de status van de licentie. U kunt alle mogelijke statuswaarden bekijken in de documentatie van de UsageRights-API. Normaal gesproken moet de gebruiker uw oplossing kunnen uitvoeren als de licentiestatus actief of waarschuwing is. Elke andere status betekent dat het abonnement van de gebruiker niet in goede staat is omdat het is verlopen, wordt opgeschort voor niet-betaling, enzovoort.
  • Code 200 met een leeg antwoord: dit komt waarschijnlijk doordat de klant geen licentie heeft toegewezen.
  • Code 400 Ongeldige aanvraag: dit komt waarschijnlijk door ontbrekende velden tijdens het aanroepen van de API, zoals Bearer-token. Controleer de parameters voor uw API-aanroep.
  • Code 403 Verboden: dit komt waarschijnlijk door verlopen of niet-geautoriseerd token. Controleer of u de juiste Microsoft Entra-app gebruikt om de usageRights Graph API te verifiëren.
  • Code 500 Interne serverfout: voer de API-aanroep opnieuw uit. Als de fout zich blijft voordoen, neemt u contact op met Microsoft Ondersteuning.

Notitie

Als de Microsoft Entra-app die u gebruikt voor de SaaS-fulfillment-API ook wordt gebruikt voor usageRights-API, moet u ervoor zorgen dat de tenant waaronder de app toevoegen wordt gemaakt, de publicatietenant of de bijbehorende tenant in het partnercentrum is.

Gebruik de volgende stappen om te bepalen onder welke tenant Microsoft Entra App wordt gemaakt, deel uitmaakt van de installatie van het partnercentrum:

  1. Meld u aan bij Microsoft Partner Center met het uitgeversaccount dat wordt gebruikt om de SaaS-aanbieding te publiceren.
  2. Selecteer onder de koppeling Instellingen in de rechterbovenhoek de optie Accountinstellingen en vervolgens Tenants
  3. U kunt alle tenants zien die zijn gekoppeld aan het Microsoft AI Cloud Partner Program-account.
  4. De tenant die de eigenaar van de Microsoft Entra-app is, moet in deze lijst staan.
  5. Als de tenant zich niet in de lijst bevindt, kunt u de knop Azure-id koppelen gebruiken om de tenant te koppelen.

Screenshot illustrating the Microsoft Entra app list of tenants.