Compartir por


Ejemplos de directivas de Liberación segura de claves para la informática confidencial de Azure

La Liberación segura de claves (SKR) solo puede liberar claves marcadas exportables basadas en las reclamaciones generadas por Microsoft Azure Attestation (MAA). Hay una estrecha integración de la definición de la directiva SKR con las reclamaciones de MAA. Las reclamaciones de MAA por entorno de ejecución de confianza (TEE) pueden encontrarse aquí.

Siga la gramática de directivas para ver más ejemplos sobre cómo puede personalizar las directivas SKR.

Ejemplos de directivas SKR de los enclaves de aplicación Intel SGX

Ejemplo 1: directiva SKR basada en Intel SGX que valida los datos del firmante MR (firmante del enclave SGX) como parte de las reclamaciones MAA


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

Ejemplo 2: directiva SKR basada en Intel SGX que valida el firmante MR (firmante del enclave SGX) o los detalles del enclave MR como parte de las reclamaciones MAA


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

Ejemplo 3: directiva SKR basada en Intel SGX que valida al firmante MR (firmante de enclave SGX) y al enclave MR con un número mínimo de SVN detallado como parte de las reclamaciones MAA

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

Ejemplos de directivas TEE SKR de máquina virtual confidenciales basadas en SEV-SNP de AMD

Ejemplo 1: una directiva SKR que valida si se trata de un CVM compatible con Azure y que se ejecuta en un hardware AMD SEV-SNP auténtico y la autoridad URL de MAA está repartida por muchas regiones.

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

Ejemplo 2: una directiva SKR que valida si el CVM es un CVM compatible con Azure y se está ejecutando en un hardware AMD SEV-SNP auténtico y es de un id. de máquina virtual conocido. (Los VMID son únicos en Azure)

{
  "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": "B958DC88-E41D-47F1-8D20-E57B6B7E9825"
        }
      ]
    }
  ]
}

Ejemplos de directivas SKR de contenedores confidenciales en Azure Container Instances (ACI)

Ejemplo 1: contenedores confidenciales en ACI validando los contenedores iniciados y los metadatos de configuración del contenedor como parte del lanzamiento del grupo de contenedores con validaciones agregadas de que se trata de un hardware AMD SEV-SNP.

Nota:

Los metadatos de los contenedores son un hash de directivas basado en rego reflejado como en este ejemplo..

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

Referencias

Microsoft Azure Attestation (MAA)

Concepto y pasos básicos de la Liberación segura de claves