在排查环境中发生条件访问策略更改的原因和方式时,Microsoft Entra 审核日志是非常有价值的信息来源。
默认情况下,审核日志数据将保留 30 天,这可能不足以满足每个组织的需求。 组织可以通过将Microsoft Entra ID 中的诊断设置更改为:
- 将数据发送到 Log Analytics 工作区
- 将数据存档到存储帐户
- 将数据流式传输到事件中心
- 将数据发送到合作伙伴解决方案
在 Entra ID>监控和健康>诊断设置>编辑设置下查找这些选项。 如果没有诊断设置,请参阅 “创建诊断设置”,将平台日志和指标发送到不同的目标 ,以获取创建一个相关说明。
使用审核日志
至少以报告读取者身份登录到 Microsoft Entra 管理中心。
浏览到 Entra ID>监视和运行状况>审核日志。
选择要查询的 日期 范围。
在“服务”筛选器中,选择“条件访问”,然后选择“应用”按钮。
默认情况下,审核日志显示所有活动。 使用 活动 筛选器缩小活动范围。 有关条件访问的审核日志活动的完整列表,请参阅审核日志活动。
选择一行以查看详细信息。 “修改的属性”选项卡列出了所选审核活动的已修改 JSON 值。
使用 Log Analytics
Log Analytics 允许组织使用内置查询或自定义创建的 Kusto 查询查询数据。 有关详细信息,请参阅 Azure Monitor 中的日志查询入门。
启用后,在 Entra ID>Monitoring & health>Log Analytics 中找到 Log Analytics。 与条件访问管理员最相关的表是 AuditLogs。
AuditLogs
| where OperationName == "Update Conditional Access policy"
在 TargetResources>modifiedProperties 下查找更改。
读取值
审核日志和 Log Analytics 中的旧值和新值采用 JSON 格式。 比较这两个值以标识策略的更改。
旧策略示例:
{
"conditions": {
"applications": {
"applicationFilter": null,
"excludeApplications": [
],
"includeApplications": [
"797f4846-ba00-4fd7-ba43-dac1f8f63013"
],
"includeAuthenticationContextClassReferences": [
],
"includeUserActions": [
]
},
"clientAppTypes": [
"browser",
"mobileAppsAndDesktopClients"
],
"servicePrincipalRiskLevels": [
],
"signInRiskLevels": [
],
"userRiskLevels": [
],
"users": {
"excludeGroups": [
"eedad040-3722-4bcb-bde5-bc7c857f4983"
],
"excludeRoles": [
],
"excludeUsers": [
],
"includeGroups": [
],
"includeRoles": [
],
"includeUsers": [
"All"
]
}
},
"displayName": "Common Policy - Require MFA for Azure management",
"grantControls": {
"builtInControls": [
"mfa"
],
"customAuthenticationFactors": [
],
"operator": "OR",
"termsOfUse": [
"a0d3eb5b-6cbe-472b-a960-0baacbd02b51"
]
},
"id": "334e26e9-9622-4e0a-a424-102ed4b185b3",
"modifiedDateTime": "2021-08-09T17:52:40.781994+00:00",
"state": "enabled"
}
已更新的策略示例:
{
"conditions": {
"applications": {
"applicationFilter": null,
"excludeApplications": [
],
"includeApplications": [
"797f4846-ba00-4fd7-ba43-dac1f8f63013"
],
"includeAuthenticationContextClassReferences": [
],
"includeUserActions": [
]
},
"clientAppTypes": [
"browser",
"mobileAppsAndDesktopClients"
],
"servicePrincipalRiskLevels": [
],
"signInRiskLevels": [
],
"userRiskLevels": [
],
"users": {
"excludeGroups": [
"eedad040-3722-4bcb-bde5-bc7c857f4983"
],
"excludeRoles": [
],
"excludeUsers": [
],
"includeGroups": [
],
"includeRoles": [
],
"includeUsers": [
"All"
]
}
},
"displayName": "Common Policy - Require MFA for Azure management",
"grantControls": {
"builtInControls": [
"mfa"
],
"customAuthenticationFactors": [
],
"operator": "OR",
"termsOfUse": [
]
},
"id": "334e26e9-9622-4e0a-a424-102ed4b185b3",
"modifiedDateTime": "2021-08-09T17:52:54.9739405+00:00",
"state": "enabled"
}
在前面的示例中,更新的策略不包括授予控件中的使用条款。