你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

高级安全信息模型 (ASIM) 身份验证规范化架构参考

Microsoft Sentinel身份验证架构用于描述与用户身份验证、登录和注销相关的事件。身份验证事件由许多报告设备发送,通常与其他事件一起作为事件流的一部分。 例如,Windows 将多个身份验证事件与其他 OS 活动事件一起发送。

身份验证事件包括来自专注于身份验证的系统(例如 VPN 网关或域控制器)的事件,以及对最终系统(如计算机或防火墙)的直接身份验证。

有关Microsoft Sentinel规范化的详细信息,请参阅规范化和高级安全信息模型 (ASIM)

解析 器

Microsoft Sentinel GitHub 存储库部署 ASIM 身份验证分析程序。 有关 ASIM 分析程序的详细信息,请参阅 文章 ASIM 分析程序概述

统一分析器

若要使用统一所有 ASIM 现成分析器的分析程序,并确保分析跨所有配置的源运行,请使用 imAuthentication 筛选分析程序或 ASimAuthentication 无参数分析器。

特定于源分析程序

有关Microsoft Sentinel提供的身份验证分析程序列表,请参阅 ASIM 分析程序列表

添加自己的规范化分析程序

为身份验证信息模型实现自定义分析程序时,使用以下语法命名 KQL 函数:

  • vimAuthentication<vendor><Product> 用于筛选分析程序
  • ASimAuthentication<vendor><Product> 用于无参数分析程序

有关将自定义分析程序添加到统一分析程序的信息,请参阅 管理 ASIM 分析程序

筛选分析程序参数

imvim* 分析程序支持筛选参数。 虽然这些分析器是可选的,但它们可以提高查询性能。

以下筛选参数可用:

名称 类型 说明
starttime datetime 仅筛选在此时间或之后运行的身份验证事件。 此参数筛选 TimeGenerated 字段,该字段是事件时间的标准指示符,而不考虑 EventStartTime 和 EventEndTime 字段的特定于分析器的映射。
endtime datetime 仅筛选在此时间或之前完成运行的身份验证事件。 此参数筛选 TimeGenerated 字段,该字段是事件时间的标准指示符,而不考虑 EventStartTime 和 EventEndTime 字段的特定于分析器的映射。
targetusername_has string 仅筛选具有任何列出的用户名的身份验证事件。

例如,若要仅筛选从最后一天到特定用户的身份验证事件,请使用:

imAuthentication (targetusername_has = 'johndoe', starttime = ago(1d), endtime=now())

提示

若要将文本列表传递给需要动态值的参数,请显式使用 动态文本。 例如:dynamic(['192.168.','10.'])

规范化内容

规范化的身份验证分析规则是独一无二的,因为它们检测跨源的攻击。 因此,例如,如果用户从不同的国家/地区登录到不同的不相关的系统,Microsoft Sentinel现在将检测到此威胁。

有关使用规范化身份验证事件的分析规则的完整列表,请参阅 身份验证架构安全内容

架构概述

身份验证信息模型与 OSSEM 登录实体架构保持一致。

下表中列出的字段特定于身份验证事件,但与其他架构中的字段类似,并遵循类似的命名约定。

身份验证事件引用以下实体:

  • TargetUser - 用于向系统进行身份验证的用户信息。 TargetSystem 是身份验证事件的主要使用者,别名“用户”将标识的 TargetUser 别名。
  • TargetApp - 向 进行身份验证的应用程序。
  • 目标 - 运行 TargetApp* 的系统。
  • 执行组件 - 启动身份验证的用户(如果不同于 TargetUser)。
  • ActingApp - 执行组件 用于执行身份验证的应用程序。
  • Src - 执行组件 用于启动身份验证的系统。

这些实体之间的关系最好如下所示:

在源系统 Src 上运行代理应用程序(代理应用程序)的 Actor 尝试以 TargetUser 身份对目标系统 TargetDvc 上的目标应用程序 TargetApp 进行身份验证。

架构详细信息

在下表中, 类型 是指逻辑类型。 有关详细信息,请参阅 逻辑类型

常见 ASIM 字段

重要

ASIM 通用字段一文中详细介绍了所有架构通用的字段。

具有特定准则的通用字段

以下列表提到了具有身份验证事件特定准则的字段:

字段 类型 说明
EventType 强制 枚举 描述记录报告的操作。

对于身份验证记录,支持的值包括:
- Logon
- Logoff
- Elevate
EventResultDetails 建议 枚举 与事件结果关联的详细信息。 当结果为失败时,通常会填充此字段。

