Konfigurace souhlasu s krokem založeným na riziku pomocí PowerShellu

V tomto článku se dozvíte, jak v Microsoft Entra ID nakonfigurovat souhlas s krokem založeným na riziku. Souhlas založený na rizikových krocích pomáhá snížit riziko ohrožení uživatelů škodlivých aplikací, které dělají neoprávněné žádosti o souhlas.

Například žádosti o souhlas pro nově zaregistrované víceklientských aplikací, které nejsou ověřené vydavatelem, a vyžadují jiná než základní oprávnění, se považují za riziková. Pokud se zjistí riziková žádost o souhlas uživatele, vyžaduje žádost místo toho "krok nahoru" k souhlasu správce. Tato funkce pro zvýšení kapacity je ve výchozím nastavení povolená, ale výsledkem je změna chování pouze v případě, že je povolený souhlas uživatele.

Po zjištění rizikové žádosti o souhlas se zobrazí výzva k vyjádření souhlasu se zprávou, která indikuje, že je potřeba schválení správcem. Pokud je pracovní postup žádosti o souhlas správce povolený, může uživatel odeslat žádost správci, aby mohl provést další kontrolu přímo z výzvy k vyjádření souhlasu. Pokud pracovní postup žádosti o souhlas správce není povolený, zobrazí se následující zpráva:

AADSTS90094: <ClientAppDisplayName> potřebuje oprávnění pro přístup k prostředkům ve vaší organizaci, které může udělit jenom správce. Před použitím této aplikace požádejte správce o udělení oprávnění.

V tomto případě se událost auditu protokoluje také s kategorií "ApplicationManagement", typ aktivity "Souhlas s aplikací" a důvod stavu "Zjištěna riziková aplikace".

Požadavky

Pokud chcete nakonfigurovat souhlas s krokem založeným na riziku, potřebujete:

Beta modul Microsoft Graph PowerShellu můžete použít k zakázání kroku k vyjádření souhlasu správce, který se vyžaduje v případech, kdy se zjistí riziko, nebo ho povolit, pokud byl dříve zakázaný.

Důležité

Ujistěte se, že používáte modul rutin Prostředí Microsoft Graph PowerShell Beta.

  1. Spusťte následující příkaz:

    Install-Module Microsoft.Graph.Beta
    
  2. Připojení do Prostředí Microsoft Graph PowerShell:

    Connect-MgGraph -Scopes "Directory.ReadWrite.All"
    
  3. Načtěte aktuální hodnotu pro nastavení zásad souhlasu Nastavení adresáři ve vašem tenantovi. K tomu je potřeba zkontrolovat, jestli byla vytvořena nastavení adresáře pro tuto funkci. Pokud nebyly vytvořeny, použijte hodnoty z odpovídající šablony nastavení adresáře.

    $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. Zkontrolujte hodnotu:

    $riskBasedConsentEnabledValue
    

    Vysvětlení hodnoty nastavení:

    Nastavení Typ Popis
    BlockUserConsentForRiskyApps Logická hodnota Příznak označující, jestli se při zjištění rizikové žádosti zablokuje souhlas uživatele.
  5. Ke změně hodnoty BlockUserConsentForRiskyAppspoužijte rutinu 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
    

Další kroky