Rejestrowanie zaświadczania platformy Azure

Jeśli tworzysz co najmniej jeden zasób zaświadczania platformy Azure, chcesz monitorować sposób i czas uzyskiwania dostępu do wystąpienia zaświadczania oraz przez kogo. Możesz to zrobić, włączając rejestrowanie dla zaświadczania platformy Microsoft Azure, które zapisuje informacje na podanym koncie usługi Azure Storage.

Informacje rejestrowania będą dostępne do 10 minut po wystąpieniu operacji (w większości przypadków będzie to szybsze). Ponieważ podasz konto magazynu, możesz zabezpieczyć dzienniki za pomocą standardowych kontroli dostępu platformy Azure i usunąć dzienniki, które nie chcesz już przechowywać na koncie magazynu.

Interpretowanie dzienników zaświadczania platformy Azure

Po włączeniu rejestrowania można automatycznie utworzyć maksymalnie trzy kontenery na określonym koncie magazynu: insights-logs-auditevent, insights-logs-operational, insights-logs-notprocessed. Zaleca się używanie tylko szczegółowych informacji dzienników operacyjnych i insights-logs-notprocessed. Insights-logs-auditevent został utworzony w celu zapewnienia wczesnego dostępu do dzienników dla klientów korzystających z języka VBS. Przyszłe ulepszenia rejestrowania będą występować w szczegółowych dziennikach operacyjnych i szczegółowych danych nieprocesowanych.

Szczegółowe informacje-logs-operational zawiera ogólne informacje we wszystkich typach TEE.

Szczegółowe informacje-logs-notprocessed zawiera żądania, których usługa nie może przetworzyć, zazwyczaj z powodu nieprawidłowo sformułowanych nagłówków HTTP, niekompletnych treści komunikatów lub podobnych problemów.

Poszczególne obiekty blob są przechowywane jako tekst w formacie obiektu blob JSON. Przyjrzyjmy się przykładowej pozycji dziennika:

{  
 "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": "" 
    } 
   } 
 } 

Większość tych pól jest udokumentowana w typowym schemacie najwyższego poziomu. W poniższej tabeli wymieniono nazwy pól i opisy wpisów, które nie zostały uwzględnione w typowym schemacie najwyższego poziomu:

Nazwa pola opis
Tracecontext Obiekt blob JSON reprezentujący kontekst śledzenia W3C
uri Identyfikator URI żądania

Właściwości zawierają dodatkowy kontekst specyficzny dla zaświadczania platformy Azure:

Nazwa pola opis
failureResourceId Identyfikator zasobu składnika, który spowodował niepowodzenie żądania
failureCategory Szeroka kategoria wskazująca kategorię niepowodzenia żądania. Obejmuje kategorie, takie jak AzureNetworkingPhysical, AzureAuthorization itp.
failureDetails Szczegółowe informacje o niepowodzeniu żądania, jeśli są dostępne
infoDataReceived Informacje o żądaniu odebrane od klienta. Zawiera niektóre nagłówki HTTP, liczbę odebranych nagłówków, typ zawartości i długość zawartości

Następne kroki