다음을 통해 공유


Azure Attestation 로깅

하나 이상의 Azure Attestation 리소스를 만드는 경우 증명 인스턴스에 액세스하는 방법과 시기 및 대상을 모니터링해야 합니다. Microsoft Azure Attestation에 대한 로깅을 사용하도록 설정하면 사용자가 제공하는 Azure Storage 계정에 정보를 저장할 수 있습니다.

로깅 정보는 작업이 발생한 후 최대 10분까지 사용할 수 있습니다(대부분의 경우 더 빠를 수 있음). 스토리지 계정을 제공하므로 표준 Azure 액세스 제어를 통해 로그를 보호하고 스토리지 계정에 더 이상 유지하지 않으려는 로그를 삭제할 수 있습니다.

Azure Attestation 로그 해석

로깅을 사용하도록 설정하면 지정된 스토리지 계정 에서 insights-logs-auditevent, insights-logs-operational, insights-logs-notprocessed 등 최대 3개의 컨테이너가 자동으로 생성될 수 있습니다. insights-logs-operationalinsights-logs-notprocessed만 사용하는 것이 좋습니다. insights-logs-auditevent는 VBS를 사용하는 고객에게 로그에 대한 초기 액세스를 제공하기 위해 만들어졌습니다. 로깅에 대한 향후 향상된 기능은 insights-logs-operationalinsights-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 헤더, 수신된 헤더 수, 콘텐츠 형식 및 콘텐츠 길이를 포함합니다.

다음 단계