Compartilhar via


Determine externamente os requisitos de aprovação de um pacote de acesso usando extensões personalizadas (versão prévia)

No gerenciamento de direitos, os aprovadores para solicitações de pacote de acesso podem ser atribuídos diretamente ou determinados dinamicamente. O gerenciamento de direitos dá suporte nativo aos aprovadores quando eles são o gerente de solicitantes, seu gerente de segundo nível ou um patrocinador de uma organização conectada:

Captura de tela do suporte nativo de aprovadores no gerenciamento de direitos.

Com a inclusão de extensões personalizadas que se conectam aos Aplicativos Lógicos do Azure, você pode determinar a aprovação com base em cada uma das propriedades de Estágio de Aprovação. Por exemplo, se o usuário que solicita um pacote de acesso estiver em um departamento em que a liderança foi alterada recentemente, as aprovações dinâmicas poderão consultar o sistema e atribuir o novo chefe de departamento como o aprovador.

Captura de tela do exemplo de determinação de aprovadores usando extensões personalizadas.

Este artigo orienta sobre como criar uma extensão personalizada, o Aplicativo Lógico do Azure subjacente, definir sua identidade e função atribuídas pelo sistema no catálogo, editar a ação do Aplicativo Lógico para implementar a lógica de negócios e testar para garantir que o aplicativo funcione corretamente.

Requisitos de licença

O uso desse recurso requer licenças do Microsoft Entra ID Governance ou do Microsoft Entra Suite. Para encontrar a licença certa para seus requisitos, confira Conceitos básicos de licenciamento do Microsoft Entra ID Governance.

Pré-requisitos

Criar a extensão personalizada e o Logic App do Azure

Para criar uma extensão personalizada e seu Aplicativo Lógico do Azure subjacente, você executará as seguintes etapas:

  1. Entre no Centro de administração do Microsoft Entra como pelo menos um proprietário de catálogo do catálogo em que a extensão personalizada estará localizada.

  2. Navegue até ID Governance>gerenciamento de permissões>catálogos.

  3. Na página de visão geral de Catálogos, selecione um catálogo existente onde sua extensão personalizada estará localizada ou crie um novo catálogo.

  4. Na página de catálogo específica em que você deseja criar sua extensão personalizada, selecione Extensões personalizadas. Captura de tela da página do catálogo em que a extensão personalizada está sendo adicionada.

  5. Selecione Adicionar uma extensão personalizada para adicionar um nome e uma descrição para a extensão personalizada. Quando terminar, selecione Avançar. Captura de tela dos conceitos básicos de extensões personalizadas.

  6. Na página Tipo de Extensão, selecione Fluxo de trabalho de solicitação (acionado quando um pacote de acesso é solicitado, aprovado, concedido ou removido) e selecione Avançar. Captura de tela da seleção do tipo de extensão para uma extensão personalizada.

  7. Na página Configuração de Extensão , para Comportamento, selecione Iniciar e aguardar, para os dados de resposta, selecione Estágio de Aprovação (Versão Prévia) e, em seguida, selecione Avançar.

  8. Na página Detalhes , escolha uma assinatura, um grupo de recursos e um nome para o aplicativo lógico que está sendo criado. Depois de inserir essas informações, selecione Criar um aplicativo lógico. Depois que o aplicativo lógico for criado, selecione Avançar.

  9. Na página Revisar + criar , verifique se todos os detalhes estão corretos e selecione Criar.

Referenciar a extensão personalizada em uma política de atribuição de pacote de acesso

Depois de criar a extensão personalizada e o aplicativo lógico, você pode referenciar a extensão personalizada em uma política de atribuição de pacote de acesso executando as seguintes etapas:

  1. Selecione o catálogo em que a extensão personalizada foi criada.

  2. Na página do catálogo, escolha pacotes de acesso e selecione o pacote de acesso relacionado à política que você deseja atualizar.

  3. Na página de visão geral do pacote de acesso, selecione Políticas e selecione a política a ser editada. Captura de tela da lista de políticas para um pacote de acesso.

  4. Na página Editar política em Solicitações, defina a caixa Exigir aprovação como sim e você poderá adicionar sua extensão personalizada como um aprovador. O exemplo aqui mostra a extensão personalizada sendo usada como o primeiro aprovador. Captura de tela da extensão personalizada como primeiro aprovador na política de pacote de acesso.

  5. Selecione Atualizar.

Depois de atualizado, você pode acessar a política editada e confirmar a alteração selecionando os detalhes do estágio de aprovação. Captura de tela dos detalhes editados do estágio de aprovação.

Definir a identidade atribuída pelo aplicativo lógico e atribuir sua função

Com o aplicativo lógico do Azure criado, você deve habilitar sua identidade atribuída pelo sistema e dar a ele a função adequada executando as seguintes etapas:

  1. Entre no portal do Azure e acesse o aplicativo de lógica com a função interna do Azure de pelo menos Colaborador do Aplicativo Lógico.

  2. Na página de visão geral do aplicativo de lógica, vá para Configurações>Identidade.

  3. Na página Identidade, habilite a identidade gerenciada atribuída pelo sistema Captura de tela da habilitação da identidade gerenciada atribuída pela lógica do aplicativo.

  4. Clique em Salvar.

  5. De volta ao Centro de Administração do Microsoft Entra com pelo menos a função de proprietário do Catálogo, acesse o catálogo onde você criou a extensão personalizada e selecione Funções e administradores.

  6. Na página de funções e administradores, selecione Adicionar gerenciador de atribuição de pacote de acesso e selecione o aplicativo lógico que você criou. Captura de tela da adição do aplicativo lógico como gerenciador de atribuição de pacote de acesso para um catálogo.

