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

网络安全外围的诊断日志

在本文中,你将了解网络安全边界的诊断日志,以及如何启用日志记录。 你将了解使用的访问日志类别。 然后,你将了解存储诊断日志的选项以及如何通过 Azure 门户启用日志记录。

重要

网络安全边界现已在所有 Azure 公共云区域中可用。 有关受支持的服务的信息,请参阅支持的 PaaS 服务的 载入专用链接资源

访问日志类别

网络安全外围的访问日志类别基于访问规则评估的结果。 诊断设置中选择的日志类别将发送到客户选择的存储位置。 以下是每个访问日志类别的说明,包括它们适用的模式:

日志类别 描述 适用于模式
NspPublicInboundPerimeterRulesAllowed 根据网络安全外围访问规则允许入站访问。 转换/强制实施
NspPublicInboundPerimeterRulesDenied 网络安全边界拒绝公共入站访问。 强制
NspPublicOutboundPerimeterRulesAllowed 根据网络安全外围访问规则允许出站访问。 转换/强制实施
NspPublicOutboundPerimeterRulesDenied 网络安全外围拒绝的公共出站访问。 强制
NspOutboundAttempt 网络安全外围内的出站尝试。 转换/强制实施
NspIntraPerimeterInboundAllowed 允许外围内的入站访问。 转换/强制实施
NspPublicInboundResourceRulesAllowed 当网络安全外围规则拒绝时,将基于 PaaS 资源规则允许入站访问。 过渡
NspPublicInboundResourceRulesDenied 当网络安全外围规则拒绝时,PaaS 资源规则拒绝入站访问。 过渡
NspPublicOutboundResourceRulesAllowed 当网络安全外围规则拒绝时,基于 PaaS 资源规则允许出站访问。 过渡
NspPublicOutboundResourceRulesDenied 当网络安全外围规则拒绝时,PaaS 资源规则拒绝出站访问。 过渡
NspPrivateInboundAllowed 允许专用终结点流量。 转换/强制实施

注意

网络安全外围的可用访问模式是“转换”和“强制实施”。 “转换”模式以前名为“学习”模式。 在某些情况下,你可能会继续看到对“学习”模式的引用

访问日志架构

启用时,每个与网络安全外围关联的 PaaS 资源都会生成具有统一日志架构的访问日志。

注意

网络安全边界访问日志可能已被汇总。 如果缺少字段“count”和“timeGeneratedEndTime”,请考虑聚合计数为 1。

价值 描述
时间 日志聚合窗口中第一个事件的时间戳(UTC)。
timeGeneratedEndTime 日志聚合窗口中最后一个事件的时间戳(UTC)。
计数 聚合的日志数。
resourceId 网络安全外围的资源 ID。
位置 网络安全防护边界区域。
operationName 此事件表示的 PaaS 资源操作名称。
操作版本 与操作关联的 API 版本。
类别 为 Access 日志定义的日志类别。
性能 与此类别事件相关的网络安全边界特定扩展属性。
resultDescription 此操作在 PaaS 资源中的静态文本描述,例如“获取存储文件”。

网络安全外围特定属性

本部分介绍日志架构中的网络安全外围特定属性。

注意

属性的应用程序受日志类别类型的约束。 请引用相应的日志类别架构,了解适用性。

价值 描述
serviceResourceId 发出网络安全外围访问日志的 PaaS 资源的资源 ID。
serviceFqdn 发出网络安全外围访问日志的 PaaS 资源的完全限定的域名。
轮廓 与资源关联的网络安全外围配置文件的名称。
参数 JSON 字符串格式的可选 PaaS 资源属性列表。 例如, { {Param1}: {value1}, {Param2}: {value2}, ...}.
appId 表示 Azure Active Directory 中资源应用 ID 的独特 GUID。
matchedRule 包含匹配 accessRule 名称 {“accessRule” : “{ruleName}”} 的 JSON 属性包。 它可以是网络安全外围访问规则名称或资源规则名称(而不是 ArmId)。
描述入站连接的源的 JSON 属性包。
目标 描述出站连接的目标的 JSON 属性包。
accessRulesVersion 包含资源访问规则版本的 JSON 属性包。

源属性

描述入站连接源的属性。

价值 描述
resourceId 入站连接的源 PaaS 资源的资源 ID。 将存在(如适用)。
ipAddress 进行入站连接的源的 IP 地址。 将存在(如适用)。
港口 入站连接的端口号。 可能并非对所有资源类型都存在。
协议 用于入站连接的应用层和传输层协议采用 {AppProtocol}:{TptProtocol} 格式。 例如 HTTPS:TCP。 可能并非对所有资源类型都存在。
perimeterGuids 源资源的外围 GUID 的列表。 只有在外围 GUID 允许的情况下,才应指定它。
appId 唯一 GUID,它表示 Azure Active Directory 中源的应用 ID。
参数 JSON 字符串格式的可选源属性列表。 例如, { {Param1}: {value1}, {Param2}: {value2}, ...}.

目标属性

描述出站连接目标的属性。

