AlapfogalmakBasic Concepts

Az alábbiakban néhány, az Microsoft Azure igazolással kapcsolatos alapfogalmakat talál.Below are some basic concepts related to Microsoft Azure Attestation.

JSON Web Token (JWT)JSON Web Token (JWT)

A JSON web token (JWT) egy nyílt szabványú RFC7519 módszer, amely a felek között JavaScript Object Notation (JSON) objektumként való biztonságos továbbítására szolgál.JSON Web Token (JWT) is an open standard RFC7519 method for securely transmitting information between parties as a JavaScript Object Notation (JSON) object. Ez az információ ellenőrizhető és megbízható, mert digitálisan alá van írva.This information can be verified and trusted because it is digitally signed. A JWTs titkos vagy nyilvános/titkos kulcspár használatával lehet aláírni.JWTs can be signed using a secret or a public/private key pair.

JSON-webkulcs (JWK)JSON Web Key (JWK)

A JSON webkulcs (JWK) egy olyan JSON-adatstruktúra, amely titkosítási kulcsot jelöl.JSON Web Key (JWK) is a JSON data structure that represents a cryptographic key. Ez a specifikáció egy JWK-készlet JSON-adatstruktúrát is definiál, amely JWKs jelöl.This specification also defines a JWK Set JSON data structure that represents a set of JWKs.

Igazolási szolgáltatóAttestation provider

Az igazolási szolgáltató a Microsoft. igazolás nevű Azure-erőforrás-szolgáltatóhoz tartozik.Attestation provider belongs to Azure resource provider named Microsoft.Attestation. Az erőforrás-szolgáltató egy olyan szolgáltatási végpont, amely Azure igazolási REST-szerződést biztosít, és Azure Resource Managerhasználatával van üzembe helyezve.The resource provider is a service endpoint that provides Azure Attestation REST contract and is deployed using Azure Resource Manager. Minden igazolási szolgáltató egy konkrét, felderíthető házirendet tart fenn.Each attestation provider honors a specific, discoverable policy. Az igazolási szolgáltatók minden egyes igazolási típushoz alapértelmezett szabályzattal jönnek létre (vegye figyelembe, hogy a VBS enklávé nem tartalmaz alapértelmezett szabályzatot).Attestation providers get created with a default policy for each attestation type (note that VBS enclave has no default policy). A SGX ENKLÁVÉHOZ vonatkozó alapértelmezett szabályzattal kapcsolatos további részletekért tekintse meg az igazolási szabályzat példáit .See examples of an attestation policy for more details on the default policy for SGX.

Regionális megosztott szolgáltatóRegional shared provider

Az Azure igazolása regionális közös szolgáltatót biztosít minden elérhető régióban.Azure Attestation provides a regional shared provider in every available region. Az ügyfelek dönthetnek úgy, hogy a regionális megosztott szolgáltatót használják az igazoláshoz, vagy egyéni szabályzatokkal hoznak létre saját szolgáltatókat.Customers can choose to use the regional shared provider for attestation, or create their own providers with custom policies. A megosztott szolgáltatók bármely Azure AD-felhasználó számára elérhetők, és a hozzá társított szabályzat nem módosítható.The shared providers are accessible by any Azure AD user and the policy associated with it cannot be altered.

RegionRegion Tanúsító URIAttest Uri
USA keleti régiójaEast US https://sharedeus.eus.attest.azure.net
USA nyugati régiójaWest US https://sharedwus.wus.attest.azure.net
Az Egyesült Királyság déli régiójaUK South https://shareduks.uks.attest.azure.net
Az Egyesült Királyság nyugati régiójaUK West https://sharedukw.ukw.attest.azure.net
Kelet-KanadaCanada East https://sharedcae.cae.attest.azure.net
Közép-KanadaCanada Central https://sharedcac.cac.attest.azure.net
Észak-EurópaNorth Europe https://sharedneu.neu.attest.azure.net
Nyugat-EurópaWest Europe https://sharedweu.weu.attest.azure.net
USA 2. keleti régiójaUS East 2 https://sharedeus2.eus2.attest.azure.net
Az USA középső régiójaCentral US https://sharedcus.cus.attest.azure.net