Configurar o aplicativo lógico e a lógica de negócios correspondente

Com o Aplicativo Lógico do Azure dada a função de gerenciador de atribuição de pacote de acesso para o catálogo, agora você deve acessar o aplicativo lógico para editá-lo para se comunicar com o Microsoft Entra. Para fazer isso, você faria as seguintes etapas:

  1. No aplicativo de lógica criado, vá para Ferramentas de Desenvolvimento>.

  2. Na página do designer, remova tudo sob o gatilho manual e selecione o botão Adicionar uma ação . Captura de tela da adição de ação no designer de aplicativo lógico.

  3. No painel Adicionar uma Ação, selecione HTTP.

  4. No painel HTTP em Parâmetros, insira os seguintes parâmetros:

    • URI: https://graph.microsoft.com/v1.0@{triggerBody()?['CallbackUriPath']}
    • Método: POSTAR
    • Tipo de autenticação: identidade gerenciada
    • Identidade Gerenciada: identidade gerenciada atribuída pelo sistema
    • Audiência: https://graph.microsoft.com
  5. Em Configurações HTTP, desabilite o Padrão Assíncrono. Captura de tela da desativação do padrão assíncrono em uma chamada HTTP de um aplicativo de lógica.

  6. Depois de fazer alterações no gatilho HTTP, selecione Salvar.

Adicionar lógica de negócios ao aplicativo de lógica

Com o aplicativo lógico configurado para comunicação com o Microsoft Entra, agora você pode adicionar o que deseja que o aplicativo faça. As ações do aplicativo de lógica são adicionadas ao corpo da seção HTTP configurada para o aplicativo de lógica. Para editar isso, faça o seguinte:

  1. No aplicativo de lógica criado, vá para Ferramentas de Desenvolvimento>.

  2. Na página do designer de aplicativo lógico, selecione HTTP.

  3. No painel HTTP em Parâmetros, role para baixo até Body e insira seus dados lógicos com base nos parâmetros que você deseja consultar. Para obter mais informações, consulte: Chamar endpoints HTTP ou HTTPS externos de fluxos de trabalho no Azure Logic Apps. Captura de tela da adição da lógica de negócios ao aplicativo lógico.

    Observação

    Para obter um exemplo da ação do corpo, consulte: exemplo de ação HTTP.

  4. Quando terminar de adicionar sua lógica de negócios, selecione salvar.

Verificar se a extensão funcionou

Para verificar se a extensão personalizada funciona, você pode solicitar acesso ao pacote de acesso e exibir os detalhes da solicitação por meio de Solicitações na página do pacote de acesso seguindo estas etapas:

  1. Entre no Centro de administração do Microsoft Entra como pelo menos um proprietário de catálogo do catálogo em que a extensão personalizada está localizada.

    Dica

    Outras funções de privilégios mínimos que podem concluir essa tarefa incluem o gerenciador de pacotes do Access, o gerenciador de atribuição de pacotes do Access e o Administrador de Governança de Identidade.

  2. Navegue até Governança de Identidade>Gerenciamento de Direitos>Pacote de Acesso.

  3. Na página Pacotes de acesso, abra o pacote de acesso cujas solicitações você quer conferir.

  4. Selecione Solicitações.

  5. Na página solicitações, selecione a solicitação da qual você deseja exibir detalhes e confirme se o pacote de acesso foi entregue com êxito. visualizando os detalhes da solicitação do pacote de acesso.

Exemplo de ação HTTP

O exemplo a seguir de uma ação que pode ser colocada no corpo HTTP é um aplicativo lógico que identifica o aprovador primário. Você precisa passar sua própria variável para este código, quando solicitado:

{
  "data": {
    "@@odata.type": "microsoft.graph.assignmentRequestApprovalStageCallbackData",
    "approvalStage": {
      "durationBeforeAutomaticDenial": "P2D",
      "escalationApprovers": [],
      "fallbackEscalationApprovers": [],
      "fallbackPrimaryApprovers": [],
      "isApproverJustificationRequired": false,
      "isEscalationEnabled": false,
      "primaryApprovers": [
        {
          "@@odata.type": "#microsoft.graph.singleUser",
          "description": "This is the primary approver for the access package requested by the user.",
          "id": "<Dynamically assigned variable>",
          "isBackup": false
        }
      ]
    },
    "customExtensionStageInstanceDetail": "A approval stage from Logic Apps",
    "customExtensionStageInstanceId": "@{triggerBody()?['CustomExtensionStageInstanceId']}",
    "stage": "assignmentRequestDeterminingApprovalRequirements"
  },
  "source": "Entra",
  "type": "microsoft.graph.accessPackageCustomExtensionStage.assignmentRequestCreated"
}

Embora o exemplo use uma ID de usuário, a seção primaryApprovers e escalationApprovers pode conter qualquer subjectSet válido. A seção de aprovação do código deve seguir os parâmetros, conforme mostrado aqui: accessPackageApprovalStage.

Observação

Enquanto o Aplicativo de Lógica está sendo chamado na versão Beta da API, os parâmetros estão usando o endpoint v1.0.