Compartilhar via


accessPackage: getApplicablePolicyRequirements

Namespace: microsoft.graph

Importante

As APIs na versão /beta no Microsoft Graph estão sujeitas a alterações. Não há suporte para o uso dessas APIs em aplicativos de produção. Para determinar se uma API está disponível na v1.0, use o seletor Versão.

No Microsoft Entra gestão de direitos, esta ação obtém uma lista de objetos accessPackageAssignmentRequestRequirements que o utilizador atualmente com sessão iniciada pode utilizar para criar um accessPackageAssignmentRequest. Cada objeto de requisito corresponde a uma política de atribuição de pacotes de acesso para a qual o utilizador com sessão iniciada tem permissão para pedir uma atribuição.

Esta API está disponível nas seguintes implementações de cloud nacionais.

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

Permissões

Escolha a permissão ou permissões marcadas como menos privilegiadas para esta API. Utilize uma permissão ou permissões com privilégios mais elevados apenas se a sua aplicação o exigir. Para obter detalhes sobre as permissões delegadas e de aplicação, veja Tipos de permissão. Para saber mais sobre estas permissões, veja a referência de permissões.

Tipo de permissão Permissões com menos privilégios Permissões com privilégios superiores
Delegado (conta corporativa ou de estudante) EntitlementManagement.Read.All EntitlementManagement.ReadWrite.All
Delegado (conta pessoal da Microsoft) Sem suporte. Sem suporte.
Aplicativo Sem suporte. Sem suporte.

Dica

Em cenários delegados com contas escolares ou profissionais, o utilizador com sessão iniciada também tem de ter uma função de administrador com permissões de função suportadas através de uma das seguintes opções:

Em cenários apenas de aplicações, a aplicação de chamadas pode ser atribuída a uma das funções suportadas anteriores em vez da permissão da aplicação EntitlementManagement.ReadWrite.All . A função gestor de pacotes do Access tem menos privilégios do que a permissão da aplicação.EntitlementManagement.ReadWrite.All

Para obter mais informações, veja Delegação e funções na gestão de direitos e como delegar a governação de acesso aos gestores de pacotes de acesso na gestão de direitos.

Solicitação HTTP

POST /identityGovernance/entitlementManagement/accessPackages/{id}/getApplicablePolicyRequirements

Parâmetros de função

Nenhuma.

Cabeçalhos de solicitação

Nome Descrição
Autorização {token} de portador. Obrigatório. Saiba mais sobre autenticação e autorização.

Corpo da solicitação

Não forneça um corpo do pedido para este método se quiser obter uma lista de requisitos do pacote de acesso, como no exemplo 1. Se quiser obter requisitos de política para o âmbito do utilizador como no exemplo 2, tem de fornecer um corpo do pedido.

Resposta

Se for bem-sucedido, este método devolve um 200 OK código de resposta e uma coleção accessPackageAssignmentRequestRequirements no corpo da resposta, um objeto para cada política para a qual o utilizador é um allowedRequestor. Se existir uma política sem requisitos, o accessPackageAssignmentRequestRequirements tem false valores e null . Se não existirem políticas em que o utilizador seja um allowedRequestor, é devolvida uma coleção vazia.

Exemplos

Exemplo 1: Obter uma lista de requisitos do pacote de acesso para criar um pacote de acesso

Solicitação

O exemplo a seguir mostra uma solicitação.

POST https://graph.microsoft.com/beta/identityGovernance/entitlementManagement/accessPackages/fb449cf8-3a59-4d86-bdfd-a1b7299681de/getApplicablePolicyRequirements

Resposta

O exemplo a seguir mostra a resposta.

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

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

{
    "value": [
        {
            "policyId": "d6322c23-04d6-eb11-b22b-c8d9d21f4e9a",
            "policyDisplayName": "Initial Policy",
            "policyDescription": "Initial Policy",
            "isApprovalRequired": false,
            "isApprovalRequiredForExtension": false,
            "isRequestorJustificationRequired": false,
            "questions": [
                {
                    "@odata.type": "#microsoft.graph.textInputQuestion",
                    "id": "0fd349e2-a3a7-4712-af08-660f29c12b90",
                    "isRequired": true,
                    "isAnswerEditable": null,
                    "sequence": 0,
                    "isSingleLineQuestion": true,
                    "text": {
                        "defaultText": "What is your display name",
                        "localizedTexts": []
                    }
                }
            ],
            "existingAnswers": [],
            "schedule": []
        }
    ]
}

