Acione aplicativos lógicos com extensões personalizadas no gerenciamento de direitos

Os Aplicativos Lógicos do Azure podem ser usados para automatizar fluxos de trabalho personalizados e conectar aplicativos e serviços em um só lugar. Os usuários podem integrar Aplicativos Lógicos com o gerenciamento de direitos para ampliar seus fluxos de trabalho de governança além dos principais casos de uso de gerenciamento de direitos.

Esses aplicativos lógicos podem ser acionados para serem executados de acordo com casos de uso de gerenciamento de direitos, como quando um pacote de acesso é concedido ou solicitado. Por exemplo, um administrador pode criar e vincular um Aplicativo Lógico personalizado ao gerenciamento de direitos, de modo que, quando um usuário solicita um pacote de acesso, um Aplicativo Lógico é acionado para garantir que o usuário também receba determinadas características em um aplicativo SAAS de terceiros (como o Salesforce) ou receba um e-mail personalizado.

Os casos de uso de gerenciamento de direitos que podem ser integrados aos Aplicativos Lógicos incluem os seguintes estágios. Estes são os gatilhos associados a um pacote de acesso que pode iniciar a extensão personalizada Logic App:

  • Quando uma solicitação de pacote de acesso é criada

  • Quando uma solicitação de pacote de acesso é aprovada

  • Quando uma atribuição de pacote de acesso é concedida

  • Quando uma atribuição de pacote de acesso é removida

  • 14 dias antes de uma atribuição de pacote de acesso expirar automaticamente

  • Um dia antes de uma atribuição de pacote de acesso expirar automaticamente

Esses gatilhos para Aplicativos Lógicos são controlados em uma guia dentro das políticas de pacote de acesso chamada Regras. Além disso, uma guia Extensões personalizadas na página Catálogo mostra todas as extensões de aplicativos lógicos adicionadas para um determinado catálogo. Este artigo descreve como criar e adicionar aplicativos lógicos a catálogos e acessar pacotes no gerenciamento de direitos.

Requisitos de licença

O uso desse recurso requer licenças do Microsoft Entra ID Governance. Para encontrar a licença certa para seus requisitos, consulte Fundamentos de licenciamento do Microsoft Entra ID Governance.

Criar e adicionar um fluxo de trabalho do Aplicativo Lógico a um catálogo para uso no gerenciamento de direitos

Gorjeta

As etapas neste artigo podem variar ligeiramente com base no portal a partir do qual você começou.

