Configurar o consentimento de step-up baseado em risco usando o PowerShell
Neste artigo, você aprenderá a configurar o consentimento de passo a passo baseado em risco no Microsoft Entra ID. O consentimento intensificado baseado no risco ajuda a reduzir a exposição do utilizador a aplicações maliciosas que fazem pedidos de consentimento ilícitos.
Por exemplo, solicitações de consentimento para aplicativos multilocatários recém-registrados que não são verificados pelo editor e exigem permissões não básicas são consideradas arriscadas. Se uma solicitação de consentimento de usuário arriscada for detetada, a solicitação exigirá um "passo" para o consentimento do administrador. Esse recurso de step-up é habilitado por padrão, mas resulta em uma alteração de comportamento somente quando o consentimento do usuário está habilitado.
Quando uma solicitação de consentimento arriscada é detetada, o prompt de consentimento exibe uma mensagem que indica que a aprovação do administrador é necessária. Se o fluxo de trabalho de solicitação de consentimento do administrador estiver habilitado, o usuário poderá enviar a solicitação a um administrador para análise adicional diretamente do prompt de consentimento. Se o fluxo de trabalho de solicitação de consentimento de administrador não estiver habilitado, a seguinte mensagem será exibida:
AADSTS90094: <clientAppDisplayName> precisa de permissão para acessar recursos em sua organização que somente um administrador pode conceder. Solicite a um administrador que conceda permissão a este aplicativo antes de poder usá-lo.
Nesse caso, um evento de auditoria também é registrado com uma categoria de "ApplicationManagement", um tipo de atividade de "Consentimento para aplicativo" e um motivo de status de "Aplicativo arriscado detetado".
Pré-requisitos
Para configurar o consentimento step-up baseado em risco, você precisa:
- Uma conta de utilizador. Se ainda não tiver uma, pode criar uma conta gratuitamente.
- Um administrador de função privilegiada.
Desativar ou reativar o consentimento de step-up baseado em risco
Você pode usar o módulo beta do Microsoft Graph PowerShell para desabilitar o passo a passo para o consentimento de administrador necessário nos casos em que um risco é detetado ou para habilitá-lo se ele tiver sido desabilitado anteriormente.
Importante
Verifique se você está usando o módulo de cmdlets Beta do Microsoft Graph PowerShell.
Execute o seguinte comando:
Install-Module Microsoft.Graph.Beta
Conecte-se ao Microsoft Graph PowerShell:
Connect-MgGraph -Scopes "Directory.ReadWrite.All"
Recupere o valor atual para as configurações do diretório Configurações de Política de Consentimento em seu locatário. Isso requer a verificação para ver se as configurações de diretório para esse recurso foram criadas. Se eles não tiverem sido criados, use os valores do modelo de configurações de diretório correspondente.
$consentSettingsTemplateId = "dffd5d46-495d-40a9-8e21-954ff55e198a" # Consent Policy Settings $settings = Get-MgBetaDirectorySetting -All | Where-Object { $_.TemplateId -eq $consentSettingsTemplateId } if (-not $settings) { $params = @{ TemplateId = $consentSettingsTemplateId Values = @( @{ Name = "BlockUserConsentForRiskyApps" Value = "True" } @{ Name = "ConstrainGroupSpecificConsentToMembersOfGroupId" Value = "<groupId>" } @{ Name = "EnableAdminConsentRequests" Value = "True" } @{ Name = "EnableGroupSpecificConsent" Value = "True" } ) } $settings = New-MgBetaDirectorySetting -BodyParameter $params } $riskBasedConsentEnabledValue = $settings.Values | ? { $_.Name -eq "BlockUserConsentForRiskyApps" }
Confira o valor:
$riskBasedConsentEnabledValue
Entenda o valor das configurações:
Definição Tipo Description BlockUserConsentForRiskyApps Boolean Um sinalizador que indica se o consentimento do usuário será bloqueado quando uma solicitação arriscada for detetada. Para alterar o valor de
BlockUserConsentForRiskyApps
, use o cmdlet Update-MgBetaDirectorySetting .$params = @{ TemplateId = $consentSettingsTemplateId Values = @( @{ Name = "BlockUserConsentForRiskyApps" Value = "False" } @{ Name = "ConstrainGroupSpecificConsentToMembersOfGroupId" Value = "<groupId>" } @{ Name = "EnableAdminConsentRequests" Value = "True" } @{ Name = "EnableGroupSpecificConsent" Value = "True" } ) } Update-MgBetaDirectorySetting -DirectorySettingId $settings.Id -BodyParameter $params