Aracılığıyla paylaş


Güvenilen Donanım Kimlik Yönetimi

Güvenilen Donanım Kimlik Yönetimi hizmeti, Azure'da bulunan tüm güvenilen yürütme ortamları (TEE) için sertifikaların önbellek yönetimini işler. Ayrıca kanıtlama çözümleri için en düşük temeli zorlamak için güvenilir bilgi işlem tabanı (TCB) bilgileri sağlar.

Güvenilen Donanım Kimlik Yönetimi ve kanıtlama etkileşimleri

Güvenilen Donanım Kimliği Yönetimi, Azure gizli bilgi işlem (ACC) düğümleri için Azure güvenlik temelini tanımlar ve TEE sağlayıcılarının teminatını önbelleğe alır. Kanıtlama hizmetleri ve ACC düğümleri, TEE'leri doğrulamak için önbelleğe alınmış bilgileri kullanabilir. Aşağıdaki diyagramda bir kanıtlama hizmeti veya düğümü, Güvenilen Donanım Kimlik Yönetimi ve bir kapanım konağı arasındaki etkileşimler gösterilmektedir.

Diagram that illustrates interactions between an attestation service or node, Trusted Hardware Identity Management, and an enclave host.

Sık sorulan sorular

Intel işlemcilerle Güvenilen Donanım Kimlik Yönetimi'ni Nasıl yaparım? kullanın?

Intel SGX ve Intel TDX tırnakları oluşturmak için Intel Quote Oluşturma Kitaplığı'nın (QGL) teklif oluşturma/doğrulama teminatı erişimi olmalıdır. Bu teminatın tüm veya bölümleri Güvenilen Donanım Kimlik Yönetimi'nden getirilmelidir. Intel Quote Provider Library (QPL) veya Azure Veri Merkezi Kanıtlama Temel Öğeleri (DCAP) istemci kitaplığını kullanarak getirebilirsiniz.

Azure Doğrulama tarafından kullanılan Azure iç önbelleğe alma hizmeti API'sinin "sonraki güncelleştirme" tarihi güncel değil gibi görünüyor. Hala çalışır durumda mı ve kullanabilir miyim?

alanı tcbinfo TCB bilgilerini içerir. Güvenilen Donanım Kimlik Yönetimi hizmeti varsayılan olarak eski tcbinfo bilgiler sağlar. Intel'den en son bilgilere güncelleştirmek, en son tcbinfo Intel SDK'sına geçiş yapmamış olan müşteriler için kanıtlama hatalarına neden olabilir ve kesintilere neden olabilir.

Ancak Açık Kapanım SDK'sı ve Azure Doğrulama tarihe nextUpdate bakmaz ve kanıtlamayı geçirir.

Azure DCAP kitaplığı nedir?

Intel Quote Provider Library 'nin (QPL) yerini alan Azure Veri Merkezi Kanıtlama Temel Öğeleri (DCAP) kitaplığı, doğrudan Güvenilir Donanım Kimlik Yönetimi hizmetinden teklif oluşturma yardımcı ve teklif doğrulama yardımcısını getirir. Doğrudan Güvenilir Donanım Kimlik Yönetimi hizmetinden ikincil getirme, dış bağımlılıkları azaltmak için tüm Azure konaklarının Azure bulutu içinde ikincil olarak kullanılabilir olmasını sağlar. DCAP kitaplığının geçerli önerilen sürümü 1.11.2'dir.

En son Azure DCAP kitaplığını nereden indirebilirim?

Paketleri indirmek için aşağıdaki bağlantıları kullanın:

Ubuntu'nun daha yeni sürümleri (örneğin, Ubuntu 22.04) için Intel QPL'yi kullanmanız gerekir.

Güvenilen Donanım Kimlik Yönetimi ve Intel neden farklı temellere sahip?

Güvenilen Donanım Kimlik Yönetimi ve Intel, güvenilir bilgi işlem tabanının farklı temel düzeylerini sağlar. Müşteriler Intel'in en son temellere sahip olduğunu varsadığında, tüm gereksinimlerin karşılandığından emin olmaları gerekir. Müşteriler belirtilen gereksinimlere güncelleştirilmemişse bu yaklaşım bir kesintiye neden olabilir.