Funções de pré-requisito: Administrador global, administrador de governança de identidade, proprietário do catálogo ou proprietário do grupo de recursos

  1. Entre no centro de administração do Microsoft Entra como pelo menos um Administrador de Governança de Identidade.

  2. Navegue até Catálogos de governança de >identidade.

  3. Selecione o catálogo para o qual você deseja adicionar uma extensão personalizada e, em seguida, no menu à esquerda, selecione Extensões personalizadas.

  4. Na barra de navegação do cabeçalho, selecione Adicionar uma extensão personalizada.

  5. Na guia Noções básicas, insira o nome da extensão personalizada, que deve ser o nome do Aplicativo Lógico que você está vinculando, e uma descrição do fluxo de trabalho. Esses campos aparecem na guia Extensões personalizadas do catálogo.

    Pane to create a custom extension

  6. A guia Tipo de extensão define com que tipo de políticas de pacote de acesso você pode usar a extensão personalizada. O tipo "Fluxo de trabalho de solicitação" suporta estágios de política: o pacote de acesso solicitado é criado, quando a solicitação é aprovada, quando a atribuição é concedida e quando a atribuição é removida. Este tipo também suporta o Iniciar e esperar. capacidades.

  7. O fluxo de trabalho de pré-expiração suporta os estágios da política: 14 dias até a expiração da atribuição do pacote de acesso e 1 dia até a expiração da atribuição do pacote de acesso. Este tipo de extensão não suporta Iniciar e Esperar.

    Screenshot of launch and wait configuration options.

  8. A guia Configuração da extensão permite que você decida se sua extensão tem o comportamento "iniciar e continuar" ou "iniciar e esperar". Com "Iniciar e continuar", a ação de política vinculada no pacote de acesso, como uma solicitação, aciona o Aplicativo Lógico anexado à extensão personalizada. Depois que o Aplicativo Lógico for acionado, o processo de gerenciamento de direitos associado ao pacote de acesso continuará. Para "Iniciar e esperar", pausaremos a ação do pacote de acesso associado até que o Aplicativo Lógico vinculado à extensão conclua sua tarefa e uma ação de retomada seja enviada pelo administrador para continuar o processo. Se nenhuma resposta for enviada de volta no período de tempo de espera definido, esse processo será considerado uma falha. Esse processo é descrito mais detalhadamente abaixo em sua própria seção Configurando extensões personalizadas que pausam os processos de gerenciamento de direitos.

  9. Na guia Detalhes, escolha se deseja usar um aplicativo lógico de plano de consumo existente. Selecionar Sim no campo "Criar novo aplicativo lógico" (padrão) cria um novo plano de consumo em branco Logic App que já está vinculado a esta extensão personalizada. Independentemente disso, você precisa fornecer:

    1. Uma subscrição do Azure.

    2. Um grupo de recursos que tem permissões de criação de recursos do Aplicativo Lógico se estiver criando um novo Aplicativo Lógico.

    3. Selecione "Criar aplicativo lógico" se estiver usando essa configuração.

      Screenshot of creating logic app detail selections.

    Nota

    Ao criar um novo Aplicativo Lógico neste modal, o comprimento de "/subscriptions/{SubscriptionId}/resourceGroups/{RG Name}/providers/Microsoft.Logic/workflows/{Logicapp Name}" não pode exceder 150 caracteres.

  10. Em Rever e Criar, reveja o resumo da sua extensão personalizada e certifique-se de que os detalhes do texto explicativo da Aplicação Lógica estão corretos. Depois, selecione Criar.

  11. Essa extensão personalizada para o Aplicativo Lógico vinculado agora aparece na guia Extensões Personalizadas, em Catálogos. Você pode recorrer a isso nas políticas do pacote de acesso.

Exibir e editar extensões personalizadas existentes para um catálogo

Funções de pré-requisito: Administrador global, administrador de governança de identidade ou proprietário do catálogo

  1. Navegue até a guia Extensões personalizadas dentro de um catálogo, conforme mencionado anteriormente.

  2. Aqui, você pode exibir todas as extensões personalizadas que criou, juntamente com o Aplicativo Lógico associado e informações sobre o tipo de extensão personalizada. Screenshot of a list of custom extensions.

  3. Junto com o nome do Aplicativo Lógico, a coluna Tipo determina se a extensão personalizada foi criada no novo modelo de autenticação V2 (após 17 de março de 2023) ou no modelo original. Se uma extensão personalizada foi criada no novo modelo, a coluna Tipo corresponde ao tipo selecionado do modal de configuração que é "solicitação de atribuição" ou "pré-expiração". Para extensões personalizadas mais antigas, o tipo mostra "pacote de acesso personalizado".

  4. A coluna Segurança do Token mostra a estrutura de segurança de autenticação associada usada ao criar a extensão personalizada. Novas extensões personalizadas V2 mostram "prova de posse" (PoP) como o tipo de segurança de token. Extensões personalizadas mais antigas mostram "regular".

  5. As extensões personalizadas de estilo antigo não podem mais ser criadas a partir da interface do usuário, no entanto, as existentes podem ser convertidas em novas extensões personalizadas de estilo da interface do usuário. Screenshot of converting old security token to new.

  6. Selecionar os três pontos no final da linha de uma extensão personalizada antiga permite que você atualize a extensão personalizada para um novo tipo rapidamente.

    Nota

    As extensões personalizadas só podem ser convertidas para o novo tipo se não estiverem em uso ou se estiverem em uso exclusivamente para estágios de política de um tipo de extensão específico (estágios de solicitação de atribuição ou estágios de pré-expiração).

  7. Você também pode editar qualquer extensão personalizada. Isso permite que você atualize o nome, a descrição e outros valores de campo. Isso pode ser feito selecionando Editar dentro do painel de três pontos para qualquer extensão personalizada.

  8. As extensões personalizadas de estilo antigo podem continuar a ser usadas e editadas mesmo que não sejam convertidas, mesmo que não possam mais ser criadas.

  9. Se uma extensão personalizada de estilo antigo não puder ser atualizada para o novo tipo porque está sendo usada para estágios de política, de AMBOS os tipos de solicitação de atribuição e pré-expiração, então, para atualizá-la, você deverá removê-la de todas as políticas vinculadas ou garantir que ela seja usada apenas para estágios de política associados a UM tipo (solicitação de atribuição, ou pré expiração).  

Adicionar extensão personalizada a uma política em um pacote de acesso

Funções de pré-requisito: Administrador global, administrador de governança de identidade, proprietário do catálogo ou gerenciador de pacotes do Access

  1. Entre no centro de administração do Microsoft Entra como pelo menos um Administrador de Governança de Identidade.

  2. Navegue até Governança de identidade, Gerenciamento de direitos, Pacote de>>acesso.

  3. Selecione o pacote de acesso ao qual deseja adicionar uma extensão personalizada (aplicativo lógico) na lista de pacotes de acesso que já foram criados.

    Nota

    Selecione Novo pacote de acesso se quiser criar um novo pacote de acesso. Para obter mais informações sobre como criar um pacote de acesso, consulte Criar um novo pacote de acesso no gerenciamento de direitos. Para obter mais informações sobre como editar um pacote de acesso existente, consulte Alterar configurações de solicitação para um pacote de acesso no gerenciamento de direitos do Microsoft Entra.

  4. Mude para a guia política, selecione a política e selecione Editar.

  5. Nas configurações de política, vá para a guia Extensões personalizadas .

  6. No menu abaixo de Palco, selecione o evento do pacote de acesso que você deseja usar como gatilho para esta extensão personalizada (Logic App). Por exemplo, se você quiser acionar apenas o fluxo de trabalho personalizado do Aplicativo Lógico quando um usuário solicitar o pacote de acesso, selecione Solicitação criada.

  7. No menu abaixo de Extensão personalizada, selecione a extensão personalizada (Logic App) que deseja adicionar ao pacote de acesso. A ação selecionada é executada quando ocorre o evento selecionado no campo when .

  8. Selecione Atualizar para adicioná-lo à política de um pacote de acesso existente.

    Add a Logic App to access package

Editar a definição de fluxo de trabalho de um aplicativo lógico vinculado

Funções de pré-requisito: Administrador global, administrador de governança de identidade ou proprietário do catálogo

Para Aplicativos Lógicos recém-criados vinculados a extensões personalizadas, esses Aplicativos Lógicos começam em branco. Para criar os fluxos de trabalho nos Aplicativos Lógicos que serão acionados pela extensão quando a condição da política do pacote de acesso vinculado for acionada, você precisa editar a definição do fluxo de trabalho do Aplicativo Lógico no designer do Aplicativo Lógico. Para fazer isso, siga estas etapas:

  1. Navegue até a guia Extensões personalizadas dentro de um catálogo, conforme mencionado na seção acima.

  2. Selecione a extensão personalizada para quem você deseja editar o aplicativo lógico.

  3. Selecione o Aplicativo lógico na coluna Aplicativo lógico para a linha de extensão personalizada associada. Isso permite que você edite ou crie o fluxo de trabalho no designer do Logic App.

Para obter mais informações sobre como criar fluxos de trabalho de aplicativos lógicos, consulte Guia de início rápido: criar um exemplo de fluxo de trabalho de consumo em aplicativos lógicos do Azure multilocatário.

Configurando extensões personalizadas que pausam os processos de gerenciamento de direitos

Uma nova atualização para o recurso de extensões personalizadas é a capacidade de pausar o processo de política de pacote de acesso associado a uma extensão personalizada até que o Aplicativo Lógico seja concluído e uma carga útil de solicitação de currículo seja enviada de volta para o gerenciamento de direitos. Por exemplo, se uma extensão personalizada para um Aplicativo Lógico for acionada a partir de uma política de concessão de pacote de acesso e "iniciar e esperar" estiver habilitada, assim que o Aplicativo Lógico for acionado, o processo de concessão não será retomado até que o Aplicativo Lógico seja concluído e uma solicitação de currículo seja enviada de volta ao gerenciamento de direitos.

