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 Key Vault PowerShell-parancsmagokat 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ókat vagy alkalmazásokat, hogy műveleteket hívjanak meg a tárolóban.

Megjegyzés

A cikkben ismertetett Key Vault PowerShell-parancsmagokat az Azure PowerShell SDK tartalmazza.

Előfeltételek

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

Mielőtt bármilyen műveletet kiadhat egy kulcstartón, meg kell győződnie 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 kimenetben az látható, hogy a RegistrationStateregisztrá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, adja ki a következő parancsot a Key Vault szolgáltatás előfizetésben való regisztrálásához:

Register-AzResourceProvider -ProviderNamespace Microsoft.KeyVault

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

Sikeres kulcstartó-regisztráció a PowerShellben

A Key Vault parancsainak meghívásakor 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ót az előző utasítások követésével.

Kulcstartó létrehozása

A 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.

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ányaiban ez a 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 szoftveres védelem alatt álló 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 kimenetként adja ki a létrehozott kulcs részleteit.

Új kulcstartókulcs generálva a PowerShellben

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éldául:

  • A használatával https://vault10.vault.local.azurestack.external:443/keys/key01 mindig az aktuális verziót szerezheti be.
  • A használatával https://vault010.vault.local.azurestack.external:443/keys/key01/d0b36ee2e3d14e9f967b8b6b1d38938a lekérheti ezt a verziót.

Kulcs lekérése

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

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

Titkos kulcs létrehozása

A Set-AzureKeyVaultSecret parancsmaggal hozzon létre vagy frissítsen egy titkos kódot 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 kód lekérése

A Get-AzureKeyVaultSecret parancsmaggal beolvashat egy titkos kódot 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, hogy egy alkalmazás hozzáférjen egy kulcshoz vagy titkos kódhoz a kulcstartóban.

A következő példában a tároló neve ContosoKeyVault, és az engedélyezni kívánt alkalmazás ügyfél-azonosítója 8f8c4bbd-485b-45fd-98f7-ec6300b7b4ed. Az alkalmazás engedélyezéséhez futtassa a következő parancsot. A PermissionsToKeys paramétert is megadhatja a felhasználók, alkalmazások vagy biztonsági csoportok 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 8f8c4bbd-485b-45fd-98f7-ec6300b7b4ed -PermissionsToKeys decrypt,sign -BypassObjectIdValidation

Ha engedélyezni szeretné, hogy ugyanaz az alkalmazás titkos kódokat olvasson be 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