Cara memutar rahasia untuk Event Hubs di Azure Stack Hub
Artikel ini akan menunjukkan kepada Anda cara memutar rahasia yang digunakan oleh penyedia sumber daya Azure Event Hubs.
Gambaran umum dan prasyarat
Catatan
Rotasi rahasia untuk penyedia sumber daya nilai tambah (RV) saat ini hanya didukung melalui PowerShell. Juga, Anda harus secara proaktif memutar rahasia untuk RP nilai tambah secara teratur, karena peringatan administratif saat ini tidak dihasilkan.
Seperti infrastruktur Azure Stack Hub, penyedia sumber daya nilai tambah menggunakan rahasia internal dan eksternal. Rahasia dapat mengambil berbagai bentuk, termasuk kata sandi dan kunci enkripsi yang dikelola oleh sertifikat X509. Sebagai operator, Anda bertanggung jawab untuk:
- Memberikan rahasia eksternal yang diperbarui, seperti sertifikat TLS baru yang digunakan untuk mengamankan titik akhir penyedia sumber daya.
- Mengelola rotasi rahasia penyedia sumber daya secara teratur.
Dalam persiapan untuk proses rotasi:
Tinjau persyaratan sertifikat infrastruktur kunci umum (PKI) Azure Stack Hub untuk informasi prasyarat penting sebelum memperoleh/memperpanjang sertifikat X509 Anda, termasuk detail tentang format PFX yang diperlukan. Tinjau juga persyaratan yang ditentukan di bagian sertifikat PaaS opsional, untuk penyedia sumber daya nilai tambah khusus Anda.
Jika Anda belum melakukannya, Instal modul PowerShell Az untuk Azure Stack Hub sebelum melanjutkan. Versi 2.0.2-pratinjau atau yang lebih baru diperlukan untuk rotasi rahasia Azure Stack Hub. Untuk informasi selengkapnya, lihat Bermigrasi dari AzureRM ke Azure PowerShell Az di Azure Stack Hub.
Menyiapkan sertifikat TLS baru
Selanjutnya, buat atau perpanjang sertifikat TLS Anda untuk mengamankan titik akhir penyedia sumber daya nilai tambah:
Selesaikan langkah-langkah di Membuat permintaan penandatanganan sertifikat (CSR) untuk perpanjangan sertifikat untuk penyedia sumber daya Anda. Di sini, Anda menggunakan alat Pemeriksa Kesiapan Azure Stack Hub untuk membuat CSR. Pastikan untuk menjalankan cmdlet yang benar untuk penyedia sumber daya Anda, di langkah "Membuat permintaan sertifikat untuk layanan Azure Stack Hub lainnya". Misalnya
New-AzsHubEventHubsCertificateSigningRequest
digunakan untuk Azure Event Hubs. Setelah selesai, Anda mengirimkan yang dihasilkan. File REQ ke Otoritas Sertifikat (CA) Anda untuk sertifikat baru.Setelah Anda menerima file sertifikat dari CA, selesaikan langkah-langkah di Menyiapkan sertifikat untuk penyebaran atau rotasi. Anda menggunakan alat Pemeriksa Kesiapan lagi, untuk memproses file yang ditampilkan dari CA.
Terakhir, selesaikan langkah-langkah di Memvalidasi sertifikat PKI Azure Stack Hub. Anda menggunakan alat Pemeriksa Kesiapan sekali lagi, untuk melakukan uji validasi pada sertifikat baru Anda.
Memutar rahasia
Terakhir, tentukan properti penyebaran terbaru penyedia sumber daya dan gunakan untuk menyelesaikan proses rotasi rahasia.
Menentukan properti penyebaran
Penyedia sumber daya disebarkan ke lingkungan Azure Stack Hub Anda sebagai paket produk versi. Paket diberi ID paket unik, dalam format '<product-id>.<installed-version>'
. Dengan <product-id>
adalah string unik yang mewakili penyedia sumber daya, dan <installed-version>
mewakili versi tertentu. Rahasia yang terkait dengan setiap paket disimpan di layanan Azure Stack Hub Key Vault.
Buka konsol PowerShell yang ditinggikan dan selesaikan langkah-langkah berikut untuk menentukan properti yang diperlukan untuk memutar rahasia penyedia sumber daya:
Masuk ke lingkungan Azure Stack Hub Anda menggunakan info masuk operator Anda. Lihat Menyambungkan ke Azure Stack Hub dengan PowerShell untuk skrip masuk PowerShell. Pastikan untuk menggunakan cmdlet PowerShell Az (bukan AzureRM), dan ganti semua nilai placeholder, seperti URL titik akhir dan nama penyewa direktori.
Jalankan
Get-AzsProductDeployment
cmdlet untuk mengambil daftar penyebaran penyedia sumber daya terbaru. Kumpulan"value"
yang ditampilkan berisi elemen untuk setiap penyedia sumber daya yang disebarkan. Temukan penyedia sumber daya yang menarik dan catat nilai untuk properti ini:-
"name"
- berisi ID produk penyedia sumber daya di segmen kedua pada nilainya. -
"properties"."deployment"."version"
- berisi nomor versi yang saat ini disebarkan.
Dalam contoh berikut, perhatikan penyebaran Azure Event Hubs RP di elemen pertama dalam koleksi, yang memiliki ID produk
"microsoft.eventhub"
, dan versi"1.2003.0.0"
:PS C:\WINDOWS\system32> Get-AzsProductDeployment -AsJson VERBOSE: GET https://adminmanagement.myregion.mycompany.com/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/providers/Microsoft.Deployment.Admin/locations/global/productDeployments?api-version=2019-01-01 with 0-char payload VERBOSE: Received 2656-char response, StatusCode = OK { "value": [ { "id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/providers/Microsoft.Deployment.Admin/locations/global/productDeployments/microsoft.eventhub", "name": "global/microsoft.eventhub", "type": "Microsoft.Deployment.Admin/locations/productDeployments", "properties": { "status": "DeploymentSucceeded", "subscriptionId": "bbbb1b1b-cc2c-dd3d-ee4e-ffffff5f5f5f", "deployment": { "version": "1.2003.0.0", "actionPlanInstanceResourceId":"/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/providers/Microsoft.Deployment.Admin/locations/global/actionplans/cccc2c2c-dd3d-ee4e-ff5f-aaaaaa6a6a6a", "parameters": { } }, "lastSuccessfulDeployment": { "version": "1.2003.0.0", "actionPlanInstanceResourceId":"/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/providers/Microsoft.Deployment.Admin/locations/global/actionplans/cccc2c2c-dd3d-ee4e-ff5f-aaaaaa6a6a6a", "parameters": { } }, "provisioningState": "Succeeded" } }, { ... } ] }
-
Buat ID paket penyedia sumber daya, dengan menggabungkan ID produk dan versi penyedia sumber daya. Misalnya, menggunakan nilai yang berasal dari langkah sebelumnya, ID paket RP Azure Event Hubs adalah
microsoft.eventhub.1.2003.0.0
.Menggunakan ID paket yang berasal dari langkah sebelumnya, jalankan
Get-AzsProductSecret -PackageId
untuk mengambil daftar jenis rahasia yang digunakan oleh penyedia sumber daya. Dalam kumpulanvalue
yang ditampilkan, temukan elemen yang berisi nilai"Certificate"
untuk properti"properties"."secretKind"
. Elemen ini berisi properti untuk rahasia sertifikat RP. Catat nama yang ditetapkan untuk rahasia sertifikat ini, yang diidentifikasi oleh segmen terakhir dari properti"name"
, tepat di atas"properties"
.Dalam contoh berikut, koleksi rahasia yang dikembalikan untuk Azure Event Hubs RP berisi rahasia
"Certificate"
bernamaaseh-ssl-gateway-pfx
.PS C:\WINDOWS\system32> Get-AzsProductSecret -PackageId 'microsoft.eventhub.1.2003.0.0' -AsJson VERBOSE: GET https://adminmanagement.myregion.mycompany.com/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/providers/Microsoft.Deployment.Admin/locations/global/productPackages/microsoft.eventhub.1.2003.0.0/secrets?api-version=2019-01-01 with 0-char payload VERBOSE: Received 617-char response, StatusCode = OK { "value": [ { "id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/providers/Microsoft.Deployment.Admin/locations/global/productPackages/microsoft.eventhub.1.2003.0.0/secrets/aseh-ssl-gateway-pfx", "name": "global/microsoft.eventhub.1.2003.0.0/aseh-ssl-gateway-pfx", "type": "Microsoft.Deployment.Admin/locations/productPackages/secrets", "properties": { "secretKind": "Certificate", "description": "Event Hubs gateway SSL certificate.", "expiresAfter": "P730D", "secretDescriptor": { }, "secretState": { "status": "Deployed", "rotationStatus": "None", "expirationDate": "2022-03-31T00:16:05.3068718Z" }, "provisioningState": "Succeeded" } }, ... ] }
Memutar rahasia
Gunakan
Set-AzsProductSecret
cmdlet untuk mengimpor sertifikat baru Anda ke Key Vault, yang akan digunakan oleh proses rotasi. Ganti nilai placeholder variabel yang sesuai sebelum menjalankan skrip:Tempat penampung Deskripsi Contoh nilai <product-id>
ID produk dari penyebaran penyedia sumber daya terbaru. microsoft.eventhub
<installed-version>
Versi penyebaran penyedia sumber daya terbaru. 1.2003.0.0
<cert-secret-name>
Nama tempat rahasia sertifikat disimpan. aseh-ssl-gateway-pfx
<cert-pfx-file-path>
Jalur ke file PFX sertifikat Anda. C:\dir\eh-cert-file.pfx
<pfx-password>
Kata sandi yang ditetapkan ke file .PFX sertifikat Anda. strong@CertSecret6
$productId = '<product-id>' $packageId = $productId + '.' + '<installed-version>' $certSecretName = '<cert-secret-name>' $pfxFilePath = '<cert-pfx-file-path>' $pfxPassword = ConvertTo-SecureString '<pfx-password>' -AsPlainText -Force Set-AzsProductSecret -PackageId $packageId -SecretName $certSecretName -PfxFileName $pfxFilePath -PfxPassword $pfxPassword -Force
Akhirnya, menggunakan cmdlet
Invoke-AzsProductRotateSecretsAction
untuk memutar rahasia internal dan eksternal:Catatan
Dibutuhkan sekitar 3,5 - 4 jam untuk menyelesaikan proses rotasi.
Invoke-AzsProductRotateSecretsAction -ProductId $productId
Anda dapat memantau kemajuan rotasi rahasia di konsol PowerShell, atau di portal administrator dengan memilih penyedia sumber daya di layanan Marketplace:
Pemecahan Masalah
Rotasi rahasia harus berhasil diselesaikan tanpa kesalahan. Jika Anda mengalami salah satu kondisi berikut di portal administrator, buka permintaan dukungan untuk mendapatkan bantuan:
- Masalah autentikasi, termasuk masalah yang menghubungkan ke penyedia sumber daya Azure Event Hubs.
- Tidak dapat meningkatkan penyedia sumber daya, atau mengedit parameter konfigurasi.
- Metrik penggunaan tidak ditampilkan.
- Tagihan tidak dibuat.
- Pencadangan tidak terjadi.
Langkah berikutnya
Untuk detail tentang merotasi rahasia infrastruktur Azure Stack Hub Anda, kunjungi Memutar rahasia di Azure Stack Hub.