Share via


Criar roleEligibilityScheduleRequests

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.

Crie um novo objeto unifiedRoleEligibilityScheduleRequest . Essa operação permite que administradores e usuários qualificados adicionem, revoguem ou estendam atribuições qualificadas.

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

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

Permissões

Escolha a permissão ou as permissões marcadas como menos privilegiadas para essa API. Use uma permissão ou permissões privilegiadas mais altas 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 privilegiadas mais altas
Delegado (conta corporativa ou de estudante) RoleEligibilitySchedule.ReadWrite.Directory RoleManagement.ReadWrite.Directory
Delegado (conta pessoal da Microsoft) Sem suporte. Sem suporte.
Aplicativo RoleManagement.ReadWrite.Directory Indisponível.

Para cenários delegados, o usuário conectado também deve receber pelo menos uma das seguintes funções Microsoft Entra:

  • Para operações de leitura: Leitor Global, Operador de Segurança, Leitor de Segurança, Administrador de Segurança ou Administrador de Funções Privilegiadas
  • Para operações de gravação: Administrador de funções privilegiadas

Solicitação HTTP

POST /roleManagement/directory/roleEligibilityScheduleRequests

Cabeçalhos de solicitação

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

Corpo da solicitação

No corpo da solicitação, forneça uma representação JSON do objeto unifiedRoleEligibilityScheduleRequest .

A tabela a seguir mostra as propriedades opcionais e necessárias ao criar o unifiedRoleEligibilityScheduleRequest.

Propriedade Tipo Descrição
ação Cadeia de caracteres Representa o tipo da operação na atribuição de elegibilidade da função. Os valores possíveis são:
  • AdminAssign: para que os administradores atribuam elegibilidade de função a usuários ou grupos a funções.
  • AdminExtend: para os administradores estenderem as atribuições expirando.
  • AdminUpdate: para os administradores alterarem as atribuições de função existentes.
  • AdminRenew: para os administradores renovarem atribuições expiradas.
  • AdminRemove: para os administradores removerem usuários ou grupos de funções qualificadas.
  • UserAdd: para os usuários ativarem suas atribuições qualificadas.
  • UserExtend: para os usuários solicitarem para estender suas atribuições qualificadas expirando.
  • UserRemove: para os usuários desativarem suas atribuições qualificadas ativas.
  • UserRenew: para os usuários solicitarem a renovação de suas atribuições qualificadas expiradas.
appScopeId Cadeia de caracteres Identificador do escopo específico do aplicativo quando o escopo de atribuição for específico do aplicativo. O escopo de uma atribuição determina o conjunto de recursos para os quais a entidade de segurança recebeu acesso. Escopos de aplicativo são escopos definidos e compreendidos apenas por este aplicativo. Use / para escopos de aplicativo em todo o locatário. Use directoryScopeId para limitar o escopo a objetos de diretório específicos, por exemplo, unidades administrativas ou todos os usuários.
directoryScopeId Cadeia de caracteres Identificador do objeto de diretório que representa o escopo da atribuição. O escopo de uma atribuição determina o conjunto de recursos para os quais a entidade de segurança recebeu acesso. Escopos de diretório são escopos compartilhados armazenados no diretório que são compreendidos por vários aplicativos. Use / para escopo em todo o locatário. Use appScopeId para limitar o escopo apenas a um aplicativo.
isValidationOnly Booliano Um booliano que determina se a chamada é uma validação ou uma chamada real. Apenas defina essa propriedade se você quiser marcar se uma ativação está sujeita a regras adicionais como mfa antes de realmente enviar a solicitação.
Justificação Cadeia de caracteres Uma mensagem fornecida por usuários e administradores ao criar a solicitação sobre por que ela é necessária. Opcional quando a ação é AdminRemove.
principalId Cadeia de caracteres Identificador da entidade de segurança à qual a atribuição está sendo concedida. Por exemplo, um usuário ou um grupo. Para grupos, eles devem ser atribuíveis a funções, ou seja, isAssignableToRole da propriedade do grupo definida como true.
roleDefinitionId Cadeia de caracteres Identificador do unifiedRoleDefinition para o qual a atribuição é. Obrigatório. Somente leitura.
scheduleInfo requestSchedule O objeto de agendamento da solicitação de atribuição de função. Essa propriedade não é necessária quando a ação é AdminRemove.
ticketInfo ticketInfo O objeto ticketInfo anexado à solicitação de atribuição de função que inclui detalhes do número do tíquete e do sistema de tíquetes. Opcional.

Resposta

Se for bem-sucedido, esse método retornará um 201 Created código de resposta e um objeto unifiedRoleEligibilityScheduleRequest no corpo da resposta.

Exemplos

Exemplo 1: Administração atribuir uma solicitação de agendamento de qualificação de função

Na solicitação a seguir, o administrador cria uma solicitação para atribuir a elegibilidade de uma função identificada por fdd7a751-b60b-444a-984c-02652fe8fa1c uma entidade identificada por id07706ff1-46c7-4847-ae33-3003830675a1. O escopo da elegibilidade é todos os objetos de diretório no locatário até 30 de junho de 2022 à meia-noite no horário utc.

