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

Azure 证明日志记录

如果创建一个或多个 Azure 证明资源,则你将希望监视访问证明实例的方式和时间,以及访问者。 为此,可以启用Microsoft Azure 证明的日志记录,这将在提供的 Azure 存储帐户中保存信息。

在操作发生后最多 10 分钟(在大多数情况下,日志记录信息会更快)。 由于你提供了存储帐户,因此你可以通过标准 Azure 访问控制来保护你的日志,并删除不再希望保留在存储帐户中的日志。

解释 Azure 证明日志

启用日志记录后,可能会在指定的存储帐户中自动创建最多三个容器: insights-logs-auditevent、insights-logs-operational、insights-logs-notprocessed。 建议仅使用 insights-logs-operational 和 insights-logs-notprocessed。 insights-logs-auditevent 已经创建,目的是为使用 VBS 的客户提供对日志的提前访问。 未来的日志记录增强功能将出现在 insights-logs-operational 和 insights-logs-notprocessed 中。

Insights-logs-operational 包含所有 TEE 类型的泛型信息。

Insights-logs-notprocessed 包含服务无法处理的请求,通常是由于 HTTP 标头格式不正确、消息正文不完整或类似问题。

每个 Blob 存储为文本,并格式化为 JSON Blob。 让我们看一个示例日志项:

{  
 "Time": "2021-11-03T19:33:54.3318081Z", 
 "resourceId": "/subscriptions/<subscription ID>/resourceGroups/<resource group name>/providers/Microsoft.Attestation/attestationProviders/<instance name>",
 "region": "EastUS", 
 "operationName": "AttestSgxEnclave", 
 "category": "Operational", 
 "resultType": "Succeeded", 
 "resultSignature": "400", 
 "durationMs": 636, 
 "callerIpAddress": "::ffff:24.17.183.201", 
 "traceContext": "{\"traceId\":\"e4c24ac88f33c53f875e5141a0f4ce13\",\"parentId\":\"0000000000000000\",}", 
 "identity": "{\"callerAadUPN\":\"deschuma@microsoft.com\",\"callerAadObjectId\":\"6ab02abe-6ca2-44ac-834d-42947dbde2b2\",\"callerId\":\"deschuma@microsoft.com\"}",
 "uri": "https://deschumatestrp.eus.test.attest.azure.net:443/attest/SgxEnclave?api-version=2018-09-01-preview", 
 "level": "Informational", 
 "location": "EastUS", 
 "properties": 
  { 
    "failureResourceId": "", 
    "failureCategory": "None", 
    "failureDetails": "", 
    "infoDataReceived": 
    { 
      "Headers": 
      { 
      "User-Agent": "PostmanRuntime/7.28.4" 
      }, 
      "HeaderCount": 10,
      "ContentType": "application/json",
      "ContentLength": 6912, 
      "CookieCount": 0, 
      "TraceParent": "" 
    } 
   } 
 } 

其中大多数字段都记录在顶级通用架构中。 下表列出了顶级通用架构中不包含的条目的字段名称和说明:

字段名称 说明
traceContext 表示 W3C 跟踪上下文的 JSON Blob
uri 请求 URI

这些属性包含其他特定于 Azure 证明的上下文:

字段名称 说明
failureResourceId 导致请求失败的组件的资源 ID
failureCategory 表示请求失败类别的广泛类别。 包括 AzureNetworkingPhysical、AzureAuthorization 等类别。
failureDetails 有关请求失败的详细信息(如果可用)
infoDataReceived 有关从客户端收到的请求的信息。 包括一些 HTTP 标头、收到的标头数、内容类型和内容长度

后续步骤