Hızlı Başlangıç: Azure PowerShell ile Azure Doğrulama ayarlama

Azure PowerShell kullanarak kanıtlama sağlayıcısı oluşturmak ve yapılandırmak için aşağıdaki adımları izleyin. Azure PowerShell'i yükleme ve çalıştırma hakkında bilgi için bkz. Azure PowerShell'e Genel Bakış.

Dekont

Az.Attestation PowerShell modülü artık Az PowerShell modülüyle tümleştirilmiştir. Kanıtlama işlemlerini desteklemek için gereken en düşük Az modülü sürümü:

  • Az PowerShell modülü 6.5.0

PowerShell Galerisi Aktarım Katmanı Güvenliği (TLS) 1.0 ve 1.1 sürümlerini kullanım dışı bırakmıştır. TLS 1.2 veya sonraki bir sürüm önerilir. Bu nedenle aşağıdaki hataları alabilirsiniz:

  • UYARI: 'https://www.powershellgallery.com/api/v2' paket kaynağı çözümlenemiyor
  • PackageManagement\Install-Package: Belirtilen arama ölçütü ve modül adı için eşleşme bulunamadı

PowerShell Galerisi ile etkileşime devam etmek için Install-Module komutlarının öncesinde aşağıdaki komutu çalıştırın

