Voorbeelden van secure Key Release-beleid voor Azure Confidential Computing

Secure Key Release (SKR) kan alleen geëxporteerde gemarkeerde sleutels vrijgeven op basis van de door Microsoft Azure Attestation (MAA) gegenereerde claims. Er is een nauwe integratie met de SKR-beleidsdefinitie voor MAA-claims. MAA-claims door de vertrouwde uitvoeringsomgeving (TEE) zijn te vinden hier.

Volg de beleids grammatica voor meer voorbeelden over hoe u het SKR-beleid kunt aanpassen.

Voorbeelden van SKR-beleid voor Intel SGX Application Enclaves

Voorbeeld 1: Het op Intel SGX gebaseerde SKR-beleid valideert de MR-ondertekenaar (SGX enclave-ondertekenaar) details als onderdeel van de MAA-claims.


{
  "anyOf": [
    {
      "authority": "https://sharedeus2.eus2.attest.azure.net",
      "allOf": [
        {
          "claim": "x-ms-sgx-mrsigner",
          "equals": "9fa48b1629bd246a1de3d38fb7df97f6554cd65d6b3b72e85b86848ae6b578ba"
        }
      ]
    }
  ],
  "version": "1.0.0"
}

Voorbeeld 2: Op Intel SGX gebaseerd SKR-beleid dat de MR-ondertekenaar (SGX enclave-ondertekenaar) of MR Enclave-gegevens valideert als onderdeel van de MAA-claims


{
  "anyOf": [
    {
      "authority": "https://sharedeus2.eus2.attest.azure.net",
      "allOf": [
        {
          "claim": "x-ms-sgx-mrsigner",
          "equals": "9fa48b1629bd246a1de3d38fb7df97f6554cd65d6b3b72e85b86848ae6b578ba"
        },
        {
          "claim": "x-ms-sgx-mrenclave",
          "equals": "9fa48b1629bg677jfsaawed7772e85b86848ae6b578ba"
        }
      ]
    }
  ],
  "version": "1.0.0"
}

Voorbeeld 3: Intel SGX-gebaseerd SKR-beleid dat de SGX enclave ondertekenaar (MR Signer) en MR Enclave valideert met details van een minimaal SVN-nummer als onderdeel van de MAA-claims.

{
  "anyOf": [
    {
      "authority": "https://sharedeus2.eus2.attest.azure.net",
      "allOf": [
        {
          "claim": "x-ms-sgx-mrsigner",
          "equals": "9fa48b1629bd246a1de3d38fb7df97f6554cd65d6b3b72e85b86848ae6b578ba"
        },
        {
          "claim": "x-ms-sgx-mrenclave",
          "equals": "9fa48b1629bg677jfsaawed7772e85b86848ae6b578ba"
        },
        {
          "claim": "x-ms-sgx-svn",
          "greater": 1
        }
      ]
    }
  ],
  "version": "1.0.0"
}

Voorbeelden van beleidsregels voor vertrouwelijke VM's op basis van AMD SEV-SNP VM TEE SKR

Voorbeeld 1: Een SKR-beleid dat valideert of dit voldoet aan cvm van Azure en wordt uitgevoerd op een legitieme AMD SEV-SNP-hardware en de MAA URL-instantie is verspreid over veel regio's.

{
    "version": "1.0.0",
    "anyOf": [
        {
            "authority": "https://sharedweu.weu.attest.azure.net",
            "allOf": [
                {
                    "claim": "x-ms-attestation-type",
                    "equals": "sevsnpvm"
                },
                {
                    "claim": "x-ms-compliance-status",
                    "equals": "azure-compliant-cvm"
                }
            ]
        },
        {
            "authority": "https://sharedeus2.weu2.attest.azure.net",
            "allOf": [
                {
                    "claim": "x-ms-attestation-type",
                    "equals": "sevsnpvm"
                },
                {
                    "claim": "x-ms-compliance-status",
                    "equals": "azure-compliant-cvm"
                }
            ]
        }
    ]
}

