Condividi tramite


Configurare il consenso dettagliato basato sui rischi con PowerShell

Questo articolo illustra come configurare il consenso dettagliato basato sul rischio in Microsoft Entra ID. Il consenso incrementale basato sul rischio consente di ridurre l'esposizione degli utenti ad app dannose che effettuano richieste di consenso illecite.

Ad esempio, le richieste di consenso per le app multi-tenant appena registrate che non sono verificate dall'editore e richiedono autorizzazioni non di base sono considerate rischiose. Se viene rilevata una richiesta di consenso utente rischiosa, la richiesta richiede invece un "passaggio" per il consenso dell'amministratore. Questa funzionalità dettagliata è abilitata per impostazione predefinita, ma comporta una modifica del comportamento solo quando è abilitato il consenso dell'utente.

Quando viene rilevata una richiesta di consenso rischiosa, la richiesta di consenso visualizza un messaggio che indica che è necessaria l'approvazione dell'amministratore. Se il flusso di lavoro della richiesta di consenso dell'amministratore è abilitato, l'utente può inviare la richiesta a un amministratore per un'ulteriore verifica direttamente dalla richiesta di consenso. Se il flusso di lavoro della richiesta di consenso amministratore non è abilitato, viene visualizzato il messaggio seguente:

AADSTS90094:<NomeVisualizzatoAppClient> richiede l'autorizzazione per accedere alle risorse dell'organizzazione che solo un amministratore può concedere. Richiedere a un amministratore di concedere l'autorizzazione a questa app prima di poterla usare.

In questo caso, viene registrato anche un evento di controllo con una categoria "ApplicationManagement", un tipo di attività "Consent to application" e un motivo di stato di "Applicazione rischiosa rilevata".

Prerequisiti

Per configurare il consenso dettagliato basato sul rischio, è necessario:

È possibile usare il modulo beta di Microsoft Graph PowerShell per disabilitare il consenso dell'amministratore richiesto nei casi in cui viene rilevato un rischio o per abilitarlo se è stato disabilitato in precedenza.

Importante

Assicurarsi di usare il modulo cmdlet di Microsoft Graph PowerShell Beta.

  1. Esegui questo comando:

    Install-Module Microsoft.Graph.Beta
    
  2. Connessione a Microsoft Graph PowerShell:

    Connect-MgGraph -Scopes "Directory.ReadWrite.All"
    
  3. Recuperare il valore corrente per le impostazioni della directory Consent Policy Settings (Impostazioni criteri di consenso) nel tenant. In questo modo è necessario verificare se sono state create le impostazioni della directory per questa funzionalità. Se non sono stati creati, usare i valori del modello di impostazioni di directory corrispondente.

    $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" }
    
  4. Controllare il valore:

    $riskBasedConsentEnabledValue
    

    Comprendere il valore delle impostazioni:

    Impostazione Tipo Descrizione
    BlockUserConsentForRiskyApps Booleano Flag che indica se il consenso dell'utente verrà bloccato quando viene rilevata una richiesta rischiosa.
  5. Per modificare il valore di BlockUserConsentForRiskyApps, usare il 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
    

Passaggi successivi