Azure Confidential Computing 用の Secure Key Release ポリシーの例

Secure Key Release (SKR) がリリースできるのは、Microsoft Azure Attestation (MAA) によって生成された要求に基づくエクスポート可能なマーク付けされたキーだけです。 SKR ポリシー定義と MAA 要求とは緊密に統合されています。 高信頼実行環境 (TEE) による MAA 要求については、こちらをご覧ください。

SKR ポリシーをどのようにカスタマイズできるかに関して、他の例のポリシーの文法に従ってください。

Intel SGX アプリケーション エンクレーブ SKR ポリシーの例

例 1: MAA 要求の一部として MR 署名者 (SGX エンクレーブ署名者) の詳細を検証する Intel SGX ベースの SKR ポリシー


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

例 2: MAA クレームの一部として、MR Signer (SGX エンクレーブ署名者) または MR Enclave の詳細を検証する Intel SGX ベースの SKR ポリシー


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

例 3: MAA クレームの一部として最小 SVN 番号の詳細を含み、MR Signer(SGX エンクレーブ署名者)と MR Enclave を検証する Intel SGX ベースの SKR ポリシー

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

機密 VM AMD SEV-SNP ベースの VM TEE SKR ポリシーの例

例 1: これが Azure 準拠の CVM であり、正規の AMD SEV-SNP ハードウェアで実行されていて、MAA URL 機関が多数のリージョンに分散しているかどうかを検証する SKR ポリシー。

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

例 2: CVM が Azure 準拠の CVM であり、正規の AMD SEV-SNP ハードウェアで実行されていて、既知の仮想マシン ID であるかどうかを検証する SKR ポリシー。 (VMID は Azure 全体で一意であり、次の例の要求の "等しい" 部分を目的の一意の 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>"
        }
      ]
    }
  ]
}

信頼ローンチVM(vTPM)SKRポリシーの例

Secure Key Releaseは機密コンピューティングの提供に限定されません。 Trusted Launch VM(第2世代、Secure Boot + vTPM)もMAA認証トークンを生成し、リリースポリシーはvTPMの測定ブート請求(securebootおよびx-ms-azurevm-attested-pcr-values.pcrN)をゲート化できます。 これらの主張にはAMDの SEV-SNP やIntel TDXハードウェアは必要ありません。 機密コンピューティングはさらに、メモリ内の展開された鍵マテリアルをホストから保護します。 その保護が必要なときに使ってください。 詳細な解説については、「認証ゲートされたSecure Key ReleaseでAzure VMsの知的財産を保護」をご覧ください。

例 1: Secure Boot を有効にして起動した VM を検証する Trusted Launch SKR ポリシー(正規の Trusted Launch プラットフォームと検証済みの vTPM クォートを証明する)。

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

例2: 特定のPCR値(ブートローダー/カーネルには pcr4 、セキュアブート状態には pcr7 )をマッチングしてブートされたイメージをピン留めるTrusted Launch SKRポリシーです。 既知の良好な証明トークンから期待値を読み出し、次のコードで代入します。 改ざん、再イメージ化、またはディスクスワップされたVMは異なるPCRを測定し、拒否されます。

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

Azure Container Instances (ACI) SKR ポリシーの機密コンテナーの例

例 1: ACI 上の機密コンテナーは、コンテナー グループ起動の一環として開始されたコンテナーとコンテナー構成メタデータを検証し、AMD SEV-SNP ハードウェアであることを追加検証します。

注

コンテナーのメタデータは、この例のように反映された rego ベースのポリシー ハッシュです。

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

リファレンス

Microsoft Azure Attestation (MAA)

認証ゲートされたSecure Key ReleaseでAzure VM上の知的財産を保護

セキュリティで保護されたキー リリースの概念と基本的な手順