Güvenilen Donanım Kimlik Yönetimi, müşterilerin gerekli değişiklikleri kendi hızlarında yapabilmesi için TCB temelini güncelleştirmeye daha yavaş bir yaklaşım benimser. Bu yaklaşım daha eski bir TCB temeli sağlasa da, müşteriler yeni TCB temelinin gereksinimlerini karşılamadıysa bir kesinti yaşamaz. Bu nedenle Güvenilen Donanım Kimlik Yönetimi'nden alınan TCB temeli Intel'in temelinden farklı bir sürümdür. Müşterileri güncelleştirmeye zorlamak ve iş akışlarının yeniden düzenlenmesini gerektirecek bir kesintiye neden olmak yerine yeni TCB temelinin gereksinimlerini kendi hızlarında karşılamaları için güçlendirmek istiyoruz.

Intel Xeon E İşlemcileri ile sertifikalarımı doğrudan Intel PCS'den alabilirim. Intel Xeon Ölçeklenebilir işlemciler 4. nesilden itibaren neden Güvenilen Donanım Kimlik Yönetimi'nden sertifika almam gerekiyor? Peki bu sertifikaları nasıl getirebilirim?

4. Nesil Intel® Xeon® Ölçeklenebilir İşlemciler'den başlayarak Azure, Platform Bildirimi'ni kullanarak Intel'in Kayıt Hizmeti'nde dolaylı kayıt gerçekleştirir ve sonuçta elde edilen PCK sertifikasını Azure'ın dolaylı kaydı kullandığı Güvenilir Donanım Kimlik Yönetimi (THIM) hizmetinde depolar çünkü Intel'in kayıt hizmeti bu durumda bir platform için kök anahtarları depolamaz ve bu, PCK Sertifikaları bayrağına CachedKeys yansıtılırfalse. Dolaylı kayıt kullanıldığından, Intel PCS ile aşağıdaki tüm iletişimler Için Azure'ın sanal makinelere (VM) sağlamadığı Platform Bildirimi gerekir. Bunun yerine VM'lerin PCK sertifikalarını almak için THIM'ye ulaşması gerekir. PCK sertifikası almak için Intel QPL veya Azure DCAP kitaplığını kullanabilirsiniz.

Intel QPL'i Güvenilen Donanım Kimlik Yönetimi ile Nasıl yaparım? kullanın?

Müşteriler, Microsoft'tan (Azure DCAP istemci kitaplığı) başka bir bağımlılık indirmek zorunda kalmadan Güvenilir Donanım Kimlik Yönetimi ile etkileşimde bulunma amacıyla Intel QPL kullanma esnekliği isteyebilir. Intel QPL'yi Güvenilen Donanım Kimlik Yönetimi hizmetiyle kullanmak isteyen müşterilerin intel QPL yapılandırma dosyasını sgx_default_qcnl.conf olarak ayarlamaları gerekir.

Intel SGX veya Intel TDX tırnaklarını oluşturmak için kullanılan teklif oluşturma/doğrulama teminatı şunlara ayrılabilir:

  • PCK sertifikası. Bunu almak için müşterilerin Güvenilen Donanım Kimlik Yönetimi uç noktasını kullanması gerekir.
  • Diğer tüm teklif oluşturma/doğrulama teminatı. Müşteriler bunu almak için Güvenilen Donanım Kimlik Yönetimi uç noktasını veya Intel Sağlama Sertifika Hizmeti (PCS) uç noktasını kullanabilir.

Intel QPL yapılandırma dosyası (sgx_default_qcnl.conf), yardımcı uç noktaları tanımlamak için üç anahtar içerir. anahtar, pccs_url PCK sertifikalarını almak için kullanılan uç noktayı tanımlar. Anahtar, collateral_service diğer tüm teklif oluşturma/doğrulama yardımcılarını almak için kullanılan uç noktayı tanımlayabilir. collateral_service Anahtar tanımlanmamışsa, anahtarla tanımlanan uç noktadan tüm tırnak doğrulama yardımcı teminatı pccs_url alınır.