Igazolási kérelemAttestation request

Az igazolási kérelem az ügyfélalkalmazás által az igazolási szolgáltatónak küldendő szerializált JSON-objektum.Attestation request is a serialized JSON object sent by client application to attestation provider. A SGX ENKLÁVÉHOZ enklávé kérelem objektumának két tulajdonsága van:The request object for SGX enclave has two properties:

  • "Quota" – az "quote" tulajdonság értéke egy olyan karakterlánc, amely az igazolási idézet Base64URL kódolt ábrázolását tartalmazza.“Quote” – The value of the “Quote” property is a string containing a Base64URL encoded representation of the attestation quote
  • "EnclaveHeldData" – a "EnclaveHeldData" tulajdonság értéke egy olyan karakterlánc, amely az enklávéban tárolt adat Base64URL-kódolású ábrázolását tartalmazza.“EnclaveHeldData” – The value of the “EnclaveHeldData” property is a string containing a Base64URL encoded representation of the Enclave Held Data.

Az Azure-igazolás érvényesíti a megadott "árajánlatot", majd gondoskodik arról, hogy a megadott enklávé SHA256-kivonata az idézet reportData mezőjének első 32 bájtjában legyen kifejezve.Azure Attestation will validate the provided “Quote”, and will then ensure that the SHA256 hash of the provided Enclave Held Data is expressed in the first 32 bytes of the reportData field in the quote.

Igazolási szabályzatAttestation policy

Az igazolási szabályzat az igazolási tanúsítványok feldolgozására szolgál, és az ügyfelek által konfigurálható.Attestation policy is used to process the attestation evidence and is configurable by customers. Az Azure-igazolás középpontjában egy olyan házirend-motor található, amely a bizonyítékokat alkotó jogcímeket dolgozza fel.At the core of Azure Attestation is a policy engine, which processes claims constituting the evidence. A szabályzatok segítségével megállapítható, hogy az Azure-igazolás igazoló jogkivonatot állít ki a bizonyítékok alapján (vagy nem), és ezáltal jóváhagyja az igazolást (vagy nem).Policies are used to determine whether Azure Attestation shall issue an attestation token based on evidence (or not) , and thereby endorse the Attester (or not). Ennek megfelelően az összes házirend átadásának meghiúsulása esetén a rendszer nem ad ki JWT-jogkivonatot.Accordingly, failure to pass all the policies will result in no JWT token being issued.

Ha az igazolási szolgáltató alapértelmezett szabályzata nem felel meg az igényeknek, az ügyfelek az Azure-igazolás által támogatott bármely régióban létrehozhatnak egyéni házirendeket.If the default policy in the attestation provider doesn’t meet the needs, customers will be able to create custom policies in any of the regions supported by Azure Attestation. A házirend-kezelés az Azure-igazolás által az ügyfeleknek biztosított kulcsfontosságú szolgáltatás.Policy management is a key feature provided to customers by Azure Attestation. A szabályzatok az igazolási típusra vonatkoznak, és felhasználhatók a enklávék azonosítására, illetve jogcímek hozzáadására a kimeneti jogkivonathoz, vagy a jogcímek módosítása kimeneti jogkivonatban.Policies will be attestation type specific and can be used to identify enclaves or add claims to the output token or modify claims in an output token.

Tekintse meg a házirend-mintákhoz tartozó igazolási szabályzat példáit .See examples of an attestation policy for policy samples.

A szabályzat aláírásának előnyeiBenefits of policy signing

Az igazolási házirend végső soron meghatározza, hogy az Azure-igazolás alapján ki kell-e állítani az igazolási jogkivonatot.An attestation policy is what ultimately determines if an attestation token will be issued by Azure Attestation. A házirend meghatározza az igazolási jogkivonatban létrehozandó jogcímeket is.Policy also determines the claims to be generated in the attestation token. Ezért rendkívül fontos, hogy a szolgáltatás által kiértékelt házirend valójában a rendszergazda által írt szabályzatot, és azt a külső entitások nem módosították vagy módosították.It is thus of utmost importance that the policy evaluated by the service is in fact the policy written by the administrator and it has not been tampered or modified by external entities.