允许的值包括:
- No such user or password. 当原始事件在没有引用密码的情况下报告没有此类用户时,也应使用此值。
- No such user
- Incorrect password
- Incorrect key
- Account expired
- Password expired
- User locked
- User disabled
- Logon violates policy. 当原始事件报告时,应使用此值,例如:需要 MFA、非工作时间登录、条件访问限制或过于频繁的尝试。
- Session expired
- Other

可以使用不同的术语在源记录中提供该值,这些术语应规范化为这些值。 原始值应存储在 EventOriginalResultDetails 字段中
EventSubType 可选 枚举 登录类型。 允许的值包括:
- System
- Interactive
- RemoteInteractive
- Service
- RemoteService
- Remote - 当远程登录类型未知时使用。
- AssumeRole - 通常在事件类型为 Elevate时使用。

可以使用不同的术语在源记录中提供该值,这些术语应规范化为这些值。 原始值应存储在 EventOriginalSubType 字段中
EventSchemaVersion 强制 SchemaVersion (String) 架构的版本。 此处记录的架构版本为 0.1.4
EventSchema 强制 枚举 此处记录的架构名称为 “身份验证”。
Dvc 字段 - - 对于身份验证事件,设备字段是指报告事件的系统。

所有常见字段

下表中显示的字段对所有 ASIM 架构都是通用的。 上面指定的任何准则都覆盖字段的一般准则。 例如,字段通常可能是可选的,但对于特定架构是必需的。 有关每个字段的更多详细信息,请参阅 ASIM 通用字段 一文。

Fields
强制 - EventCount
- EventStartTime
- EventEndTime
- EventType
- EventResult
- EventProduct
- EventVendor
- EventSchema
- EventSchemaVersion
- Dvc
建议 - EventResultDetails
- EventSeverity
- EventUid
- DvcIpAddr
- DvcHostname
- DvcDomain
- DvcDomainType
- DvcFQDN
- DvcId
- DvcIdType
- DvcAction
可选 - EventMessage
- EventSubType
- EventOriginalUid
- EventOriginalType
- EventOriginalSubType
- EventOriginalResultDetails
- EventOriginalSeverity
- EventProductVersion
- EventReportUrl
- EventOwner
- DvcZone
- DvcMacAddr
- DvcOs
- DvcOsVersion
- DvcOriginalAction
- DvcInterface
- AdditionalFields
- DvcDescription
- DvcScopeId
- DvcScope

特定于身份验证的字段

字段 类型 说明
LogonMethod 可选 String 用于执行身份验证的方法。 允许的值包括:Managed Identity、、Service PrincipalUsername & PasswordMulti factor authenticationPasswordlessPKI、、 PAMOther

例子: Managed Identity
LogonProtocol 可选 String 用于执行身份验证的协议。

例如:NTLM

执行组件字段

字段 类型 说明
ActorUserId 可选 String Actor 的计算机可读字母数字唯一表示形式。 有关详细信息,以及有关其他 ID 的备用字段,请参阅 User 实体

例如:S-1-12-1-4141952679-1282074057-627758481-2916039507
ActorScope 可选 String 定义 ActorUserIdActorUsername 的范围,例如Microsoft Entra租户。 有关详细信息和允许的值列表,请参阅架构概述一文中的 UserScope
ActorScopeId 可选 String 范围 ID,例如Microsoft Entra目录 ID,其中定义了 ActorUserIdActorUsername。 有关详细信息和允许的值列表,请参阅架构概述一文中的 UserScopeId
ActorUserIdType 条件 UserIdType 存储在 ActorUserId 字段中的 ID 的类型。 有关详细信息和允许的值列表,请参阅架构概述一文中的 UserIdType
ActorUsername 可选 用户名 (字符串) 执行组件的用户名,包括域信息(如果可用)。 有关详细信息,请参阅 用户实体

例如:AlbertE
ActorUsernameType 条件 UsernameType 指定 存储在 ActorUsername 字段中的用户名的类型。 有关详细信息和允许的值列表,请参阅架构概述一文中的 UsernameType

例如:Windows
ActorUserType 可选 UserType Actor 的类型。 有关详细信息和允许的值列表,请参阅架构概述一文中的 UserType

例如:Guest
ActorOriginalUserType 可选 String 报告设备报告的用户类型。
ActorSessionId 可选 String 执行组件登录会话的唯一 ID。

例如:102pTUgC3p8RIqHvzxLCHnFlg

代理应用程序字段