Esse processo de pausa permite que os administradores tenham controle dos fluxos de trabalho que gostariam de executar antes de continuar com as tarefas do ciclo de vida do acesso no gerenciamento de direitos. A única exceção é se ocorrer um tempo limite. Os processos de lançamento e espera exigem um tempo limite de até 14 dias, anotado em minutos, horas ou dias. Se uma resposta de retomada não for enviada de volta ao gerenciamento de direitos no momento em que o período de "tempo limite" terminar, o processo de fluxo de trabalho de solicitação de gerenciamento de direitos será pausado.

O administrador é responsável por configurar um processo automatizado que é capaz de enviar a carga útil de solicitação de currículo da API de volta para o gerenciamento de direitos, assim que o fluxo de trabalho do Aplicativo Lógico for concluído. Para enviar de volta a carga útil da solicitação de currículo, siga as instruções aqui nos documentos da API do gráfico. Veja informações aqui sobre o pedido de currículo.

Especificamente, quando uma política de pacote de acesso foi habilitada para chamar uma extensão personalizada e o processamento da solicitação está aguardando o retorno de chamada do cliente, o cliente pode iniciar uma ação de retomada. Ele é executado em um objeto accessPackageAssignmentRequest cujo requestStatus está em um estado WaitingForCallback.

A solicitação de currículo pode ser enviada de volta para as seguintes etapas:

microsoft.graph.accessPackageCustomExtensionStage.assignmentRequestCreated microsoft.graph.accessPackageCustomExtensionStage.assignmentRequestApproved microsoft.graph.accessPackageCustomExtensionStage.assignmentRequestGranted microsoft.graph.accessPackageCustomExtensionStage.assignmentRequestRemoved

O diagrama de fluxo a seguir mostra o texto explicativo de gerenciamento de direitos para o fluxo de trabalho de Aplicativos Lógicos: A diagram of the entitlement management call to the logic apps workflow.

O diagrama de fluxo do diagrama mostra:

  1. O usuário cria um ponto de extremidade personalizado capaz de receber a chamada do Serviço de Identidade
  2. O serviço de identidade faz uma chamada de teste para confirmar que o ponto de extremidade pode ser chamado pelo Serviço de Identidade
  3. O usuário chama a API do Graph para solicitar a adição de um usuário a um pacote de acesso
  4. O Serviço de Identidade é adicionado à fila que aciona o fluxo de trabalho de back-end
  5. O processamento de solicitações do Serviço de Gerenciamento de Direitos chama o aplicativo lógico com a carga útil da solicitação
  6. O fluxo de trabalho espera o código aceito
  7. O Serviço de Gerenciamento de Direitos aguarda a retomada da ação personalizada de bloqueio
  8. O sistema do cliente chama a API de retomada de solicitação para o serviço de identidade para retomar o processamento da solicitação
  9. O serviço de identidade adiciona a mensagem de solicitação de currículo à fila do Serviço de Gerenciamento de Direitos retomando o fluxo de trabalho de back-end
  10. O Serviço de Gestão de Direitos é retomado a partir do estado bloqueado

Um exemplo de uma carga útil de solicitação de currículo é:

POST https://graph.microsoft.com/beta/identityGovernance/entitlementManagement/accessPackageAssignmentRequests/0e60f18c-b2a0-4887-9da8-da2e30a39d99/resume
Content-Type: application/json

{
  "source": "Contoso.SodCheckProcess",
  "type": "microsoft.graph.accessPackageCustomExtensionStage.assignmentRequestCreated",
  "data": {
    "@odata.type": "microsoft.graph.accessPackageAssignmentRequestCallbackData",
    "stage": "assignmentRequestCreated",
    "customExtensionStageInstanceId": "957d0c50-466b-4840-bb5b-c92cea7141ff",
    "customExtensionStageInstanceDetail": "This user is all verified"
  }
}