价值 描述
resourceId 出站连接的目标 PaaS 资源的资源 ID。 将存在(如适用)。
fullyQualifiedDomainName 目标的完全限定域名 (FQDN) 名称。
参数 JSON 字符串格式的可选目标属性列表。 例如, { {Param1}: {value1}, {Param2}: {value2}, ...}.
港口 出站连接的端口号。 可能并非对所有资源类型都存在。
协议 用于出站连接的应用层和传输层协议格式为 {AppProtocol}:{TptProtocol}。 例如 HTTPS:TCP。 可能并非对所有资源类型都存在。

入站类别的示例日志项目

{
  "time" : "{timestamp}",
  "timeGeneratedEndTime" : "{timestamp}",
  "count" : "{countOfAggregatedLogs}",
  "resourceId" : "/SUBSCRIPTIONS/{subsId}/RESOURCEGROUPS/{resourceGroupName}/PROVIDERS/MICROSOFT.NETWORK/NETWORKSECURITYPERIMETERS/{perimeterName}",
  "operationName" : "{PaaSOperationName}" ,
  "operationVersion" : "{api-version}",
  "category" : "{inboundCategory}",
  "location" : "{networksecurityperimeterRegion}",
  "properties" : {
    "serviceResourceId" : "/subscriptions/{paasSubsId}/resourceGroups/{paasResourceGroupName}/providers/{provider}/{resourceType}/{resourceName}",
    "serviceFqdn": "{PaaSResourceFQDN}",
    "accessRulesVersion" : "{accessRulesVersion}",
    "profile" : "{networksecurityperimeterProfileName}",
    "appId" : "{resourceAppId}",
    "parameters" : "{ {ParameterType1}: {value1}, {ParameterType2}: {value2}, ...}", // Parsable JSON 
    "matchedRule" : {
      "accessRule" : "{matchedRuleName}",
      },
    "source" : {
      "resourceId" : "/subscriptions/{sourceSubscriptionId}/resourceGroups/{sourceResourceGroupName}/providers/{sourceProvider}/{sourceResourceType}/{sourceResourceName}",
      "ipAddress": "{sourceIPAddress}",
      "perimeterGuids" : ["{sourcePerimeterGuid}"], // Only included if request comes from perimeter
      "appId" : "{sourceAppId}",
      "port" : "{Port}",
      "protocol" : "{Protocol}",
      "parameters" : "{ {ParameterType1}: {value1}, {ParameterType2}: {value2}, ...}", // Parsable JSON 
    },
  },
  "resultDescription" : "The static text description of this operation on the PaaS resource. For example, \"Get storage file.\""
}

出站类别的日志示例条目

{
  "time" : "{timestamp}",
  "timeGeneratedEndTime" : "{timestamp}",
  "count" : "{countOfAggregatedLogs}",
  "resourceId" : "/SUBSCRIPTIONS/{subsId}/RESOURCEGROUPS/{resourceGroupName}/PROVIDERS/MICROSOFT.NETWORK/NETWORKSECURITYPERIMETERS/{perimeterName}",
  "operationName" : "{PaaSOperationName}" ,
  "operationVersion" : "{api-version}",
  "category" : "{outboundCategory}",
  "location" : "{networksecurityperimeterRegion}",
  "properties" : {
    "serviceResourceId" : "/subscriptions/{paasSubsId}/resourceGroups/{paasResourceGroupName}/providers/{provider}/{resourceType}/{resourceName}",
    "serviceFqdn": "{PaaSResourceFQDN}",
    "accessRulesVersion" : "{accessRulesVersion}",
    "profile" : "{networksecurityperimeterProfileName}",
    "appId" : "{resourceAppId}",
    "parameters" : "{{ParameterType1}: {value1}, {ParameterType2}: {value2}, ...}", // Parsable JSON 
    "matchedRule" : {
      "accessRule" : "{matchedRuleName}",
      },
    "destination" : {
      "resourceId" : "/subscriptions/{destSubsId}/resourceGroups/{destResourceGroupName}/providers/{destProvider}/{destResourceType}/{destResourceName}",
      "fullyQualifiedDomainName" : "{destFQDN}",
      "appId" : "{destAppId}",
      "port" : "{Port}",
      "protocol" : "{Protocol}",
      "parameters" : "{ {ParameterType1}: {value1}, {ParameterType2}: {value2}, ...}", // Parsable JSON 
    },
  },
  "resultDescription" : "The static text description of this operation on the PaaS resource. For example, \"Get storage file.\""
}

访问日志的记录目标选项

存储网络安全外围诊断日志的目标包括 Log Analytic 工作区(表名称:NSPAccessLogs)、Azure 存储帐户和 Azure 事件中心等服务。 有关受支持目标的完整列表和详细信息,请参阅诊断日志的受支持目标

通过 Azure 门户启用日志记录

可以在 Azure 门户的“诊断设置”下启用网络安全外围的诊断日志记录。 添加诊断设置时,可以选择要收集的日志类别以及要将日志传送到的目标。

网络安全边界诊断设置选项的屏幕截图。

注意

将 Azure Monitor 与网络安全外围搭配使用时,要与网络安全外围关联的 Log Analytics 工作区需要位于 Azure Monitor 支持的区域之一。

警告

日志目标必须与 PaaS 资源位于相同的网络安全外围内,以确保 PaaS 资源日志的正确流。 对于未包含在加入的专用链接资源列表中的资源,如果要为其配置或已为其配置诊断设置,则会导致这些资源的日志流停止。

后续步骤