Exemplos de política de versão de chave segura para Computação Confidencial do Azure
O SKR (Liberação Segura de Chave) só pode liberar chaves marcadas como exportáveis com base nas declarações geradas pelo MAA (Atestado do Microsoft Azure). Há uma forte integração entre a definição de política do SKR e as declarações do MAA. As declarações do MAA pelo TEE (ambiente de execução confiável) podem ser encontradas aqui.
Siga a gramática de política para obter mais exemplos sobre como você pode personalizar as políticas de SKR.
Exemplos de política de SKR de enclaves de aplicativo do Intel SGX
Exemplo 1: a política de SKR baseada em SGX da Intel validando os detalhes do MR Signer (signatário do enclave SGX) como parte das declarações do MAA
{
"anyOf": [
{
"authority": "https://sharedeus2.eus2.attest.azure.net",
"allOf": [
{
"claim": "x-ms-sgx-mrsigner",
"equals": "9fa48b1629bd246a1de3d38fb7df97f6554cd65d6b3b72e85b86848ae6b578ba"
}
]
}
],
"version": "1.0.0"
}
Exemplo 2: a política de SKR baseada em Intel SGX validando os detalhes do MR Signer (signatário do enclave SGX) ou do Enclave do MR como parte das declarações do 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"
}
Exemplo 3: a política de SKR baseada em SGX da Intel validando o MR Signer (signatário do enclave SGX) e o Enclave do MR com um mínimo de detalhes do número SVN como parte das declarações do 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"
}
Exemplos confidenciais de política de SKR do TEE da VM com base em VM AMD SEV-SNP
Exemplo 1: uma política de SKR que valida se esta CVM está em conformidade com o Azure e está em execução em um hardware AMD SEV-SNP genuíno, e se a autoridade de URL do MAA está distribuída em várias regiões.
{
"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"
}
]
}
]
}
Exemplo 2: uma política de SKR que valida se a CVM é uma CVM compatível com o Azure, está em execução em um hardware AMD SEV-SNP genuíno e é de uma ID de Máquina Virtual conhecida. (As VMIDs são exclusivas no 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"
}
]
}
]
}
Exemplos de políticas de SKR de contêineres confidenciais nas ACIs (Instâncias de Contêiner do Azure)
Exemplo 1: contêineres confidenciais na ACI validando os contêineres iniciados e metadados de configuração de contêiner como parte do início do grupo de contêineres com validações adicionadas de que este é um hardware AMD SEV-SNP.
Observação
Os metadados de contêineres são um hash de política baseado em Rego refletido como neste exemplo.
{
"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"
}
]
}
]
}