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ış.
Not
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
Not
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