usuário: assignLicense

Namespace: microsoft.graph

Adicione ou remova licenças para o usuário habilitar ou desabilitar o uso das ofertas de nuvem da Microsoft para as quais a empresa tem licenças. Por exemplo, uma organização pode ter uma assinatura do Microsoft 365 Enterprise E3 com 100 licenças e essa solicitação atribui uma dessas licenças a um usuário específico. Você também pode habilitar e desabilitar planos específicos associados a uma assinatura. O método de licenciamento direto de usuário é uma alternativa ao licenciamento baseado em grupo.

Essa API está disponível nas seguintes implantações de nuvem nacional.

Serviço global Governo dos EUA L4 US Government L5 (DOD) China operada pela 21Vianet

Permissões

Escolha a(s) permissão(s) marcada(s) como menos privilegiada(s) para essa API. Use uma permissão ou permissões com privilégios mais altos somente se o aplicativo exigir. Para obter detalhes sobre permissões delegadas e de aplicativo, consulte Tipos de permissão. Para saber mais sobre essas permissões, consulte a referência de permissões.

Tipo de permissão Permissões menos privilegiadas Permissões com privilégios mais elevados
Delegado (conta corporativa ou de estudante) LicenseAssignment.ReadWrite.All AgentIdUser.ReadWrite.All, AgentIdUser.ReadWrite.IdentityParentedBy, Directory.ReadWrite.All, User.ReadWrite.All
Delegado (conta pessoal da Microsoft) Sem suporte. Sem suporte.
Application LicenseAssignment.ReadWrite.All AgentIdUser.ReadWrite.All, AgentIdUser.ReadWrite.IdentityParentedBy, Directory.ReadWrite.All, User.ReadWrite.All

Importante

Em cenários delegados com contas corporativas ou de estudante, o usuário conectado deve receber uma função do Microsoft Entra com suporte ou uma função personalizada com a permissão de microsoft.directory/users/assignLicense função. As seguintes funções menos privilegiadas têm suporte para essa operação:

  • Escritores de diretório
  • Administrador de licenças
  • Administrador do usuário

Solicitação HTTP

POST /users/{id | userPrincipalName}/assignLicense

Cabeçalhos de solicitação

Cabeçalho Valor
Autorização {token} de portador. Obrigatório. Saiba mais sobre autenticação e autorização.
Content-Type application/json

Corpo da solicitação

Forneça um objeto JSON com os seguintes parâmetros no corpo da solicitação.

Parâmetro Tipo Descrição
addLicenses Coleção assignedLicense Uma coleção de objetos assignedLicense que especifica as licenças a adicionar. Você pode desabilitar servicePlans associados a uma licença definindo a propriedade disabledPlans em um objeto assignedLicense .
removeLicenses Coleção de GUIDs Uma coleção de skuIds que identificam as licenças a serem removidas. Obrigatório. Pode ser uma coleção vazia.

Resposta

Se bem-sucedido, este método retorna o código de resposta 200 OK e o objeto user no corpo da resposta.

Exemplos

Exemplo 1: Atribuir licenças ao usuário conectado

Solicitação

POST https://graph.microsoft.com/v1.0/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": []
}

Resposta

Observação: o objeto de resposta mostrado aqui pode ser encurtado para legibilidade.

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"
}

Exemplo 2: remover licenças do usuário conectado

Solicitação

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

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

Resposta

Observação: o objeto de resposta mostrado aqui pode ser encurtado para legibilidade.

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

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