Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
JavaScript için Azure Key Vault Yönetilen HSM istemci kitaplığını kullanmaya başlayın. Yönetilen HSM, FIPS 140-3 Düzey 3 doğrulanmış HSM'leri kullanarak bulut uygulamalarınız için şifreleme anahtarlarını korumanızı sağlayan, tam olarak yönetilen, yüksek oranda kullanılabilir, tek kiracılı, standartlara uyumlu bir bulut hizmetidir. Yönetilen HSM hakkında daha fazla bilgi için Genel Bakış'ı gözden geçirin.
Bu hızlı başlangıçta, JavaScript istemci kitaplığını kullanarak Yönetilen HSM'deki anahtarlara erişmeyi ve bu anahtarlarda şifreleme işlemleri gerçekleştirmeyi öğreneceksiniz.
Yönetilen HSM istemci kitaplığı kaynakları:
API başvuru belgeleri | Kütüphane kaynak kodu | Paket (npm)
Önkoşullar
- Azure aboneliği. Ücretsiz bir tane oluştur.
- Etkinleştirilmiş ve sağlanmış bir Yönetimli HSM. Bkz. Quickstart: Azure CLI kullanarak yönetilen HSM sağlama ve etkinleştirme.
- Yönetilen HSM'nizde oluşturulan bir anahtar. Bkz. Yönetilen HSM'de anahtarları yönetme.
- Yönetilen bir kimliğe (örneğin, VM, App Service veya Azure İşlevi) sahip bir Azure kaynağı veya yerel geliştirme için Azure CLI aracı.
- Yönetilen kimlik, uygun Yönetilen HSM yerel RBAC rolüne atanmış olmalıdır. Bkz . Yönetilen HSM'lerinize güvenli erişim.
Yerel ortamınızı ayarlama
Bu hızlı başlangıçta, Azure hizmetlerinde kimlik doğrulaması yapmak için Azure CLI ile Azure Kimlik kitaplığı kullanılır. Geliştiriciler, aramalarının kimliğini doğrulamak için Visual Studio Code de kullanabilir. Daha fazla bilgi için bkz. İstemciyi Azure Identity istemci kitaplığıyla kimlik doğrulama.
Azure oturum açma
az login Oturum açmak için komutunu çalıştırın:
az login
Proje klasörü oluşturma ve başlatma
Bir proje klasörü oluşturun ve klasörüne gidin:
mkdir mhsm-js-app && cd mhsm-js-appProjeyi başlatın:
npm init -y
Paketleri yükleme
Azure Kimliği ve Key Vault Anahtarları istemci kitaplıklarını yükleyin:
npm install @azure/identity @azure/keyvault-keys
Örnek kodu oluşturma
Aşağıdaki kodla adlı index.js bir dosya oluşturun. Yönetilen HSM adınızı <hsm-name> ile ve mevcut bir anahtar adını <key-name> ile değiştirin.
const { DefaultAzureCredential } = require("@azure/identity");
const { KeyClient, CryptographyClient } = require("@azure/keyvault-keys");
async function main() {
// Use DefaultAzureCredential for automatic credential selection
const credential = new DefaultAzureCredential();
// Connect to Managed HSM - replace with your HSM URI
const hsmUri = "https://<hsm-name>.managedhsm.azure.net";
const keyClient = new KeyClient(hsmUri, credential);
// Get a key reference
const keyName = "<key-name>";
console.log(`Retrieving key '${keyName}' from Managed HSM...`);
const key = await keyClient.getKey(keyName);
console.log(`Key retrieved. Key type: ${key.keyType}`);
// Perform cryptographic operations
const cryptoClient = new CryptographyClient(key, credential);
// Encrypt data
const plaintext = Buffer.from("Hello, Managed HSM!");
console.log(`\nOriginal text: ${plaintext.toString()}`);
const encryptResult = await cryptoClient.encrypt("RSA-OAEP-256", plaintext);
console.log(`Encrypted (base64): ${encryptResult.result.toString("base64").substring(0, 64)}...`);
// Decrypt data
const decryptResult = await cryptoClient.decrypt("RSA-OAEP-256", encryptResult.result);
console.log(`Decrypted text: ${decryptResult.result.toString()}`);
console.log("\nDone!");
}
main().catch((error) => {
console.error("An error occurred:", error);
process.exit(1);
});
Uygulamayı çalıştırma
Uygulamayı çalıştırın:
node index.js
Aşağıdakine benzer bir çıktı görmeniz gerekir:
Retrieving key 'myrsakey' from Managed HSM...
Key retrieved. Key type: RSA-HSM
Original text: Hello, Managed HSM!
Encrypted (base64): NWE4ZjNiMmMxZDRlNWY2YTdiOGM5ZDBlMWYyYTNiNGM...
Decrypted text: Hello, Managed HSM!
Done!
Kodu anlama
DefaultAzureCredential ile kimlik doğrulaması
DefaultAzureCredential ortamınıza göre uygun kimlik bilgilerini otomatik olarak seçer:
| Çevre | Kullanılan kimlik bilgileri |
|---|---|
| Azure VM’leri, Azure App Service, Azure İşlevleri | Sistem tarafından atanan veya kullanıcı tarafından atanan yönetilen kimlik |
| Azure Kubernetes Service | İş yükü tanımlayıcı |
| Yerel geliştirme | Azure CLI, Visual Studio veya VS Code kimlik bilgileri |
| CI/CD boru hatları | İş yükü kimliği federasyonu veya hizmet sorumlusu |
Kimlik doğrulama bilgileri şu kaynakları sırayla kontrol eder:
- Ortam değişkenleri
- İş yükü tanımlayıcı
- İdare edilen kimlik
- Azure CLI
- Azure PowerShell
- Visual Studio / VS Code kimlik bilgileri
Azure üretim iş yükleri için, kimlik bilgisi yönetimini tamamen ortadan kaldırdıkları için yönetilen kimlikler kesinlikle önerilir.
Önemli işlemler
KeyClient sınıfı aşağıdakilere yönelik yöntemler sağlar:
- Anahtarları oluşturma, alma, güncelleştirme ve silme
- Anahtarları ve anahtar sürümlerini listele
- Yedekleme ve geri yükleme anahtarları
CryptographyClient sınıfı şifreleme işlemleri sağlar:
- Verileri şifreleme ve şifresini çözme
- İmzaları imzala ve doğrula
- Anahtarları sarma ve açma
Yönetilen HSM rollerini atayın
Uygulamanızın anahtarlara erişebilmesi için, yönetilen kimliğinize uygun Yerel Yönetilen HSM RBAC rolünü atayın. , <vm-name>ve <resource-group> değerlerini gerçek değerlerinizle değiştirin<hsm-name>.
# Get the principal ID of your managed identity
principalId=$(az vm identity show --name <vm-name> --resource-group <resource-group> --query principalId -o tsv)
# Assign the Crypto User role for key operations
az keyvault role assignment create \
--hsm-name <hsm-name> \
--role "Managed HSM Crypto User" \
--assignee $principalId \
--scope /keys
Roller ve izinler hakkında daha fazla bilgi için bkz. Yönetilen HSM yerel RBAC yerleşik rolleri.
Kaynakları temizle
Artık gerekli olmadığında kaynak grubunu ve tüm ilgili kaynakları silin:
az group delete --name <resource-group>
Uyarı
Kaynak grubu silindiğinde Yönetilen HSM geçici olarak silinmiş duruma getirilir. Yönetilen HSM temizlenene kadar faturalandırılmaya devam eder. Yönetilen HSM geçici silme ve temizleme koruması bölümüne bakın
Sonraki Adımlar
- Yönetilen HSM'lerinize güvenli erişim hakkında bilgi edinin
- Otomatik anahtar döndürmeyi yapılandırma
- Yönetilen HSM için en iyi uygulamaları gözden geçirin
- Yönetilen HSM yerel RBAC yerleşik rolleri hakkında bilgi alın