Exemplo 2: Obter requisitos de política para um determinado âmbito de utilizador

Solicitação

O exemplo a seguir mostra uma solicitação.

POST https://graph.microsoft.com/beta/identityGovernance/entitlementManagement/accessPackages/b15419bb-5ffc-ea11-b207-c8d9d21f4e9a/getApplicablePolicyRequirements

{
        "subject": {
            "objectId": "5acd375c-8acb-45de-a958-fa0dd89259ad"
        }
    }

Resposta

O exemplo a seguir mostra a resposta.

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

{
    "value": [
        {
            "policyId": "d6322c23-04d6-eb11-b22b-c8d9d21f4e9a",
            "policyDisplayName": "Initial Policy",
            "policyDescription": "Initial Policy",
            "isApprovalRequired": false,
            "isApprovalRequiredForExtension": false,
            "isRequestorJustificationRequired": false,
            "questions": [
                {
                    "@odata.type": "#microsoft.graph.textInputQuestion",
                    "id": "5a7f2a8f-b802-4438-bec6-09599bc43e13",
                    "isRequired": false,
                    "isAnswerEditable": true,
                    "sequence": 0,
                    "isSingleLineQuestion": true,
                    "text": {
                        "defaultText": "Enter your mail",
                        "localizedTexts": []
                    }
                }
            ],
            "existingAnswers": [
                {
                    "@odata.type": "#microsoft.graph.answerString",
                    "displayValue": "admin@contoso.com",
                    "value": "admin@contoso.com",
                    "answeredQuestion": {
                        "@odata.type": "#microsoft.graph.textInputQuestion",
                        "id": "5a7f2a8f-b802-4438-bec6-09599bc43e13",
                        "isRequired": false,
                        "isAnswerEditable": true,
                        "sequence": 0,
                        "isSingleLineQuestion": true,
                        "text": {
                            "defaultText": "Enter your mail",
                            "localizedTexts": []
                        }
                    }
                }
            ],
            "schedule": []
        }
    ]
}

Exemplo 3: obter requisitos de política para requisitos de status de credenciais verificáveis

Solicitação

O exemplo a seguir mostra uma solicitação.

POST /identityGovernance/entitlementManagement/accessPackages(‘b15419bb-5ffc-ea11-b207-c8d9d21f4e9a’)/getApplicablePolicyRequirements

Resposta

O exemplo seguinte mostra a resposta se for a primeira vez que as credenciais são pedidas e o requerente não digitalizou o código QR nem clicou no URL.

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

{
  "value": [
        {
            "policyId": "a93f6641-bcba-ec11-9d14-001a7dda7113",
            "policyDisplayName": "VC Policy 1",
            "policyDescription": "VC Policy Description 1",
            "isApprovalRequiredForAdd": false,
            "isApprovalRequiredForUpdate": false,
            "isApprovalRequired": false,
            "isApprovalRequiredForExtension": false,
            "isCustomAssignmentScheduleAllowed": true,
            "allowCustomAssignmentSchedule": true,
            "isRequestorJustificationRequired": false,
            "schedule": {
                "startDateTime": null,
                "duration": "P365D",
                "stopDateTime": null,
                "expiration": {
                "endDateTime": null,
                "duration": "P365D",
                "type": "afterDuration"
                },
                "recurrence": null
            },
            "questions": [],
            "existingAnswers": [],
            "verifiableCredentialRequirementStatus": {
                "@odata.type": "#microsoft.graph.verifiableCredentialRequired",
                "expiryDateTime": "2022-05-10T23:32:47.8232759Z",
                "url": "openid://vc/?request_uri=https://beta.did.msidentity.com/v1.0/87654321-0000-0000-0000-000000000000/verifiablecredentials/request/e4ef27ca-eb8c-4b63-823b-3b95140eac11",
            }
        }
    ]
}

Se o requerente tiver analisado o código QR ou clicado no URL, a propriedade verifiableCredentialRequirementStatus está no seguinte formato.

"verifiableCredentialRequirementStatus": {
    "@odata.type": "#microsoft.graph.verifiableCredentialRetrieved",
    "expiryDateTime": "2022-05-10T23:32:47.8232759Z"
}

Se o requerente tiver apresentado uma credencial válida, a propriedade verifiableCredentialRequirementStatus está no seguinte formato.

"verifiableCredentialRequirementStatus": {
    "@odata.type": "#microsoft.graph.verifiableCredentialVerified"
}