[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 

Azure'da oturum açma

PowerShell konsolunda (yükseltilmiş erişim ayrıcalıkları olmadan) Azure'da oturum açın.

Connect-AzAccount

Gerekirse, Azure Doğrulama için kullanılacak aboneliğe geçin.

Set-AzContext -Subscription <subscription id>  

Microsoft.Attestation kaynak sağlayıcısını kaydetme

Microsoft.Attestation kaynak sağlayıcısını aboneliğe kaydedin. Azure kaynak sağlayıcıları ve kaynak sağlayıcılarını yapılandırma ve yönetme hakkında daha fazla bilgi için bkz . Azure kaynak sağlayıcıları ve türleri. Kaynak sağlayıcısının kaydedilmesi abonelik için yalnızca bir kez gereklidir.

Register-AzResourceProvider -ProviderNamespace Microsoft.Attestation

Azure Doğrulama bölgesel kullanılabilirliği

(Get-AzResourceProvider -ProviderNamespace Microsoft.Attestation)[0].Locations

Azure kaynak grubu oluşturma

Kanıtlama sağlayıcısı için bir kaynak grubu oluşturun. Diğer Azure kaynakları (istemci uygulama örneğine sahip bir sanal makine dahil) aynı kaynak grubuna yerleştirilebilir.

$location = "uksouth" 
$attestationResourceGroup = "<attestation provider resource group name>"
New-AzResourceGroup -Name $attestationResourceGroup -Location $location 

Dekont

Bu kaynak grubunda bir kanıtlama sağlayıcısı oluşturulduktan sonra, ilke yapılandırması/ilke imzalayan sertifika yönetimi gibi işlemleri gerçekleştirmek için bir Microsoft Entra kullanıcısının sağlayıcıda Kanıtlama Katkıda Bulunanı rolüne sahip olması gerekir. Bu izinler, abonelikte/kaynak grubunda Sahip (joker karakter izinleri)/ Katkıda Bulunan (joker karakter izinleri) gibi rollerle de devralınabilir.

Kanıtlama sağlayıcısı oluşturma ve yönetme

New-AzAttestation bir kanıtlama sağlayıcısı oluşturur.

$attestationProvider = "<attestation provider name>" 
New-AzAttestationProvider -Name $attestationProvider -ResourceGroupName $attestationResourceGroup -Location $location

PolicySignerCertificateFile, güvenilen imzalama anahtarları kümesini belirten bir dosyadır. PolicySignerCertificateFile parametresi için bir dosya adı belirtilirse kanıtlama sağlayıcısı yalnızca imzalı JWT biçiminde ilkelerle yapılandırılabilir. Aksi halde ilkesi metin veya imzasız JWT biçiminde yapılandırılabilir.

New-AzAttestationProvider -Name $attestationProvider -ResourceGroupName $attestationResourceGroup -Location $location -PolicySignersCertificateFile "C:\test\policySignersCertificates.pem"

PolicySignersCertificateFile örneği için bkz . ilke imzalayan sertifika örnekleri.

Get-AzAttestation, durum ve AttestURI gibi kanıtlama sağlayıcısı özelliklerini alır. Daha sonra gerekeceği için AttestURI'yi not alın.

Get-AzAttestationProvider -Name $attestationProvider -ResourceGroupName $attestationResourceGroup  

Yukarıdaki komut şu biçimde çıkış üretmelidir:

Id:/subscriptions/MySubscriptionID/resourceGroups/MyResourceGroup/providers/Microsoft.Attestation/attestationProviders/MyAttestationProvider
Location: MyLocation
ResourceGroupName: MyResourceGroup
Name: MyAttestationProvider
Status: Ready
TrustModel: AAD
AttestUri: https://MyAttestationProvider.us.attest.azure.net 
Tags: 
TagsTable: 

Kanıtlama sağlayıcıları Remove-AzAttestation cmdlet'i kullanılarak silinebilir.

Remove-AzAttestationProvider -Name $attestationProvider -ResourceGroupName $attestationResourceGroup

İlke yönetimi

İlkeleri yönetmek için, bir Microsoft Entra kullanıcısı "Eylemler" için aşağıdaki izinleri gerektirir:

  • Microsoft.Attestation/attestationProviders/kanıtlama/okuma
  • Microsoft.Attestation/attestationProviders/kanıtlama/yazma
  • Microsoft.Attestation/attestationProviders/attestation/delete

Bu eylemleri gerçekleştirmek için, bir Microsoft Entra kullanıcısının kanıtlama sağlayıcısında Kanıtlama Katkıda Bulunanı rolüne sahip olması gerekir. Bu izinler, abonelikte/kaynak grubunda Sahip (joker karakter izinleri)/ Katkıda Bulunan (joker karakter izinleri) gibi rollerle de devralınabilir.

İlkeleri okumak için, bir Microsoft Entra kullanıcısı "Eylemler" için aşağıdaki izni gerektirir:

  • Microsoft.Attestation/attestationProviders/kanıtlama/okuma

Bu eylemi gerçekleştirmek için, bir Microsoft Entra kullanıcısının kanıtlama sağlayıcısında Kanıtlama Okuyucusu rolüne sahip olması gerekir. Okuma izinleri, abonelik/ kaynak grubundaki Okuyucu (joker karakter izinleri) gibi rollerle de devralınabilir.

Bu PowerShell cmdlet'leri bir kanıtlama sağlayıcısı (bir kerede bir TEE) için ilke yönetimi sağlar.

Get-AzAttestationPolicy, belirtilen TEE için geçerli ilkeyi döndürür. Cmdlet ilkeyi hem metin hem de JWT biçiminde görüntüler.

$teeType = "<tee Type>"
Get-AzAttestationPolicy   -Name $attestationProvider -ResourceGroupName $attestationResourceGroup -Tee $teeType 

Desteklenen TEE türleri şunlardır: "SgxEnclave", "OpenEnclave" ve "VbsEnclave".

Set-AttestationPolicy, belirtilen TEE için yeni bir ilke ayarlar. Cmdlet, ilkeyi metin veya JWT biçiminde kabul eder ve PolicyFormat parametresi tarafından denetlenmektedir. "Metin", PolicyFormat için varsayılan değerdir.

$policyFormat = "<policy format>"
$policy=Get-Content -path "C:\test\policy.txt" -Raw
Set-AzAttestationPolicy   -Name $attestationProvider -ResourceGroupName $attestationResourceGroup -Tee $teeType -Policy $policy -PolicyFormat $policyFormat 

Bir kanıtlama sağlayıcısı oluşturulurken PolicySignerCertificateFile sağlanırsa, ilkeler yalnızca imzalı JWT biçiminde yapılandırılabilir. Aksi halde ilkesi metin veya imzasız JWT biçiminde yapılandırılabilir.

JWT biçiminde kanıtlama ilkesi "AttestationPolicy" adlı bir talep içermelidir. İmzalı ilke için JWT, mevcut ilke imzalayan sertifikalarından herhangi birine karşılık gelen özel anahtarla imzalanmalıdır.

İlke örnekleri için bkz . kanıtlama ilkesi örnekleri.

Reset-AzAttestationPolicy, ilkeyi belirtilen TEE için varsayılan olarak sıfırlar.

Reset-AzAttestationPolicy -Name $attestationProvider -ResourceGroupName $attestationResourceGroup -Tee $teeType 

İlke imzalayan sertifika yönetimi

Bu PowerShell cmdlet'leri, bir kanıtlama sağlayıcısı için ilke imzalayan sertifika yönetimi sağlar:

Get-AzAttestationPolicySigners -Name $attestationProvider -ResourceGroupName $attestationResourceGroup

Add-AzAttestationPolicySigner -Name $attestationProvider -ResourceGroupName $attestationResourceGroup -Signer <signer>

Remove-AzAttestationPolicySigner -Name $attestationProvider -ResourceGroupName $attestationResourceGroup -Signer <signer>

İlke imzalayan sertifikası, "maa-policyCertificate" adlı taleple imzalanmış bir JWT'dir. Talebin değeri, eklenecek güvenilir imzalama anahtarını içeren bir JWK'dir. JWT, mevcut ilke imzalayan sertifikalarından herhangi birine karşılık gelen özel anahtarla imzalanmalıdır.

İlke imzalayan sertifikasının tüm anlamsal düzenlemesi PowerShell dışında yapılmalıdır. PowerShell söz konusu olduğunda, basit bir dizedir.

İlke imzalayan sertifika örneği için bkz . İlke imzalayan sertifika örnekleri.

Cmdlet'ler ve parametreleri hakkında daha fazla bilgi için bkz. PowerShell cmdlet'lerini Azure Doğrulama

Sonraki adımlar