字段 类型 说明
ActingAppId 可选 String 代表执行组件授权的应用程序的 ID,包括进程、浏览器或服务。

例如:0x12ae8
ActingAppName 可选 String 代表执行组件授权的应用程序的名称,包括进程、浏览器或服务。

例如:C:\Windows\System32\svchost.exe
ActingAppType 可选 AppType 操作应用程序的类型。 有关详细信息和允许的值列表,请参阅架构概述一文中的 AppType
ActingOriginalAppType 可选 String 报告设备报告的代理应用程序的类型。
HttpUserAgent 可选 String 通过 HTTP 或 HTTPS 执行身份验证时,此字段的值是执行身份验证时由代理应用程序提供的user_agent HTTP 标头。

例如:Mozilla/5.0 (iPhone; CPU iPhone OS 12_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.0 Mobile/15E148 Safari/604.1

目标用户字段

字段 类型 说明
TargetUserId 可选 String 目标用户的计算机可读字母数字唯一表示形式。 有关详细信息,以及有关其他 ID 的备用字段,请参阅 User 实体

例如:00urjk4znu3BcncfY0h7
TargetUserScope 可选 String 定义 TargetUserIdTargetUsername 的范围,例如Microsoft Entra租户。 有关详细信息和允许的值列表,请参阅架构概述一文中的 UserScope
TargetUserScopeId 可选 String 范围 ID,如 Microsoft Entra 目录 ID,其中定义了 TargetUserIdTargetUsername。 有关详细信息和允许的值列表,请参阅架构概述一文中的 UserScopeId
TargetUserIdType 条件 UserIdType 存储在 TargetUserId 字段中的用户 ID 的类型。 有关详细信息和允许的值列表,请参阅架构概述一文中的 UserIdType

例如:SID
TargetUsername 可选 用户名 (字符串) 目标用户用户名,包括域信息(如果可用)。 有关详细信息,请参阅 用户实体

例如:MarieC
TargetUsernameType 条件 UsernameType 指定 存储在 TargetUsername 字段中的用户名的类型。 有关详细信息和允许的值列表,请参阅架构概述一文中的 UsernameType
TargetUserType 可选 UserType Target 用户的类型。 有关详细信息和允许的值列表,请参阅架构概述一文中的 UserType

例如:Member
TargetSessionId 可选 String 源设备上 TargetUser 的登录会话标识符。
TargetOriginalUserType 可选 String 报告设备报告的用户类型。
用户 别名 用户名 (字符串) TargetUsername 的别名,如果未定义 TargetUsername,则为 TargetUserId 的别名。

例如:CONTOSO\dadmin

源系统字段

字段 类型 说明
Src 建议 String 源设备的唯一标识符。

此字段可能会对 SrcDvcIdSrcHostnameSrcIpAddr 字段进行别名。

例如:192.168.12.1
SrcDvcId 可选 String 源设备的 ID。 如果有多个 ID 可用,请使用最重要的 ID,并将其他 ID 存储在 字段中 SrcDvc<DvcIdType>

例如:ac7e9755-8eae-4ffc-8a02-50ed7a2216c3
SrcDvcScopeId 可选 String 设备所属的云平台范围 ID。 SrcDvcScopeId 映射到 Azure 上的订阅 ID 和 AWS 上的帐户 ID。
SrcDvcScope 可选 String 设备所属的云平台范围。 SrcDvcScope 映射到 Azure 上的订阅 ID,以及 AWS 上的帐户 ID。
SrcDvcIdType 条件 DvcIdType SrcDvcId 的类型。 有关允许值的列表和详细信息,请参阅架构概述一文中的 DvcIdType

注意:如果使用 SrcDvcId ,则需要此字段。
SrcDeviceType 可选 DeviceType 源设备的类型。 有关允许值的列表和详细信息,请参阅架构概述一文中的 DeviceType
SrcHostname 可选 主机名称 源设备主机名,不包括域信息。 如果没有可用的设备名称,请将相关的 IP 地址存储在此字段中。

例如:DESKTOP-1282V4D
SrcDomain 可选 域 (字符串) 源设备的域。

例如:Contoso
SrcDomainType 条件 DomainType SrcDomain 的类型。 有关允许值的列表和详细信息,请参阅架构概述一文中的 DomainType

如果使用 SrcDomain, 则是必需的。
SrcFQDN 可选 FQDN (字符串) 源设备主机名,包括域信息(如果有)。

注意:此字段支持传统的 FQDN 格式和 Windows 域\主机名格式。 SrcDomainType 字段反映所使用的格式。

例如:Contoso\DESKTOP-1282V4D
SrcDescription 可选 String 与设备关联的描述性文本。 例如:Primary Domain Controller
SrcIpAddr 建议 IP 地址 源设备的 IP 地址。

例如:2.2.2.2
SrcPortNumber 可选 整数 发起连接的 IP 端口。

例如:2335
SrcDvcOs 可选 String 源设备的 OS。

例如:Windows 10
IpAddr 别名 SrcIpAddr 的别名
SrcIsp 可选 String Internet 服务提供商 (ISP) 源设备用来连接到 Internet。

例如:corpconnect
SrcGeoCountry 可选 国家/地区 例如:Canada

有关详细信息,请参阅 逻辑类型
SrcGeoCity 可选 市/县 例如:Montreal

有关详细信息,请参阅 逻辑类型
SrcGeoRegion 可选 地区 例如:Quebec

有关详细信息,请参阅 逻辑类型
SrcGeoLongitude 可选 Longitude 例如:-73.614830

有关详细信息,请参阅 逻辑类型
SrcGeoLatitude 可选 Latitude 例如:45.505918

有关详细信息,请参阅 逻辑类型
SrcRiskLevel 可选 整数 与源关联的风险级别。 值应调整为 范围,0设置为 ,并0针对良性和100100高风险。

例如:90
SrcOriginalRiskLevel 可选 String 与源关联的风险级别,由报告设备报告。

例如:Suspicious

目标应用程序字段

字段 类型 说明
TargetAppId 可选 String 需要授权的应用程序的 ID,通常由报告设备分配。

例如:89162
TargetAppName 可选 String 需要授权的应用程序的名称,包括服务、URL 或 SaaS 应用程序。

例如:Saleforce
应用 别名 TargetAppName 的别名。
TargetAppType 条件 AppType 代表执行组件授权的应用程序的类型。 有关详细信息和允许的值列表,请参阅架构概述一文中的 AppType
TargetOriginalAppType 可选 String 代表执行组件授权的应用程序类型,由报告设备报告。
TargetUrl 可选 URL 与目标应用程序关联的 URL。

例如:https://console.aws.amazon.com/console/home?fromtb=true&hashArgs=%23&isauthcode=true&nc2=h_ct&src=header-signin&state=hashArgsFromTB_us-east-1_7596bc16c83d260b
LogonTarget 别名 TargetAppNameTargetUrlTargetHostname 的别名,以最能描述身份验证目标的字段为准。

目标系统字段

字段 类型 说明
Dst 别名 String 身份验证目标的唯一标识符。

此字段可能会对 TargetDvcIdTargetHostnameTargetIpAddrTargetAppIdTargetAppName 字段进行别名。

例如:192.168.12.1
TargetHostname 建议 主机名称 目标设备主机名,不包括域信息。

例如:DESKTOP-1282V4D
TargetDomain 建议 域 (字符串) 目标设备的域。

例如:Contoso
TargetDomainType 条件 枚举 TargetDomain 的类型。 有关允许值的列表和详细信息,请参阅架构概述一文中的 DomainType

如果使用 TargetDomain, 则为必需项。
TargetFQDN 可选 FQDN (字符串) 目标设备主机名,包括域信息(如果可用)。

例如:Contoso\DESKTOP-1282V4D

注意:此字段支持传统的 FQDN 格式和 Windows 域\主机名格式。 TargetDomainType 反映了所使用的格式。
TargetDescription 可选 String 与设备关联的描述性文本。 例如:Primary Domain Controller
TargetDvcId 可选 String 目标设备的 ID。 如果有多个 ID 可用,请使用最重要的 ID,并将其他 ID 存储在 字段中 TargetDvc<DvcIdType>

例如:ac7e9755-8eae-4ffc-8a02-50ed7a2216c3
TargetDvcScopeId 可选 String 设备所属的云平台范围 ID。 TargetDvcScopeId 映射到 Azure 上的订阅 ID 和 AWS 上的帐户 ID。
TargetDvcScope 可选 String 设备所属的云平台范围。 TargetDvcScope 映射到 Azure 上的订阅 ID 和 AWS 上的帐户 ID。
TargetDvcIdType 条件 枚举 TargetDvcId 的类型。 有关允许值的列表和详细信息,请参阅架构概述一文中的 DvcIdType

如果使用 TargetDeviceId ,则是必需的。
TargetDeviceType 可选 枚举 目标设备的类型。 有关允许值的列表和详细信息,请参阅架构概述一文中的 DeviceType
TargetIpAddr 可选 IP 地址 目标设备的 IP 地址。

例如:2.2.2.2
TargetDvcOs 可选 String 目标设备的 OS。

例如:Windows 10
TargetPortNumber 可选 整数 目标设备的端口。
TargetGeoCountry 可选 国家/地区 与目标 IP 地址关联的国家/地区。

例如:USA
TargetGeoRegion 可选 地区 与目标 IP 地址关联的区域。

例如:Vermont
TargetGeoCity 可选 市/县 与目标 IP 地址关联的城市。

例如:Burlington
TargetGeoLatitude 可选 Latitude 与目标 IP 地址关联的地理坐标的纬度。

例如:44.475833
TargetGeoLongitude 可选 Longitude 与目标 IP 地址关联的地理坐标的经度。

例如:73.211944
TargetRiskLevel 可选 整数 与目标关联的风险级别。 值应调整为 范围,0设置为 ,并0针对良性和100100高风险。

例如:90
TargetOriginalRiskLevel 可选 String 与目标关联的风险级别,由报告设备报告。

例如:Suspicious

检查字段

以下字段用于表示安全系统执行的检查。

字段 类型 说明
RuleName 可选 String 与检查结果关联的规则的名称或 ID。
RuleNumber 可选 整数 与检查结果关联的规则编号。
Rule 别名 String RuleName 的值或 RuleNumber 的值。 如果使用 RuleNumber 的值,则类型应转换为字符串。
ThreatId 可选 String 在审核活动中标识的威胁或恶意软件的 ID。
ThreatName 可选 String 在审核活动中标识的威胁或恶意软件的名称。
ThreatCategory 可选 String 在审核文件活动中标识的威胁或恶意软件的类别。
ThreatRiskLevel 可选 RiskLevel (整数) 与标识的威胁关联的风险级别。 级别应为 介于 0100 之间的数字。

注意:可以使用其他比例在源记录中提供该值,应将其规范化为此比例。 原始值应存储在 ThreatRiskLevelOriginal 中
ThreatOriginalRiskLevel 可选 String 报告设备报告的风险级别。
ThreatConfidence 可选 ConfidenceLevel (Integer) 所识别的威胁的置信度,规范化为介于 0 和 100 之间的值。
ThreatOriginalConfidence 可选 String 已识别的威胁的原始置信度,由报告设备报告。
ThreatIsActive 可选 布尔值 如果确定的威胁被视为活动威胁,则为 True。
ThreatFirstReportedTime 可选 datetime 首次将 IP 地址或域标识为威胁。
ThreatLastReportedTime 可选 datetime 上次将 IP 地址或域标识为威胁的时间。
ThreatIpAddr 可选 IP 地址 识别其威胁的 IP 地址。 字段 ThreatField 包含 ThreatIpAddr 表示的字段的名称。
ThreatField 条件 枚举 已识别威胁的字段。 值为 SrcIpAddrTargetIpAddr

架构更新

以下是架构版本 0.1.1 中的更改:

  • 更新了用户和设备实体字段以与其他架构保持一致。
  • 分别将 TargetDvcSrcDvc 重命名为 TargetSrc 以符合当前 ASIM 准则。 重命名的字段将在 2022 年 7 月 1 日之前实现为别名。 这些字段包括:SrcDvcHostname、、SrcDvcHostnameTypeSrcDvcTypeTargetDvcHostnameSrcDvcIpAddrTargetDvcHostnameTypeTargetDvcTypeTargetDvcIpAddr和 。TargetDvc
  • 添加了别名 SrcDst
  • 添加了字段 SrcDvcIdTypeSrcDeviceTypeTargetDvcIdTypeTargetDeviceTypeEventSchema

以下是架构版本 0.1.2 中的更改:

  • 添加了字段 ActorScope、、TargetUserScopeSrcDvcScopeIdSrcDvcScopeTargetDvcScopeIdTargetDvcScopeDvcScopeId、 和 DvcScope

以下是架构版本 0.1.3 中的更改:

  • 添加了字段 SrcPortNumber、、ActorOriginalUserTypeActorScopeIdTargetOriginalUserTypeSrcRiskLevelSrcOriginalRiskLevelTargetUserScopeIdSrcDescription和 。TargetDescription
  • 添加了检查字段
  • 添加了目标系统地理位置字段。

以下是架构版本 0.1.4 中的更改:

  • 添加了字段 ActingOriginalAppTypeTargetOriginalAppType
  • 添加了别名 Application

后续步骤

有关更多信息,请参阅: