Disparar 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 ao gerenciamento de direitos para ampliar seus fluxos de trabalho de governança além dos principais casos de uso do gerenciamento de direitos.
Esses Aplicativos Lógicos podem ser disparados para serem executados de acordo com os 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 para que, quando um usuário solicitar um pacote de acesso, um Aplicativo Lógico seja acionado, o que garante que o usuário também tenha determinadas características em um aplicativo SAAS de terceiros (como o Salesforce) ou seja enviado um email 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 podem iniciar a extensão personalizada do Aplicativo Lógico:
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 da expiração automática de uma atribuição de pacote de acesso
Um dia antes da expiração automática de uma atribuição de pacote de acesso
Esses gatilhos para Aplicativos Lógicos são controlados em uma guia nas políticas de pacote de acesso chamadas Regras. Além disso, uma guia Extensões Personalizadas na página Catálogo mostra todas as extensões de Aplicativos Lógicos adicionados a um determinado Catálogo. Este artigo descreve como criar e adicionar aplicativos lógicos a catálogos e pacotes de acesso no gerenciamento de direitos.
Requisitos de licença
O uso desse recurso exige licenças do Microsoft Entra ID Governance ou do Suíte do Microsoft Entra. Para encontrar a licença certa para seus requisitos, confira Conceitos básicos de licenciamento do Microsoft Entra ID Governance.
Criar e adicionar um fluxo de trabalho de Aplicativo Lógico a um catálogo para uso no gerenciamento de direitos
Dica
As etapas neste artigo podem variar ligeiramente com base no portal do qual você começa.
Entre no centro de administração do Microsoft Entra como, no mínimo, Administrador de Governança de Identidade.
Dica
Outras funções de privilégios mínimos que podem concluir essa tarefa incluem o Proprietário do Catálogo e o Proprietário do Grupo de recursos.
Navegue até Governança de identidade>Catálogos.
Selecione o catálogo para o qual deseja adicionar uma extensão personalizada e, no menu à esquerda, selecione Extensões Personalizadas.
Na barra de navegação do cabeçalho, selecione Adicionar uma Extensão Personalizada.
Na guia Básico, 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 aparecerão na guia Extensões Personalizadas do Catálogo.
A guia Tipo de Extensão define que tipo de políticas de pacote de acesso você pode usar com a extensão personalizada. O tipo "Fluxo de trabalho da solicitação" dá suporte aos 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. Esse tipo também dá suporte aso recursos Iniciar e aguardar.
O fluxo de trabalho de pré-expiração dá suporte aos estágios de 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. Esse tipo de extensão não dá suporte a Iniciar e Aguardar.
A guia Configuração de Extensão permite que você decida se sua extensão tem o comportamento "iniciar e continuar" ou "iniciar e aguardar". 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 aguardar", 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 abaixo em sua própria seção Como configurar extensões personalizadas que pausam os processos de gerenciamento de direitos.
Na guia Detalhes, escolha se deseja usar um Aplicativo Lógico com um plano de consumo existente. Ao selecionar Sim no campo "Criar um novo aplicativo lógico" (padrão) será criado um novo Aplicativo Lógico com plano de consumo em branco que já está vinculado a essa extensão personalizada. Independentemente disso, você precisa fornecer:
Uma assinatura do Azure.
Um grupo de recursos com permissões de criação de recursos de Aplicativo Lógico ao criar um novo Aplicativo Lógico.
Selecione "Criar Aplicativo Lógico" se estiver usando essa configuração.
Observação
Ao criar um novo Aplicativo Lógico nesse modal, o comprimento de "/subscriptions/{SubscriptionId}/resourceGroups/{RG Name}/providers/Microsoft.Logic/workflows/{Logicapp Name}" não pode exceder 150 caracteres.
Em Revisar e Criar, revise o resumo da extensão personalizada e verifique se os detalhes do texto explicativo aplicativo lógico estão corretos. Em seguida, selecione Criar.
Essa extensão personalizada para o Aplicativo Lógico vinculado agora aparece na guia Extensões Personalizadas em Catálogos. Você pode chamar essa extensão personalizada em políticas de pacote de acesso.
Exibir e Editar Extensões Personalizadas Existentes para um Catálogo
Navegue até a guia Extensões Personalizadas dentro de um Catálogo, conforme mencionado previamente, como pelo menos um Administrador de Governança de Identidade.
Dica
Outras funções de privilégios mínimos que podem concluir essa tarefa incluem o Proprietário do Catálogo.
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.
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 o modelo original. Se uma extensão personalizada for criada no novo modelo, a coluna Tipo corresponderá ao tipo selecionado do modal de configuração, que pode ser "solicitação de atribuição" ou "pré-expiração". Para extensões personalizadas mais antigas, o tipo mostra "pacote de acesso personalizado".
A coluna Segurança de Token mostra a estrutura de segurança de autenticação associada usada ao criar a extensão personalizada. Novas extensões personalizadas V2 mostram a "comprovação de posse" (PoP) como o tipo de segurança do token. Extensões personalizadas mais antigas mostram "regular".
As extensões personalizadas do estilo antigo não podem mais ser criadas pela interface do usuário. No entanto, as existentes podem ser convertidas em extensões personalizadas do novo estilo pela interface do usuário.
Selecionar os três pontos no final da linha de uma extensão personalizada antiga permite atualizar rapidamente a extensão personalizada para um novo tipo.
Observação
As extensões personalizadas só poderão ser convertidas no 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).
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.
As extensões personalizadas do estilo antigo podem continuar a ser usadas e editadas mesmo que não sejam convertidas, embora não possam mais ser criadas.
Se uma extensão personalizada de estilo antigo não pode ser atualizada para o novo tipo porque está sendo usada para as fases da política, de AMBOS tipos de solicitação de atribuição e pré-expiração, para atualizá-la, você deve removê-la de todas as políticas vinculadas ou garantir que seja usada apenas para as fases da política associada 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
Entre no centro de administração do Microsoft Entra como, no mínimo, Administrador de Governança de Identidade.
Dica
Outras funções de privilégios mínimos que podem concluir essa tarefa incluem o Proprietário do Catálogo e o Gerenciador de Pacotes de Acesso.
Navegue até Governança de identidade>Gerenciamento de direitos>Pacote de acesso.
Selecione o pacote de acesso ao que você deseja adicionar uma extensão personalizada (aplicativo lógico) na lista de pacotes de acesso que já foram criados.
Observação
Selecione Novo pacote de acesso, se desejar criar um novo pacote de acesso. Para obter mais informações sobre como criar um pacote de acesso, confira Criar um novo pacote de acesso no gerenciamento de direitos. Para 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.
Altere para a guia Política, escolha a política e selecione Editar.
Nas configurações de política, acesse a guia Extensões Personalizadas.
No menu abaixo Preparar, selecione o evento de pacote de acesso que você deseja usar como gatilho para essa extensão personalizada (Aplicativo Lógico). Por exemplo, se você quiser apenas disparar o fluxo de trabalho do Aplicativo Lógico de extensão personalizada quando um usuário solicitar o pacote de acesso, selecione A solicitação foi criada.
No menu abaixo Extensão Personalizada, selecione a extensão personalizada (Aplicativo Lógico) que você deseja adicionar ao pacote de acesso. A ação que você selecionar é executada quando o evento selecionado no campo quando ocorrer.
Selecione Atualizar para adicionar a uma política do pacote de acesso existente.
Editar a definição do fluxo de trabalho de um Aplicativo Lógico vinculado
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 de pacote de acesso vinculada for acionada, é necessário editar a definição do fluxo de trabalho do Aplicativo Lógico no designer do Aplicativo Lógico. Para fazer isso, siga estas etapas:
Navegue até a guia Extensões Personalizadas dentro de um Catálogo, conforme mencionado anteriormente, como pelo menos um Administrador de Governança de Identidade.
Dica
Outras funções de privilégios mínimos que podem concluir essa tarefa incluem o Proprietário do Catálogo.
Selecione a extensão personalizada para qual você deseja editar o Aplicativo Lógico.
Selecione o Aplicativo Lógico na coluna Aplicativo lógico para a linha de extensão personalizada associada. Isso permite editar ou criar o fluxo de trabalho no designer do Aplicativo Lógico.
Para obter mais informações sobre como criar fluxos de trabalho de aplicativos lógicos, consulte Início Rápido: Criar um exemplo de fluxo de trabalho de Consumo nos Aplicativos Lógicos do Azure multilocatário.
Configurando extensões personalizadas que pausam processos de gerenciamento de direitos
Uma nova atualização no 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 um conteúdo de solicitação de retomada seja enviado de volta ao 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 aguardar" estiver habilitado, uma vez 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 retomada seja enviada de volta ao gerenciamento de direitos.
Esse processo de pausa permite que os administradores tenham controle sobre os fluxos de trabalho que gostariam de executar antes de continuar com as tarefas de ciclo de vida de acesso no gerenciamento de direitos. A única exceção para esse cenário é a ocorrência de um tempo limite. Os processos de iniciar e esperar exigem um tempo limite de até 14 dias indicado 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", transcorrer, o processo de solicitação de gerenciamento de direitos pausa.
O administrador é responsável por configurar um processo automatizado capaz de enviar de volta para o gerenciamento de direitos um conteúdo de solicitação de retomada da API, assim que o fluxo de trabalho do Aplicativo Lógico for concluído. Para enviar de volta o conteúdo da solicitação de retomada, siga as instruções contidas aqui nos documentos da API do Graph. Veja as informações contidas aqui sobre a solicitação de retomada.
Especificamente, quando uma política de pacote de acesso for habilitada para chamar uma extensão personalizada e o processamento da solicitação estiver aguardando o retorno de chamada do cliente, o cliente poderá iniciar uma ação de retomada. Ela é executada em um objeto accessPackageAssignmentRequest cujo requestStatus está em um estado WaitingForCallback.
A solicitação de retomada pode ser enviada de volta para aos seguintes estágios:
microsoft.graph.accessPackageCustomExtensionStage.assignmentRequestCreated
microsoft.graph.accessPackageCustomExtensionStage.assignmentRequestApproved
microsoft.graph.accessPackageCustomExtensionStage.assignmentRequestGranted
microsoft.graph.accessPackageCustomExtensionStage.assignmentRequestRemoved
O diagrama de fluxo a seguir mostra a chamada do gerenciamento de direitos para o fluxo de trabalho dos Aplicativos Lógicos:
O diagrama de fluxo de diagrama mostra:
- O usuário cria um ponto de extremidade personalizado capaz de receber a chamada do Serviço de Identidade
- O serviço de identidade faz uma chamada de teste para confirmar se o ponto de extremidade pode ser chamado pelo Serviço de Identidade
- O usuário chama a API do Graph para solicitar a adição de um usuário a um pacote de acesso
- O Serviço de Identidade é adicionado à fila, o que dispara o fluxo de trabalho de back-end
- O processamento da solicitação do Serviço de Gerenciamento de Direitos chama o aplicativo lógico com o conteúdo da solicitação
- O fluxo de trabalho espera o código aceito
- O Serviço de Gerenciamento de Direitos aguarda que ação personalizada de bloqueio seja retomada
- O sistema de clientes chama a API de solicitação de retomada para o serviço de identidade para retomar o processamento da solicitação
- O serviço de identidade adiciona a mensagem de solicitação de retomada à fila do Serviço de Gerenciamento de Direitos retomando o fluxo de trabalho de back-end
- O Serviço de Gerenciamento de Direitos sai do estado bloqueado e é retomado
Veja um exemplo de conteúdo de solicitação de retomada:
POST https://graph.microsoft.com/beta/identityGovernance/entitlementManagement/accessPackageAssignmentRequests/00aa00aa-bb11-cc22-dd33-44ee44ee44ee/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 a opção de Iniciar e aguardar, 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: "a solicitação é criada" ou "a solicitação é aprovada". Nesses casos, o Aplicativo Lógico pode enviar de volta uma mensagem "deny" para o gerenciamento de direitos, o que encerraria o processo antes que o usuário final recebesse o pacote de acesso.
Conforme 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 aguardar", 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.
Dica
Se você retomar a solicitação de atribuição de pacote de acesso por meio dos Aplicativos Lógicos do Azure, desabilite o padrão assíncrono .
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 da extensão
Experiência do aprovador
Um aprovador vê a cadeia de caracteres especificada no conteúdo customExtensionStageInstanceDetail
da solicitação de retomar conforme mostrado no conteúdo localizado em Configuração de extensões personalizadas que pausam os processos de gerenciamento de direitos.
Experiência do solicitante
Quando um pacote de acesso tem uma extensão personalizada com funcionalidade de inicialização e espera, e o Aplicativo Lógico é disparado quando a solicitação do pacote de acesso é criada, os solicitantes podem ver seu status de solicitação dentro do histórico de solicitações no MyAccess.
As seguintes atualizações de status são exibidas aos usuários com base em sua fase de extensão personalizada:
Fase de extensão personalizada | Mensagem exibida para o 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 é retomada | Continuação do processo |
Este é um exemplo de um histórico de solicitações ao MyAccess de um solicitante após a retomada da extensão:
Solução de problemas e validação
Para extensões personalizadas associadas a uma solicitação, você pode exibir detalhes sobre o processo da extensão personalizada (e iniciar e aguardar, se habilitado) no link Detalhes do histórico da solicitação na página de detalhes da solicitação do pacote de acesso associado.
Por exemplo, aqui você pode ver a hora em que a solicitação foi enviada e a hora em que o processo de iniciar e aguardar (aguardando retorno de chamada) começou. A solicitação foi aprovada e o estágio de gerenciamento de direitos foi " retomado", depois que o Aplicativo Lógico foi executado e a solicitação de retomada foi retornada às 12h15.
Além disso, um novo link Instâncias de extensão personalizada nos detalhes da solicitação mostra informações sobre a extensão personalizada associada ao pacote de acesso para a solicitação.
Isso mostra a ID da extensão personalizada e o status. Essa informação varia dependendo da existência de um retorno de chamada de iniciar e aguardar associado.
Para verificar se a 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.