Gerenciamento de licenças de aplicativos ISV para ofertas de SaaS
Se você habilitou o gerenciamento de licenças para suas ofertas de SaaS (atualmente disponível apenas para AppSource) no Partner Center, deverá integrar com a API usageRights Graph para procurar licenças de clientes. Você usa a API usageRights para determinar o estado de licenciamento do cliente que está chamando sua solução para que possa agir de acordo.
Importante
O Azure Ative Directory (Azure AD) Graph foi preterido a partir de 30 de junho de 2023. No futuro, não faremos mais investimentos no Azure AD Graph. As APIs do Azure AD Graph não têm SLA ou compromisso de manutenção além das correções relacionadas à segurança. Os investimentos em novos recursos e funcionalidades só serão feitos no Microsoft Graph.
Desativaremos o Azure AD Graph em etapas incrementais para que você tenha tempo suficiente para migrar seus aplicativos para APIs do Microsoft Graph. Em uma data posterior que anunciaremos, bloquearemos a criação de novos aplicativos usando o Azure AD Graph.
Para saber mais, consulte Importante: Aposentadoria do Azure AD Graph e Descontinuação do módulo Powershell.
API usageRights
API: tipo de recurso usageRight
Como usar a API usageRights
Você pode chamar a API usageRights Graph para determinar qual é o estado da licença para o usuário conectado que comprou a assinatura da sua oferta. Para chamar a API, siga estes passos:
- Obter usuário em nome do token: consulte Obter acesso em nome de um usuário
- Gráfico de chamadas para obter a ID do objeto do usuário: consulte usar a API do Microsoft Graph
- Chame a API usageRights para determinar se o usuário tem Licença para o plano: consulte a lista userusageRights
Nota
Você precisa ter permissões mínimas de User.Read para chamar usageRights. A API usageRights está atualmente em versão beta. Depois que a versão for atualizada para V1, os ISVs devem atualizar da versão beta para a versão V1 quando disponível.
Códigos de resposta
Código 200 com corpo de resposta:
{
"@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"
}
]
}
Explicação da resposta da API
- Odata.nextLink: Se o seu pedido tiver vários resultados e precisar de ser paginado, Odata.nextLink está na resposta. Você pode usar isso para paginar os resultados até que não apareçam mais valores Odata.nextLink, o que indica o final da resposta.
- serviceIdentifier: O planId do plano que o cliente comprou.
- state: O estado da licença. Você pode ver todos os valores possíveis de estado na documentação da API usageRights. Normalmente, o usuário deve ser capaz de executar sua solução se o estado da licença estiver ativo ou aviso. Qualquer outro estado significa que a assinatura do usuário não está em boas condições, porque expirou, está suspensa por falta de pagamento, etc.
- Código 200 com resposta vazia: Isso provavelmente ocorre porque o cliente não tem uma licença atribuída.
- Código 400 Solicitação incorreta: Isso provavelmente ocorre devido à falta de campos ao chamar a API como token de portador. Verifique os parâmetros da chamada de API.
- Código 403 Proibido: Isso provavelmente é devido a um token expirado ou não autorizado. Verifique se você está usando o aplicativo Microsoft Entra correto para autenticar a API usageRights Graph.
- Código 500 Erro interno do servidor: Tente novamente a chamada da API. Se o erro persistir, contacte o Suporte da Microsoft.
Nota
Se o aplicativo Microsoft Entra que você usa para a API de preenchimento SaaS também for usado para a API usageRights, verifique se o locatário sob o qual o aplicativo de adição é criado é o locatário de publicação OU o locatário associado no centro de parceiros.
Use as etapas a seguir para determinar o locatário no qual o Microsoft Entra App é criado faz parte da configuração do centro de parceiros:
- Inicie sessão no Microsoft Partner Center com a conta de editor utilizada para publicar a oferta SaaS.
- No link de configurações no canto superior direito, selecione "Configurações da conta" e, em seguida, "Inquilinos"
- Você pode ver todos os locatários associados na conta do Microsoft AI Cloud Partner Program.
- O locatário proprietário do aplicativo Microsoft Entra deve estar nessa lista.
- Se o locatário não estiver na lista, você poderá usar o botão "Associar ID do Azure" para vincular o locatário.