Megosztás a következőn keresztül:


Key Vault kezelése az Azure Stack Hubban a PowerShell használatával

Ez a cikk azt ismerteti, hogyan hozhat létre és kezelhet kulcstartót az Azure Stack Hubban a PowerShell használatával. Megtudhatja, hogyan használhatja a Key Vault PowerShell-parancsmagjait a következőre:

  • Kulcstartó létrehozása.
  • Titkosítási kulcsok és titkos kódok tárolása és kezelése.
  • Engedélyezze a felhasználók vagy alkalmazások számára a tárolóban lévő műveletek meghívását.

Feljegyzés

Az ebben a cikkben ismertetett Key Vault PowerShell-parancsmagokat az Azure PowerShell SDK biztosítja.

Előfeltételek

Bérlői előfizetés engedélyezése Key Vault-műveletekhez

Mielőtt bármilyen műveletet kibocsáthat egy kulcstartón, győződjön meg arról, hogy a bérlői előfizetés engedélyezve van a tárolóműveletekhez. A Key Vault-műveletek engedélyezésének ellenőrzéséhez futtassa a következő parancsot:

Get-AzResourceProvider -ProviderNamespace Microsoft.KeyVault | ft -Autosize

Ha az előfizetése engedélyezve van a tárolóműveletekhez, a kimenet azt mutatja, hogy a RegistrationState regisztrálva van a kulcstartó összes erőforrástípusához.

Kulcstartó regisztrációs állapota a PowerShellben

Ha a tárolóműveletek nincsenek engedélyezve, a következő paranccsal regisztrálja a Key Vault szolgáltatást az előfizetésben:

Register-AzResourceProvider -ProviderNamespace Microsoft.KeyVault

Ha a regisztráció sikeres, a rendszer a következő kimenetet adja vissza:

Sikeres kulcstartó-regisztráció a PowerShellben

Amikor meghívja a Key Vault parancsokat, hibaüzenet jelenhet meg, például: "Az előfizetés nincs regisztrálva a "Microsoft.KeyVault" névtér használatához." Ha hibaüzenetet kap, ellenőrizze, hogy engedélyezte-e a Key Vault erőforrás-szolgáltatóját az előző utasítások követésével.

Kulcstartó létrehozása

Kulcstartó létrehozása előtt hozzon létre egy erőforráscsoportot, hogy a kulcstartóhoz kapcsolódó összes erőforrás egy erőforráscsoportban legyen. Hozzon létre egy új erőforráscsoportot a következő paranccsal:

New-AzResourceGroup -Name "VaultRG" -Location local -verbose -Force

A PowerShellben létrehozott új erőforráscsoport

Most az alábbi parancsmaggal hozzon létre egy kulcstartót a korábban létrehozott erőforráscsoportban. Ez a parancs három kötelező paramétert olvas be: az erőforráscsoport nevét, a kulcstartó nevét és a földrajzi helyet.

A kulcstartó létrehozásához futtassa a következő parancsot:

New-AzKeyVault -VaultName "Vault01" -ResourceGroupName "VaultRG" -Location local -verbose

A PowerShellben létrehozott új kulcstartó

A parancs kimenete a létrehozott kulcstartó tulajdonságait jeleníti meg. Amikor egy alkalmazás hozzáfér ehhez a tárolóhoz, a Tároló URI tulajdonságát kell használnia, amely ebben a példában szerepel https://vault01.vault.local.azurestack.external .

Active Directory összevonási szolgáltatások (AD FS) (AD FS) üzembe helyezése

Az AD FS üzemelő példányában a következő figyelmeztetés jelenhet meg: "A hozzáférési szabályzat nincs beállítva. Egyetlen felhasználó vagy alkalmazás sem rendelkezik hozzáférési engedéllyel a tároló használatához." A probléma megoldásához állítson be egy hozzáférési szabályzatot a tárolóhoz a Set-AzKeyVaultAccessPolicy paranccsal:

# Obtain the security identifier(SID) of the active directory user
$adUser = Get-ADUser -Filter "Name -eq '{Active directory user name}'"
$objectSID = $adUser.SID.Value

