İngilizce dilinde oku

Aracılığıyla paylaş


PowerShell kullanarak risk tabanlı adım adım onay yapılandırma

Bu makalede, Microsoft Entra Id'de risk tabanlı adım adım onay yapılandırmayı öğreneceksiniz. Risk tabanlı adım adım onay, kullanıcının yasadışı onay isteklerinde bulunan kötü amaçlı uygulamalara maruz kalmasını azaltmaya yardımcı olur.

Örneğin, yayımcı tarafından doğrulanmamış ve temel olmayan izinler gerektiren yeni kaydedilen çok kiracılı uygulamalar için onay istekleri riskli kabul edilir. Riskli bir kullanıcı onayı isteği algılanırsa, istek bunun yerine yönetici onayı için bir "adım adım" gerektirir. Bu adım yükseltme özelliği varsayılan olarak etkindir, ancak yalnızca kullanıcı onayı etkinleştirildiğinde bir davranış değişikliğine neden olur.

Riskli bir onay isteği algılandığında, onay isteminde yönetici onayı gerektiğini belirten bir ileti görüntülenir. Yönetici onayı isteği iş akışı etkinleştirilirse, kullanıcı isteği doğrudan onay isteminden daha fazla gözden geçirmek üzere bir yöneticiye gönderebilir. Yönetici onayı isteği iş akışı etkin değilse aşağıdaki ileti görüntülenir:

AADSTS90094: <clientAppDisplayName'in> kuruluşunuzda yalnızca bir yöneticinin verebileceği kaynaklara erişme iznine sahip olması gerekir. Kullanmadan önce bir yöneticiden bu uygulamaya izin vermesini isteyin.

Bu durumda, bir denetim olayı da "ApplicationManagement" kategorisi, "Uygulamaya onay" etkinlik türü ve "Riskli uygulama algılandı" durum nedeni ile günlüğe kaydedilir.

Önkoşullar

Risk tabanlı adım adım onay yapılandırmak için şunları yapmanız gerekir:

Microsoft Graph PowerShell beta modülünü, bir riskin algılandığı durumlarda gerekli olan yönetici onayı adımlarını devre dışı bırakmak veya daha önce devre dışı bırakılmışsa etkinleştirmek için kullanabilirsiniz.

Önemli

Microsoft Graph PowerShell Beta cmdlet'leri modülünü kullandığınızdan emin olun.

  1. Şu komutu çalıştırın:

    Install-Module Microsoft.Graph.Beta
    
  2. Microsoft Graph PowerShell'e Bağlan:

    Connect-MgGraph -Scopes "Directory.ReadWrite.All"
    
  3. Kiracınızdaki Onay İlkesi Ayarlar dizin ayarları için geçerli değeri alın. Bunu yapmak için bu özelliğin dizin ayarlarının oluşturulup oluşturulmadığının denetlenmesi gerekir. Oluşturulmadıysa, ilgili dizin ayarları şablonundaki değerleri kullanın.

    $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. Değeri denetleyin:

    $riskBasedConsentEnabledValue
    

    Ayarlar değerini anlama:

    Ayar Type Açıklama
    BlockUserConsentForRiskyApps Boolean Riskli bir istek algılandığında kullanıcı onayının engellenip engellenmeyeceğini gösteren bir bayrak.
  5. değerini BlockUserConsentForRiskyAppsdeğiştirmek için Update-MgBetaDirectorySetting cmdlet'ini kullanın.

    $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
    

Sonraki adımlar