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:
- Uma função no sistema de Gestão de Direitos em que as funções com menos privilégios são:
- Aceder ao gestor de pacotes. Esta é a opção com menos privilégios
- Proprietário do catálogo
- Mais funções de Microsoft Entra privilegiadas suportadas para esta operação:
- Administrador de Governação de Identidades
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"
}