# Set the key vault access policy
Set-AzKeyVaultAccessPolicy -VaultName "{key vault name}" -ResourceGroupName "{resource group name}" -ObjectId "{object SID}" -PermissionsToKeys {permissionsToKeys} -PermissionsToSecrets {permissionsToSecrets} -BypassObjectIdValidation

Kulcsok és titkos kódok kezelése

A tároló létrehozása után az alábbi lépésekkel hozhat létre és kezelhet kulcsokat és titkos kulcsokat a tárolóban.

Kulcs létrehozása

Az Add-AzureKeyVaultKey parancsmaggal szoftveresen védett kulcsot hozhat létre vagy importálhat egy kulcstartóban:

Add-AzureKeyVaultKey -VaultName "Vault01" -Name "Key01" -verbose -Destination Software

A -Destination paraméter azt határozza meg, hogy a kulcs szoftveres védelem alatt áll-e. A kulcs sikeres létrehozása után a parancs a létrehozott kulcs részleteit adja ki.

A PowerShellben létrehozott új kulcstartókulcs

Most már hivatkozhat a létrehozott kulcsra az URI használatával. Ha olyan kulcsot hoz létre vagy importál, amelynek neve megegyezik egy meglévő kulccsal, az eredeti kulcs frissül az új kulcsban megadott értékekkel. Az előző verziót a kulcs verzióspecifikus URI-jának használatával érheti el. Példa:

  • Az aktuális verzió mindig lekérésére használható https://vault10.vault.local.azurestack.external:443/keys/key01 .
  • Ezzel https://vault010.vault.local.azurestack.external:443/keys/key01/d0b36ee2e3d14e9f967b8b6b1d38938a a konkrét verzióval szerezhető be.

Kulcs lekérése

A Get-AzureKeyVaultKey parancsmaggal olvassa el a kulcsot és annak részleteit:

Get-AzureKeyVaultKey -VaultName "Vault01" -Name "Key01"

Titkos kulcs létrehozása

A Set-AzureKeyVaultSecret parancsmaggal hozhat létre vagy frissíthet titkos kulcsokat egy tárolóban. A titkos kód akkor jön létre, ha még nem létezik. A titkos kód új verziója akkor jön létre, ha már létezik:

$secretvalue = ConvertTo-SecureString "User@123" -AsPlainText -Force
Set-AzureKeyVaultSecret -VaultName "Vault01" -Name "Secret01" -SecretValue $secretvalue

Titkos kód létrehozása a PowerShellben

Titkos kulcs lekérése

A Get-AzureKeyVaultSecret parancsmaggal titkos kulcsokat olvashat egy kulcstartóban. Ez a parancs egy titkos kód összes vagy adott verzióját visszaadhatja:

Get-AzureKeyVaultSecret -VaultName "Vault01" -Name "Secret01"

A kulcsok és titkos kódok létrehozása után engedélyezheti a külső alkalmazások számára a használatukat.

Alkalmazás engedélyezése kulcs vagy titkos kód használatára

Az alábbi parancsmaggal engedélyezheti az alkalmazásnak, hogy hozzáférjen egy kulcshoz vagy titkos kulcshoz a kulcstartóban.

A következő példában a tároló neve ContosoKeyVault, és az engedélyezni kívánt alkalmazás ügyfélazonosítója 00001111-aaaa-2222-bbbb-3333cccc44444. Az alkalmazás engedélyezéséhez futtassa a következő parancsot. Megadhatja a PermissionsToKeys paramétert is egy felhasználó, alkalmazás vagy biztonsági csoport engedélyeinek beállításához.

Ha a parancsmagot egy AD FS-ben konfigurált Azure Stack Hub-környezetben használja, meg kell adni a BypassObjectIdValidation paramétert

Set-AzKeyVaultAccessPolicy -VaultName 'ContosoKeyVault' -ServicePrincipalName 00001111-aaaa-2222-bbbb-3333cccc4444 -PermissionsToKeys decrypt,sign -BypassObjectIdValidation

Ha engedélyezni szeretné, hogy ugyanaz az alkalmazás titkos kulcsokat olvasson a tárolóban, futtassa a következő parancsmagot:

Set-AzKeyVaultAccessPolicy -VaultName 'ContosoKeyVault' -ServicePrincipalName 8f8c4bbd-485b-45fd-98f7-ec6300 -PermissionsToKeys Get -BypassObjectIdValidation

Következő lépések