Com Iniciar e esperar, os administradores também têm a capacidade de negar uma solicitação se a extensão estiver vinculada aos estágios do pacote de acesso "solicitação é criada" ou "solicitação é aprovada". Nesses casos, o aplicativo lógico pode enviar de volta uma mensagem de "negar" para o gerenciamento de direitos, que encerraria o processo antes que o usuário final receba o pacote de acesso.

Como mencionado, as extensões personalizadas criadas com o tipo de fluxo de trabalho de solicitação, que inclui quatro estágios de política associados, podem ser habilitadas com "Iniciar e esperar", se desejado.

Veja a seguir um exemplo para retomar o processamento de uma solicitação de atribuição de pacote de acesso negando a solicitação que está aguardando um retorno de chamada. Uma solicitação não pode ser negada no estágio assignmentRequestCreated do texto explicativo.

POST https://graph.microsoft.com/beta/identityGovernance/entitlementManagement/accessPackageAssignmentRequests/9e60f18c-b2a0-4887-9da8-da2e30a39d99/resume
Content-Type: application/json

{
  "source": "Contoso.SodCheckProcess",
  "type": "microsoft.graph.accessPackageCustomExtensionStage.assignmentRequestCreated",
  "data": {
    "@odata.type": "microsoft.graph.accessPackageAssignmentRequestCallbackData",
    "stage": "AssignmentRequestCreated",
    "customExtensionStageInstanceId": "857d0c50-466b-4840-bb5b-c92cea7141ff",
    "state": "denied",
    "customExtensionStageInstanceDetail": "Potential risk user based on the SOD check"
  }
}

Experiência do usuário final de extensão

Experiência de aprovador

Um aprovador vê a cadeia de caracteres especificada na carga útil da solicitação de retomada, conforme customExtensionStageInstanceDetail mostrado na carga útil localizada em Configurando extensões personalizadas que pausam os processos de gerenciamento de direitos. Screenshot of the approver screen.

Experiência do solicitante

Quando um pacote de acesso tem uma extensão personalizada com a funcionalidade de inicialização e espera, e o Aplicativo Lógico é acionado quando a solicitação do pacote de acesso é criada, os solicitantes podem ver o status da solicitação no histórico de solicitações em MyAccess.

As seguintes atualizações de status são exibidas aos usuários com base em seu estágio de extensão personalizado:

Estágio de extensão personalizada Mensagem exibida ao solicitante no histórico de solicitações do MyAccess
Quando a extensão está sendo processada Aguardando informações antes de prosseguir
Quando a extensão falha Processo expirado
Quando a extensão for retomada O processo continua

Este é um exemplo de um histórico de solicitações do MyAccess de um solicitante depois que a extensão é retomada:

Screenshot of the requestor screen.

Resolução de problemas e Validação

Para extensões personalizadas associadas a uma solicitação, você pode exibir detalhes sobre o processo de extensão personalizada (e iniciar e aguardar, se habilitado) no link Detalhes do histórico de solicitações na página de detalhes da solicitação do pacote de acesso associado.

Screenshot of requesting history for a custom task extension.Screenshot of selection details for custom task extension.

Por exemplo, aqui você pode ver a hora em que a solicitação foi enviada e a hora em que o processo de inicialização e espera (aguardando retorno de chamada) começou. A solicitação foi aprovada, e a etapa de gerenciamento de direitos "retomada", uma vez que o Aplicativo Lógico foi executado e a solicitação de currículo foi retornada às 12h15.

Além disso, um novo link de instâncias de extensão personalizadas dentro dos detalhes da solicitação mostra informações sobre a extensão personalizada associada ao pacote de acesso para a solicitação.
Screenshot of selection details list items.

Isso mostra o ID da extensão personalizada e o status. Essas informações mudam com base em se há um retorno de chamada de inicialização e espera associado.

Para verificar se sua extensão personalizada acionou corretamente o Aplicativo Lógico associado, você também pode exibir os logs do Aplicativo Lógico, que têm um carimbo de data/hora de quando o Aplicativo Lógico foi executado pela última vez.

Próximos passos