Voorbeeld 2: een SKR-beleid dat controleert of de CVM een azure-compatibele CVM is en wordt uitgevoerd op een legitieme AMD SEV-SNP-hardware en een bekende virtuele-machine-id heeft. (VMID's zijn uniek in Azure, bewerk het gedeelte 'is gelijk aan' van de claim in het onderstaande voorbeeld met de gewenste, unieke VMID)

{
  "version": "1.0.0",
  "allOf": [
    {
      "authority": "https://sharedweu.weu.attest.azure.net",
      "allOf": [
        {
          "claim": "x-ms-isolation-tee.x-ms-attestation-type",
          "equals": "sevsnpvm"
        },
        {
          "claim": "x-ms-isolation-tee.x-ms-compliance-status",
          "equals": "azure-compliant-cvm"
        },
        {
          "claim": "x-ms-azurevm-vmid",
          "equals": "<PLACE YOUR VMID here - for example - B958DC88-E41D-47F1-8D20-E57B6B7E9825>"
        }
      ]
    }
  ]
}

Voorbeelden van SKR-beleid voor Trusted Launch VM (vTPM)

Secure Key Release is niet beperkt tot confidential computing-oplossingen. Een Trusted Launch VM (Generatie 2, Secure Boot + vTPM) genereert ook een MAA-attestatietoken, en een releasebeleid kan worden gebaseerd op de vTPM-measured-boot-claims—secureboot en x-ms-azurevm-attested-pcr-values.pcrN. Deze uitspraken vereisen geen AMD SEV-SNP- of Intel TDX-hardware. Vertrouwelijk computergebruik beschermt bovendien het vrijgegeven sleutelmateriaal in het geheugen tegen de host. Gebruik het wanneer die bescherming nodig is. Voor een volledige walkthrough, zie Bescherm intellectueel eigendom op Azure VM's met attestation-gated Secure Key Release.

Voorbeeld 1: Een Trusted Launch SKR-beleid dat de VM valideert die met Secure Boot ingeschakeld is opgestart (bewijst een echt Trusted Launch-platform en een gevalideerde vTPM-quote).

{
  "version": "1.0.0",
  "anyOf": [
    {
      "authority": "https://sharedweu.weu.attest.azure.net",
      "allOf": [
        {
          "claim": "secureboot",
          "equals": true
        }
      ]
    }
  ]
}

Voorbeeld 2: Een Trusted Launch SKR-beleid dat het opgestartte image extra pint door specifieke PCR-waarden te matchen (meestal pcr4 voor de bootloader/kernel en pcr7 voor Secure Boot-status). Lees de verwachte waarden van een known-good attestation token en vervang ze vervolgens in de volgende code. Een gemanipuleerde, opnieuw geïnstalleerde of schijf-geswapte VM meet verschillende PCR's en wordt geweigerd.

{
  "version": "1.0.0",
  "anyOf": [
    {
      "authority": "https://sharedweu.weu.attest.azure.net",
      "allOf": [
        {
          "claim": "secureboot",
          "equals": true
        },
        {
          "claim": "x-ms-azurevm-attested-pcr-values.pcr4",
          "equals": "<BASE64_PCR4>"
        },
        {
          "claim": "x-ms-azurevm-attested-pcr-values.pcr7",
          "equals": "<BASE64_PCR7>"
        }
      ]
    }
  ]
}

Voorbeelden van vertrouwelijke containers in Azure Container Instances (ACI) SKR-beleid

Voorbeeld 1: Vertrouwelijke containers in ACI die de metagegevens van de containers die zijn geïnitieerd en containerconfiguratie valideren als onderdeel van het starten van een containergroep, met toegevoegde validaties dat dit een AMD SEV-SNP-hardware is.

Notitie

De metagegevens van containers zijn een op rego gebaseerde beleidshash die wordt weerspiegeld zoals in dit voorbeeld.

{
    "version": "1.0.0",
    "anyOf": [
        {
            "authority": "https://fabrikam1.wus.attest.azure.net",
            "allOf": [
                {
                    "claim": "x-ms-attestation-type",
                    "equals": "sevsnpvm"
                },
                {
                    "claim": "x-ms-compliance-status",
                    "equals": "azure-compliant-uvm"
                },
                {
                    "claim": "x-ms-sevsnpvm-hostdata",
                    "equals": "532eaabd9574880dbf76b9b8cc00832c20a6ec113d682299550d7a6e0f345e25"
                }
            ]
        }
    ]
}

Verwijzingen

Microsoft Azure Attestation (MAA)

Bescherm intellectueel eigendom op Azure VM's met een bevestigingsgecontroleerde Secure Key Release

Concept voor veilige sleutelrelease en basisstappen