Solicitação

POST https://graph.microsoft.com/beta/roleManagement/directory/roleEligibilityScheduleRequests
Content-Type: application/json

{
  "action": "AdminAssign",
  "justification": "Assign User Admin eligibility to IT Helpdesk (User) group",
  "roleDefinitionId": "fdd7a751-b60b-444a-984c-02652fe8fa1c",
  "directoryScopeId": "/",
  "principalId": "07706ff1-46c7-4847-ae33-3003830675a1",
  "scheduleInfo": {
    "startDateTime": "2021-07-01T00:00:00Z",
    "expiration": {
      "endDateTime": "2022-06-30T00:00:00Z",
      "type": "AfterDateTime"
    }
  }
}

Resposta

O exemplo a seguir mostra a resposta.

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

HTTP/1.1 201 Created
Content-Type: application/json

{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#roleManagement/directory/roleEligibilityScheduleRequests/$entity",
    "id": "672c03bf-226a-42ec-a8b7-3bfab96064a1",
    "status": "Provisioned",
    "createdDateTime": "2021-07-26T18:08:03.1299669Z",
    "completedDateTime": "2021-07-26T18:08:06.2081758Z",
    "approvalId": null,
    "customData": null,
    "action": "AdminAssign",
    "principalId": "07706ff1-46c7-4847-ae33-3003830675a1",
    "roleDefinitionId": "fdd7a751-b60b-444a-984c-02652fe8fa1c",
    "directoryScopeId": "/",
    "appScopeId": null,
    "isValidationOnly": false,
    "targetScheduleId": "672c03bf-226a-42ec-a8b7-3bfab96064a1",
    "justification": "Assign User Admin eligibility to IT Helpdesk (User) group",
    "createdBy": {
        "application": null,
        "device": null,
        "user": {
            "displayName": null,
            "id": "fc9a2c2b-1ddc-486d-a211-5fe8ca77fa1f"
        }
    },
    "scheduleInfo": {
        "startDateTime": "2021-07-26T18:08:06.2081758Z",
        "recurrence": null,
        "expiration": {
            "type": "afterDateTime",
            "endDateTime": "2022-06-30T00:00:00Z",
            "duration": null
        }
    },
    "ticketInfo": {
        "ticketNumber": null,
        "ticketSystem": null
    }
}

Exemplo 2: Administração remover uma solicitação de agendamento de elegibilidade de função existente

Na solicitação a seguir, o administrador cria uma solicitação para revogar a elegibilidade de uma função identificada por fdd7a751-b60b-444a-984c-02652fe8fa1c uma entidade identificada por ID07706ff1-46c7-4847-ae33-3003830675a1.

Solicitação

POST https://graph.microsoft.com/beta/roleManagement/directory/roleEligibilityScheduleRequests
Content-Type: application/json

{
    "action": "AdminRemove",
    "justification": "Assign User Admin eligibility to IT Helpdesk (User) group",
    "roleDefinitionId": "fdd7a751-b60b-444a-984c-02652fe8fa1c",
    "directoryScopeId": "/",
    "principalId": "07706ff1-46c7-4847-ae33-3003830675a1",
    "scheduleInfo": {
        "startDateTime": "2021-07-26T18:08:06.2081758Z",
        "expiration": {
            "endDateTime": "2022-06-30T00:00:00Z",
            "type": "AfterDateTime"
        }
    }
}

Resposta

O exemplo a seguir mostra a resposta. A solicitação retorna um objeto de resposta que mostra o status de alterações de atribuição qualificadas anteriormente como Revoked. A entidade de segurança não verá mais sua função qualificada anteriormente.

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

HTTP/1.1 201 Created
Content-Type: application/json

{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#roleManagement/directory/roleEligibilityScheduleRequests/$entity",
    "id": "7f88a144-f9a9-4f8c-9623-39c321ae93c2",
    "status": "Revoked",
    "createdDateTime": "2021-08-06T17:59:12.4263499Z",
    "completedDateTime": null,
    "approvalId": null,
    "customData": null,
    "action": "AdminRemove",
    "principalId": "07706ff1-46c7-4847-ae33-3003830675a1",
    "roleDefinitionId": "fdd7a751-b60b-444a-984c-02652fe8fa1c",
    "directoryScopeId": "/",
    "appScopeId": null,
    "isValidationOnly": false,
    "targetScheduleId": null,
    "justification": "Assign User Admin eligibility to IT Helpdesk (User) group",
    "createdBy": {
        "application": null,
        "device": null,
        "user": {
            "displayName": null,
            "id": "fc9a2c2b-1ddc-486d-a211-5fe8ca77fa1f"
        }
    },
    "scheduleInfo": {
        "startDateTime": "2021-07-26T18:08:06.2081758Z",
        "recurrence": null,
        "expiration": {
            "type": "afterDateTime",
            "endDateTime": "2022-06-30T00:00:00Z",
            "duration": null
        }
    },
    "ticketInfo": {
        "ticketNumber": null,
        "ticketSystem": null
    }
}