Tárfiókkulcsok kezelése a Key Vaulttal és az Azure CLI-vel (örökölt)
Fontos
A Key Vault felügyelt tárfiókkulcsai (örökölt) támogatottak, és nincs több tervezett frissítés. Csak a fiók sasa támogatott az SAS-definíciók aláírt tárolási szolgáltatásának legkésőbb 2018.03.28-i verziójával.
Fontos
Az Azure CLI-ben a felügyelt tárfiókkulcsok támogatása el lett távolítva a 2.54-es verzióban, az oktatóanyag parancsaihoz az Azure CLI 2.53.1-es vagy korábbi verzióját kell használnia.
Fontos
Javasoljuk, hogy használja az Azure Storage-integrációt a Microsoft Entra ID-val, a Microsoft felhőalapú identitás- és hozzáférés-kezelési szolgáltatásával. A Microsoft Entra-integráció azure-blobokhoz, üzenetsorokhoz és táblákhoz érhető el, és OAuth2-jogkivonatalapú hozzáférést biztosít az Azure Storage-hoz (az Azure Key Vaulthoz hasonlóan). A Microsoft Entra ID lehetővé teszi az ügyfélalkalmazás hitelesítését egy alkalmazás vagy egy felhasználói identitás használatával a tárfiók hitelesítő adatai helyett. Az Azure-ban való futtatáskor Microsoft Entra által felügyelt identitást is használhat. A felügyelt identitások nem igénylik az ügyfél-hitelesítést és a hitelesítő adatok tárolását az alkalmazásban vagy az alkalmazással. Az alábbi megoldást csak akkor használja, ha a Microsoft Entra-hitelesítés nem lehetséges.
Az Azure Storage-fiókok egy fióknevet és egy kulcsot tartalmazó hitelesítő adatokat használnak. A kulcs automatikusan jön létre, és titkosítási kulcs helyett jelszóként szolgál. A Key Vault úgy kezeli a tárfiók kulcsait, hogy rendszeresen újragenerálja őket a tárfiókban, és megosztott hozzáférésű aláírási jogkivonatokat biztosít a tárfiók erőforrásaihoz való delegált hozzáféréshez.
A Key Vault által felügyelt tárfiók kulcsfunkciójával listázhatja (szinkronizálhatja) a kulcsokat egy Azure-tárfiókkal, és rendszeresen újragenerálhatja (elforgathatja) a kulcsokat. A tárfiókok és a klasszikus tárfiókok kulcsait is kezelheti.
A felügyelt tárfiók kulcs funkciójának használatakor vegye figyelembe a következő szempontokat:
- A rendszer soha nem ad vissza kulcsértékeket hívó válaszként.
- Csak a Key Vault kezelje a tárfiókkulcsokat. Ne kezelje saját maga a kulcsokat, és ne zavarja a Key Vault-folyamatokat.
- Csak egyetlen Key Vault-objektum kezelje a tárfiókkulcsokat. Ne engedélyezze a kulcskezelést több objektumból.
- Kulcsok újragenerálása csak a Key Vault használatával. Ne hozza létre manuálisan a tárfiókkulcsokat.
Fontos
A kulcs közvetlenül a tárfiókban való újragenerálása megszakítja a felügyelt tárfiókok beállítását, és érvénytelenítheti a használatban lévő SAS-jogkivonatokat, és leállást okozhat.
Egyszerű szolgáltatásalkalmazás azonosítója
A Microsoft Entra-bérlő minden regisztrált alkalmazást szolgáltatásnévvel biztosít. A szolgáltatásnév az alkalmazásazonosító, amelyet a többi Azure-erőforráshoz való hozzáférés engedélyezésekor használnak az Azure-beli szerepköralapú hozzáférés-vezérlés (Azure RBAC) használatával.
A Key Vault egy Olyan Microsoft-alkalmazás, amely minden Microsoft Entra-bérlőben elő van regisztrálva. A Key Vault minden Azure-felhőben ugyanazzal az alkalmazásazonosítóval van regisztrálva.
Bérlők | Felhőbeli | Pályázat azonosítója |
---|---|---|
Microsoft Entra ID | Azure Government | 7e7c393b-45d0-48b1-a35e-2905ddf8183c |
Microsoft Entra ID | Azure – nyilvános | cfa8b339-82a2-471a-a3c9-0fc0be7a4093 |
Egyéb | Bármely | cfa8b339-82a2-471a-a3c9-0fc0be7a4093 |
Előfeltételek
Az útmutató elvégzéséhez először a következő lépéseket kell elvégeznie:
- Telepítse az Azure CLI-t.
- Kulcstartó létrehozása
- Azure-tárfiók létrehozása. A tárfiók nevének csak kisbetűket és számokat kell használnia. A név hosszának 3 és 24 karakter közöttinek kell lennie.
Tárfiókkulcsok kezelése
Csatlakozás az Azure-fiókhoz
Az Azure CLI-munkamenet hitelesítése az az bejelentkezési parancsokkal.
az login
Key Vault-hozzáférés biztosítása a tárfiókhoz
Az Azure CLI az role assignment create paranccsal hozzáférést adhat a Key Vaultnak a tárfiókhoz. Adja meg a parancsnak a következő paraméterértékeket:
--role
: Adja át a "Storage Account Key Operator Service Role" Azure-szerepkört. Ez a szerepkör korlátozza a tárfiók hozzáférési hatókörét. Klasszikus tárfiók esetén inkább adja át a "Klasszikus tárfiókkulcs-kezelő szolgáltatásszerepkört".--assignee
: Adja meg a "https://vault.azure.net"" értéket, amely a Key Vault url-címe az Azure nyilvános felhőben. (Az Azure Government-felhő esetében használja inkább a "--assignee-object-id" azonosítót, lásd: Egyszerű szolgáltatásalkalmazás azonosítója.)--scope
: Adja meg a tárfiók erőforrás-azonosítóját, amely az űrlapon/subscriptions/<subscriptionID>/resourceGroups/<StorageAccountResourceGroupName>/providers/Microsoft.Storage/storageAccounts/<YourStorageAccountName>
található. Keresse meg az előfizetés azonosítóját az Azure CLI az account list paranccsal. Keresse meg a tárfiók nevét és a tárfiók erőforráscsoportját az Azure CLI az storage account list paranccsal.
az role assignment create --role "Storage Account Key Operator Service Role" --assignee "https://vault.azure.net" --scope "/subscriptions/<subscriptionID>/resourceGroups/<StorageAccountResourceGroupName>/providers/Microsoft.Storage/storageAccounts/<YourStorageAccountName>"
Felhasználói fiók engedélyének megadása felügyelt tárfiókokhoz
Az Azure CLI az keyvault-set-policy parancsmaggal frissítse a Key Vault hozzáférési szabályzatát, és adjon tárfiók-engedélyeket a felhasználói fióknak.
# Give your user principal access to all storage account permissions, on your Key Vault instance
az keyvault set-policy --name <YourKeyVaultName> --upn user@domain.com --storage-permissions get list delete set update regeneratekey getsas listsas deletesas setsas recover backup restore purge
A tárfiókokra vonatkozó engedélyek nem érhetők el az Azure Portal tárfiókjának "Hozzáférési szabályzatok" lapján.
Felügyelt Key Vault-tárfiók létrehozása
Hozzon létre egy Key Vault által felügyelt tárfiókot az Azure CLI az keyvault storage paranccsal. Állítson be egy 30 napos regenerációs időszakot. Amikor el kell forgatni, a KeyVault újragenerálja a nem aktív kulcsot, majd aktívként állítja be az újonnan létrehozott kulcsot. Egyszerre csak az egyik kulcs használható SAS-jogkivonatok kiadására, ez az aktív kulcs. Adja meg a parancsnak a következő paraméterértékeket:
--vault-name
: Adja meg a kulcstartó nevét. A kulcstartó nevének megkereséséhez használja az Azure CLI az keyvault list parancsot.-n
: Adja meg a tárfiók nevét. A tárfiók nevének megkereséséhez használja az Azure CLI az storage account list parancsot.--resource-id
: Adja meg a tárfiók erőforrás-azonosítóját, amely az űrlapon/subscriptions/<subscriptionID>/resourceGroups/<StorageAccountResourceGroupName>/providers/Microsoft.Storage/storageAccounts/<YourStorageAccountName>
található. Keresse meg az előfizetés azonosítóját az Azure CLI az account list paranccsal. Keresse meg a tárfiók nevét és a tárfiók erőforráscsoportját az Azure CLI az storage account list paranccsal.
az keyvault storage add --vault-name <YourKeyVaultName> -n <YourStorageAccountName> --active-key-name key1 --auto-regenerate-key --regeneration-period P30D --resource-id "/subscriptions/<subscriptionID>/resourceGroups/<StorageAccountResourceGroupName>/providers/Microsoft.Storage/storageAccounts/<YourStorageAccountName>"
Közös hozzáférésű jogosultságkód-jogkivonatok
Megkérheti a Key Vaultot is, hogy hozzon létre közös hozzáférésű jogosultságkód-jogkivonatokat. A megosztott hozzáférésű jogosultságkód delegált hozzáférést biztosít a tárfiók erőforrásaihoz. A fiókkulcsok megosztása nélkül hozzáférést biztosíthat az ügyfeleknek a tárfiók erőforrásaihoz. A megosztott hozzáférésű jogosultságkódokkal biztonságos módon oszthatja meg a tárerőforrásokat anélkül, hogy a fiókkulcsokat veszélyeztetné.
Az ebben a szakaszban található parancsok a következő műveleteket hajtják végre:
- Fiók közös hozzáférésű jogosultságkód-definíciójának
<YourSASDefinitionName>
beállítása. A definíció egy Key Vault által felügyelt tárfiókon<YourStorageAccountName>
van beállítva a kulcstartóban<YourKeyVaultName>
. - Állítsa be a Key Vault által felügyelt tár megosztott hozzáférésű jogosultságkód-definícióját a tárolóban. A definíció tartalmazza a létrehozott közös hozzáférésű jogosultságkód jogkivonatának sablon URI-ját. A definíció a közös hozzáférésű jogosultságkód típusával
account
rendelkezik, és N napig érvényes. - Ellenőrizze, hogy a közös hozzáférésű jogosultságkód titkos kulcsként lett-e mentve a kulcstartóban.
Közös hozzáférésű jogosultságkód definíciós sablonjának definiálása
A Key Vault SAS-definíciós sablonnal hoz létre jogkivonatokat az ügyfélalkalmazásokhoz.
PÉLDA SAS-definíciós sablonra:
"sv=2018-03-28&ss=bfqt&srt=sco&sp=rw&spr=https"
Az SAS-definíciós sablon a következő lépésben lesz átadva a --template-uri
paraméternek.
A Key Vault sasdefiníciós sablonjában szükséges fiók SAS-paraméterek
SAS-lekérdezési paraméter | Leírás |
---|---|
SignedVersion (sv) |
Szükséges. Megadja a társzolgáltatás aláírt verzióját, amellyel engedélyezheti a fiók SAS-jével érkező kéréseket. A 2015-04-05-ös vagy újabb verzióra kell állítani. A Key Vault legkésőbb 2018.03.28-ra támogatja a verziókat |
SignedServices (ss) |
Szükséges. Megadja a fiók SAS-jével elérhető aláírt szolgáltatásokat. Lehetséges értékek: - Blob ( b )- Üzenetsor ( q )- Táblázat ( t )- Fájl ( f )Az értékeket kombinálva több szolgáltatáshoz is hozzáférést biztosíthat. Megadja például a ss=bf blob- és fájlvégpontokhoz való hozzáférést. |
SignedResourceTypes (srt) |
Szükséges. Megadja a fiók SAS-jével elérhető aláírt erőforrástípusokat. - Szolgáltatás ( s ): Hozzáférés a szolgáltatásszintű API-khoz (például szolgáltatástulajdonságok lekérése/beállítása, szolgáltatásstatisztikák lekérése, tárolók listázása/üzenetsorok/táblák/megosztások)- Tároló ( c ): Hozzáférés a tárolószintű API-khoz (például Tároló létrehozása/törlése, Üzenetsor létrehozása/törlése, Tábla létrehozása/törlése, Megosztás létrehozása/törlése, Blobok/fájlok és könyvtárak listázása)- Objektum ( o ): Hozzáférés az objektumszintű API-khoz blobokhoz, üzenetsor-üzenetekhez, táblaentitásokhoz és fájlokhoz (például Blob elhelyezése, Lekérdezési entitás, Üzenetek lekérése, Fájl létrehozása stb.)Az értékeket kombinálva több erőforrástípushoz is hozzáférést biztosíthat. Megadja például a srt=sc szolgáltatás- és tárolóerőforrásokhoz való hozzáférést. |
SignedPermission (sp) |
Szükséges. Megadja a fiók SAS-azonosítójához tartozó aláírt engedélyeket. Az engedélyek csak akkor érvényesek, ha megfelelnek a megadott aláírt erőforrástípusnak; ellenkező esetben a rendszer figyelmen kívül hagyja őket. - Olvasás ( r ): Az összes aláírt erőforrástípusra (szolgáltatás, tároló és objektum) érvényes. Engedélyezi az olvasási engedélyeket a megadott erőforrástípushoz.- Írás ( w ): Érvényes az összes aláírt erőforrástípusra (szolgáltatás, tároló és objektum). Engedélyezi az írási engedélyeket a megadott erőforrástípushoz.- Törlés ( d ): Tároló- és objektumerőforrás-típusok esetén érvényes, kivéve az üzenetsor-üzeneteket.- Végleges törlés ( y ): Csak a Blob objektumerőforrás-típusára érvényes.- Lista ( l ): Csak a szolgáltatás- és tárolóerőforrás-típusokra érvényes.- Hozzáadás ( a ): Csak a következő objektumerőforrás-típusokra érvényes: üzenetsor-üzenetek, táblaentitások és hozzáfűző blobok.- Létrehozás ( c ): Csak a következő objektumerőforrás-típusokra érvényes: blobok és fájlok. A felhasználók új blobokat vagy fájlokat hozhatnak létre, de nem írhatják felül a meglévő blobokat vagy fájlokat.- Frissítés ( u ): Csak a következő objektumerőforrás-típusokra érvényes: üzenetsor-üzenetek és táblaentitások.- Folyamat ( p ): Csak a következő objektumerőforrás-típusra érvényes: üzenetsor-üzenetek.- Címke ( t ): Csak a következő objektumerőforrás-típusra érvényes: blobok. Engedélyezi a blobcímkék műveleteit.- Szűrő ( f ): Csak a következő objektumerőforrás-típusra érvényes: blob. Engedélyezi a blobcímke szerinti szűrést.- Módosíthatatlansági szabályzat beállítása ( i ): Csak a következő objektumerőforrás-típusra érvényes: blob. Engedélyezi a nem módosíthatósági szabályzat beállítását és törlését, valamint a blobok jogi visszatartást. |
SignedProtocol (spr) |
Opcionális. Megadja az SAS-fiókkal küldött kérésekhez engedélyezett protokollt. Lehetséges értékek a HTTPS és a HTTP (https,http ) vagy a HTTPS (https csak). Az alapértelmezett érték https,http .A HTTP csak nem engedélyezett érték. |
További információ a fiók SAS-járól: Fiók SAS létrehozása
Feljegyzés
A Key Vault figyelmen kívül hagyja az olyan élettartam-paramétereket, mint az "Aláírt lejárat", az "Aláírt kezdés" és a 2018-03-28-s verzió után bevezetett paraméterek
Közös hozzáférésű jogosultságkód definíciójának beállítása a Key Vaultban
Az Azure CLI az keyvault storage sas-definition create parancsával adja át az SAS-definíciós sablont az előző lépésből a --template-uri
paraméternek, és hozzon létre egy közös hozzáférésű jogosultságkód-definíciót. A paraméterhez megadhatja a választott -n
nevet.
az keyvault storage sas-definition create --vault-name <YourKeyVaultName> --account-name <YourStorageAccountName> -n <YourSASDefinitionName> --validity-period P2D --sas-type account --template-uri <sasDefinitionTemplate>
A közös hozzáférésű jogosultságkód definíciójának ellenőrzése
Az Azure CLI az keyvault storage sas-definition show parancsával ellenőrizheti, hogy a közös hozzáférésű jogosultságkód definíciója a kulcstartóban lett-e tárolva.
Most már használhatja az az keyvault storage sas-definition show parancsot és a id
tulajdonságot a titkos kód tartalmának megtekintéséhez.
az keyvault storage sas-definition show --id https://<YourKeyVaultName>.vault.azure.net/storage/<YourStorageAccountName>/sas/<YourSASDefinitionName>
Következő lépések
- További információ a kulcsokról, titkos kódokról és tanúsítványokról.
- Tekintse át az Azure Key Vault csapat blogján található cikkeket.
- Tekintse meg az az keyvault storage referenciadokumentációját.