ייצוא מדיניות Conditional Access באמצעות Microsoft Graph API
מדיניות Conditional Access היא מרכיב קריטי באבטחת Azure AD, המספקת את הבקרות הנדרשות לאכיפת דרישות אבטחה ארגוניות. ניהול מדיניות זו, במיוחד בסביבות גדולות, יכול להיות מאתגר ללא הכלים הנכונים.
סקירת הסקריפט
Section titled “סקירת הסקריפט”הסקריפט מיועד להתחבר ל-Microsoft Graph ולאחזר את כל מדיניות Conditional Access המוגדרת בדייר Azure AD. הסקריפט מייצא את המדיניות, ומפרט כל הגדרה בעמודה משלה, מה שמקל על מנהלים לנתח ולנהל את תצורות ה-Conditional Access שלהם.
# Connect to Microsoft GraphConnect-MgGraph -Scopes "Policy.Read.All"
# Get all Conditional Access policies$policies = Get-MgIdentityConditionalAccessPolicy
# Create an array to hold the policy details$policyDetails = @()
foreach ($policy in $policies) { $detail = [PSCustomObject]@{ DisplayName = $policy.DisplayName State = $policy.State CreatedDateTime = $policy.CreatedDateTime ModifiedDateTime = $policy.ModifiedDateTime IncludeUsers = ($policy.Conditions.Users.IncludeUsers -join ", ") ExcludeUsers = ($policy.Conditions.Users.ExcludeUsers -join ", ") IncludeGroups = ($policy.Conditions.Users.IncludeGroups -join ", ") ExcludeGroups = ($policy.Conditions.Users.ExcludeGroups -join ", ") IncludeApplications = ($policy.Conditions.Applications.IncludeApplications -join ", ") ExcludeApplications = ($policy.Conditions.Applications.ExcludeApplications -join ", ") IncludePlatforms = ($policy.Conditions.Platforms.IncludePlatforms -join ", ") ExcludePlatforms = ($policy.Conditions.Platforms.ExcludePlatforms -join ", ") IncludeLocations = ($policy.Conditions.Locations.IncludeLocations -join ", ") ExcludeLocations = ($policy.Conditions.Locations.ExcludeLocations -join ", ") GrantControls = ($policy.GrantControls.BuiltInControls -join ", ") SessionControls = ($policy.SessionControls | ConvertTo-Json -Compress) } $policyDetails += $detail}
# Export to CSV$policyDetails | Export-Csv -Path "ConditionalAccessPolicies.csv" -NoTypeInformation
Write-Output "Exported $($policyDetails.Count) Conditional Access policies to ConditionalAccessPolicies.csv"
# DisconnectDisconnect-MgGraph