Aşağıdaki tabloda bu anahtarların nasıl ayarlanabileceği gösterilmektedir.

Veri Akışı Adı Olası uç noktalar
pccs_url Güvenilen Donanım Kimlik Yönetimi uç noktası: https://global.acccache.azure.net/sgx/certification/v3.
collateral_service Güvenilen Donanım Kimlik Yönetimi uç noktası (https://global.acccache.azure.net/sgx/certification/v3) veya Intel PCS uç noktası. sgx_default_qcnl.conf dosyasında her zaman anahtardaki en güncel uç nokta collateral_service listelenir.

Aşağıdaki kod parçacığı, Intel QPL yapılandırma dosyasının bir örneğindendir:

    { 
        "pccs_url": "https://global.acccache.azure.net/sgx/certification/v3/", 
        "use_secure_cert": true, 
        "collateral_service": "https://global.acccache.azure.net/sgx/certification/v3/",  
        "pccs_api_version": "3.1", 
        "retry_times": 6, 
        "retry_delay": 5, 
        "local_pck_url": "http://169.254.169.254/metadata/THIM/sgx/certification/v3/",
        "pck_cache_expire_hours": 24, 
        "verify_collateral_cache_expire_hours": 24, 
        "custom_request_options": { 
            "get_cert": { 
                "headers": { 
                    "metadata": "true" 
                }, 
                "params": { 
                    "api-version": "2021-07-22-preview" 
                } 
            } 
        } 
    }   

Aşağıdaki yordamlarda Intel QPL yapılandırma dosyasının nasıl değiştirileceği ve değişikliklerin nasıl etkinleştirileceği açıklanmaktadır.

Windows üzerinde

  1. Yapılandırma dosyasında değişiklik yapın.

  2. Aşağıdaki kayıt defteri konumundan ve anahtar/değerden dosyaya okuma izinleri olduğundan emin olun:

    [HKEY_LOCAL_MACHINE\SOFTWARE\Intel\SGX\QCNL]
    "CONFIG_FILE"="<Full File Path>"
    
  3. AESMD hizmetini yeniden başlatın. Örneğin, PowerShell'i yönetici olarak açın ve aşağıdaki komutları kullanın:

    Restart-Service -Name "AESMService" -ErrorAction Stop
    Get-Service -Name "AESMService"
    

Linux'ta

  1. Yapılandırma dosyasında değişiklik yapın. Örneğin, aşağıdaki komutu kullanarak değişiklikler için Vim kullanabilirsiniz:

    sudo vim /etc/sgx_default_qcnl.conf
    
  2. AESMD hizmetini yeniden başlatın. Herhangi bir terminali açın ve aşağıdaki komutları çalıştırın:

    sudo systemctl restart aesmd 
    systemctl status aesmd 
    

Gizli bir sanal makinede ikincil istek Nasıl yaparım??

VCEK sertifikasını ve sertifika zincirini içeren AMD yardımcısını istemek için gizli bir sanal makine (CVM) konuğunda aşağıdaki örneği kullanın. Bu teminat ve nereden geldiği hakkında ayrıntılı bilgi için bkz . Sürümlenmiş Yonga Onay Anahtarı (VCEK) Sertifikası ve KDS Arabirim Belirtimi.

URI parametreleri

GET "http://169.254.169.254/metadata/THIM/amd/certification"

Request body

Adı Tür Açıklama
Metadata Boolean True ayarı, teminat döndürülmesini sağlar.

Örnek isteği

curl GET "http://169.254.169.254/metadata/THIM/amd/certification" -H "Metadata: true"

Yanıtlar

Veri Akışı Adı Açıklama
200 OK JSON biçiminde HTTP gövdesinde kullanılabilen yardımcı listeler
Other Status Codes İşlemin neden başarısız olduğunu açıklar

Tanımlar

Tuş Açıklama
VcekCert RFC 5280'de tanımlanan X.509v3 sertifikası
tcbm Güvenilir bilgi işlem tabanı
certificateChain AMD SEV Anahtarı (ASK) ve AMD Kök Anahtarı (ARK) sertifikaları

CVM düğümündeki Azure Kubernetes Service Kapsayıcısı'nda AMD yardımcı isteğinde Nasıl yaparım??

Gizli bir kapsayıcıda AMD yardımcı isteğinde bulunmak için şu adımları izleyin:

  1. CvM düğümünde Azure Kubernetes Service (AKS) kümesi oluşturarak veya mevcut bir kümeye CVM düğüm havuzu ekleyerek başlayın:

    • CVM düğümünde AKS kümesi oluşturma:

      1. CVM tarafından desteklenen bölgelerden birinde kaynak grubu oluşturun:

        az group create --resource-group <RG_NAME> --location <LOCATION> 
        
      2. Kaynak grubunda bir CVM düğümü olan bir AKS kümesi oluşturun:

        az aks create --name <CLUSTER_NAME> --resource-group <RG_NAME> -l <LOCATION> --node-vm-size Standard_DC4as_v5 --nodepool-name <POOL_NAME> --node-count 1
        
      3. kubectl'yi kümeye bağlanacak şekilde yapılandırın:

        az aks get-credentials --resource-group <RG_NAME> --name <CLUSTER_NAME> 
        
    • Var olan bir AKS kümesine CVM düğüm havuzu ekleyin:

      az aks nodepool add --cluster-name <CLUSTER_NAME> --resource-group <RG_NAME> --name <POOL_NAME > --node-vm-size Standard_DC4as_v5 --node-count 1 
      
  2. komutunu kullanarak kubectl get kümenize bağlantıyı doğrulayın. Bu komut, küme düğümlerinin listesini döndürür.

    kubectl get nodes 
    

    Aşağıdaki çıkış örneği, önceki adımlarda oluşturduğunuz tek düğümü gösterir. Düğüm durumunun olduğundan Readyemin olun.

    AD DURUM ROLLERİ AGE (YAŞ) VERSION
    aks-nodepool1-31718369-0 Hazır aracı 6m44s v1.12.8
  3. Aşağıdaki içeriğe sahip bir curl.yaml dosyası oluşturun. Amd yardımcısını Güvenilen Donanım Kimlik Yönetimi uç noktasından getirmek için curl kapsayıcısı çalıştıran bir iş tanımlar. Kubernetes İşleri hakkında daha fazla bilgi için Kubernetes belgelerine bakın.

    apiVersion: batch/v1 
    kind: Job 
    metadata: 
      name: curl 
    spec: 
      template: 
        metadata: 
          labels: 
            app: curl 
        spec: 
          nodeSelector: 
            kubernetes.azure.com/security-type: ConfidentialVM 
          containers: 
            - name: curlcontainer 
              image: alpine/curl:3.14 
              imagePullPolicy: IfNotPresent 
              args: ["-H", "Metadata:true", "http://169.254.169.254/metadata/THIM/amd/certification"] 
          restartPolicy: "Never" 
    

    curl.yaml dosyası aşağıdaki bağımsız değişkenleri içerir.

    Adı Tür Açıklama
    Metadata Boolean True ayarı, teminat döndürülmesini sağlar.
  4. curl.yaml dosyasını uygulayarak işi çalıştırın:

    kubectl apply -f curl.yaml 
    
  5. Pod'un işini tamamlayıp tamamlanmasını bekleyin:

    kubectl get pods 
    

    Aşağıda bir yanıt örneği yer alır:

    Veri Akışı Adı Hazır Durum Yeni -den başlatma Yaş
    Curl-w7nt8 0/1 Tamamlandı 0 72 sn
  6. İş günlüklerini almak ve çalışıp çalışmadiğini doğrulamak için aşağıdaki komutu çalıştırın. Başarılı bir çıkış , tcbmve certificateChainiçermelidirvcekCert.

    kubectl logs job/curl  
    

Sonraki adımlar

  • Azure Doğrulama belgeleri hakkında daha fazla bilgi edinin.
  • Azure gizli bilgi işlem hakkında daha fazla bilgi edinin.