A megbízhatósági modell meghatározza az igazolási szolgáltató engedélyezési modelljét a szabályzat definiálásához és frissítéséhez.Trust model defines the authorization model of attestation provider to define and update policy. Két modell támogatott – az egyik az Azure AD-hitelesítésen alapul, az ügyfél által felügyelt titkosítási kulcsok (például elkülönített modell) birtokában.Two models are supported – one based on Azure AD authorization and one based on possession of customer-managed cryptographic keys (referred as isolated model). Az elkülönített modell lehetővé teszi az Azure-igazolást annak biztosítására, hogy az ügyfél által beküldött házirend ne legyen módosítva.Isolated model will enable Azure Attestation to ensure that the customer-submitted policy is not tampered.

Az elkülönített modellben a rendszergazda létrehoz egy tanúsító szolgáltatót, amely egy fájlban megbízható aláírási X. 509 tanúsítványokat határoz meg.In isolated model, administrator creates an attestation provider specifying a set of trusted signing X.509 certificates in a file. A rendszergazda Ezután hozzáadhat egy aláírt szabályzatot az igazolási szolgáltatóhoz.The administrator can then add a signed policy to the attestation provider. Az igazolási kérelem feldolgozása során az Azure-igazolás ellenőrzi a szabályzat aláírását a fejléc "jwk" vagy "x5c" paramétere által jelzett nyilvános kulccsal.While processing the attestation request, Azure Attestation will validate the signature of the policy using the public key represented by either the “jwk” or the “x5c” parameter in the header. Az Azure-igazolás azt is ellenőrzi, hogy a kérelem fejlécében található nyilvános kulcs szerepel-e az igazolási szolgáltatóhoz társított megbízható aláíró tanúsítványok listáján.Azure Attestation will also verify if public key in the request header is in the list of trusted signing certificates associated with the attestation provider. Így a függő entitás (Azure-igazolás) megbízhatónak minősítheti az általa ismert X. 509 tanúsítványokat használó szabályzatot.In this way, the relying party (Azure Attestation) can trust a policy signed using the X.509 certificates it knows about.

Lásd: példák a házirend-aláíró tanúsítványára mintákhoz.See examples of policy signer certificate for samples.

Igazolási jogkivonatAttestation token

Az Azure igazolási válasz egy JSON-karakterlánc lesz, amelynek értéke JWT tartalmaz.Azure Attestation response will be a JSON string whose value contains JWT. Az Azure igazolása becsomagolja a jogcímeket, és létrehoz egy aláírt JWT.Azure Attestation will package the claims and generates a signed JWT. Az aláírási művelet egy önaláírt tanúsítvány használatával történik, amelynek a tulajdonos neve megegyezik az igazolási szolgáltató AttestUri elemével.The signing operation is performed using a self-signed certificate with subject name matching the AttestUri element of the attestation provider.

Az OpenID-metaadatok beolvasása API az OpenID Connect Discovery protokolláltal megadott OpenID konfigurációs választ ad vissza.The Get OpenID Metadata API returns an OpenID Configuration response as specified by the OpenID Connect Discovery protocol. Az API az Azure-igazolás által használt aláíró tanúsítványokra vonatkozó metaadatokat kérdezi le.The API retrieves metadata about the signing certificates in use by Azure Attestation.

SGX ENKLÁVÉHOZ enklávéhoz generált JWT-példa:Example of JWT generated for an SGX enclave:

{
  "alg": "RS256",
  "jku": "https://tradewinds.us.attest.azure.net/certs",
  "kid": <self signed certificate reference to perform signature verification of attestation token,
  "typ": "JWT"
}.{
  "aas-ehd": <input enclave held data>,
  "exp": 1568187398,
  "iat": 1568158598,
  "is-debuggable": false,
  "iss": "https://tradewinds.us.attest.azure.net",
  "maa-attestationcollateral": 
    {
      "qeidcertshash": <SHA256 value of QE Identity issuing certs>,
      "qeidcrlhash": <SHA256 value of QE Identity issuing certs CRL list>,
      "qeidhash": <SHA256 value of the QE Identity collateral>,
      "quotehash": <SHA256 value of the evaluated quote>, 
      "tcbinfocertshash": <SHA256 value of the TCB Info issuing certs>, 
      "tcbinfocrlhash": <SHA256 value of the TCB Info issuing certs CRL list>, 
      "tcbinfohash": <SHA256 value of the TCB Info collateral>
     },
  "maa-ehd": <input enclave held data>,
  "nbf": 1568158598,
  "product-id": 4639,
  "sgx-mrenclave": <SGX enclave mrenclave value>,
  "sgx-mrsigner": <SGX enclave msrigner value>,
  "svn": 0,
  "tee": "sgx"
  "x-ms-attestation-type": "sgx", 
  "x-ms-policy-hash": <>,
  "x-ms-sgx-collateral": 
    {
      "qeidcertshash": <SHA256 value of QE Identity issuing certs>,
      "qeidcrlhash": <SHA256 value of QE Identity issuing certs CRL list>,
      "qeidhash": <SHA256 value of the QE Identity collateral>,
      "quotehash": <SHA256 value of the evaluated quote>, 
      "tcbinfocertshash": <SHA256 value of the TCB Info issuing certs>, 
      "tcbinfocrlhash": <SHA256 value of the TCB Info issuing certs CRL list>, 
      "tcbinfohash": <SHA256 value of the TCB Info collateral>
     },
  "x-ms-sgx-ehd": <>, 
  "x-ms-sgx-is-debuggable": true,
  "x-ms-sgx-mrenclave": <SGX enclave mrenclave value>,
  "x-ms-sgx-mrsigner": <SGX enclave msrigner value>, 
  "x-ms-sgx-product-id": 1, 
  "x-ms-sgx-svn": 1,
  "x-ms-ver": "1.0"
}.[Signature]

A fent használt jogcímek némelyike elavultnak minősül, de teljes mértékben támogatott.Some of the claims used above are considered deprecated but are fully supported. Azt javasoljuk, hogy minden jövőbeli kód és eszköz használja a nem elavult jogcímek nevét.It is recommended that all future code and tooling use the non-deprecated claim names. További információkért lásd: Az Azure-igazolás által kiállított jogcímek .See claims issued by Azure Attestation for more information.

Inaktív adatok titkosításaEncryption of data at rest

Az ügyféladatok védelme érdekében az Azure-tanúsítványok megőrzik az Azure Storage-ban tárolt adattárolási szolgáltatásait.To safeguard customer data, Azure Attestation persists its data in Azure Storage. Az Azure Storage az adatközpontokban tárolt adatok titkosítását biztosítja, és visszafejti az ügyfelek számára az elérését.Azure storage provides encryption of data at rest as it's written into data centers, and decrypts it for customers to access it. Ez a titkosítás egy Microsoft által felügyelt titkosítási kulcs használatával történik.This encryption occurs using a Microsoft managed encryption key.

Az Azure Storage-ban tárolt adatok védelme mellett az Azure igazolása Azure Disk Encryption (ADE) szolgáltatást is használ a szolgáltatásbeli virtuális gépek titkosításához.In addition to protecting data in Azure storage, Azure Attestation also leverages Azure Disk Encryption (ADE) to encrypt service VMs. Az olyan Azure-igazolások esetében, amelyek az Azure-beli bizalmas számítástechnikai környezetekben üzemelő enklávéban futnak, az ADE-bővítmény jelenleg nem támogatott.For Azure Attestation running in an enclave in Azure confidential computing environments, ADE extension is currently not supported. Ilyen esetekben az adatok memóriában való tárolásának megakadályozása érdekében a lapozófájl le van tiltva.In such scenarios, to prevent data from being stored in-memory, page file is disabled.

Az Azure igazolási példány helyi merevlemez-meghajtóján nem maradnak meg ügyféladatok.No customer data is being persisted on the Azure Attestation instance local hard disk drives.

Következő lépésekNext steps