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


Ügyfél által felügyelt kulcsok konfigurálása Azure Elastic SAN-hoz

A rugalmas SAN-kötetre írt összes adat automatikusan titkosítva lesz egy adattitkosítási kulccsal (DEK). Az Azure borítéktitkosítással titkosítja a DEK-t egy kulcstitkosítási kulccsal (KEK). Alapértelmezés szerint a KEK platform által felügyelt (a Microsoft által felügyelt), de létrehozhatja és kezelheti a sajátját.

Ez a cikk bemutatja, hogyan konfigurálható egy rugalmas SAN-kötetcsoport titkosítása az Azure Key Vaultban tárolt ügyfél által felügyelt kulcsokkal.

Korlátozások

Az alábbi lista tartalmazza azokat a régiókat, amelyekben az Elastic SAN jelenleg elérhető, és mely régiók támogatják a zónaredundáns tárolást (ZRS) és a helyileg redundáns tárolást (LRS), vagy csak az LRS-t:

  • Dél-Afrika észak - LRS
  • Kelet-Ázsia – LRS
  • Délkelet-Ázsia - LRS
  • Dél-Brazília – LRS
  • Kanada középső régiója – LRS
  • Franciaország középső régiója – LRS & ZRS
  • Németország nyugati középső régiója – LRS
  • Kelet-Ausztrália – LRS
  • Észak-Európa - LRS > ZRS
  • Nyugat-Európa - LRS > ZRS
  • Egyesült Királyság déli régiója – LRS
  • Kelet-Japán – LRS
  • Korea középső régiója – LRS
  • USA középső régiója – LRS
  • USA keleti régiója – LRS
  • USA déli középső régiója – LRS
  • USA 2. keleti régiója – LRS
  • USA 2. nyugati régiója – LRS & ZRS
  • USA 3. nyugati régiója – LRS
  • Svédország középső régiója – LRS
  • Észak-Svájc - LRS
  • Kelet-Norvégia – LRS
  • Észak-Egyesült Arab Emírségek – LRS
  • India középső régiója – LRS

Előfeltételek

A cikkben ismertetett műveletek végrehajtásához elő kell készítenie az Azure-fiókját és a használni kívánt felügyeleti eszközöket. Az előkészítés magában foglalja a szükséges modulok telepítését, a fiókba való bejelentkezést, valamint a PowerShell és az Azure CLI változóinak beállítását. Ebben a cikkben ugyanazt a változókészletet használjuk, így a beállításuk lehetővé teszi, hogy az összes mintában ugyanazokat a változókat használjuk.

A cikkben leírt műveletek végrehajtása a PowerShell használatával:

  1. Ha még nem tette meg, telepítse az Azure PowerShell legújabb verzióját.

  2. Az Azure PowerShell telepítése után telepítse az Elastic SAN-bővítmény Install-Module -Name Az.ElasticSan -Repository PSGallery0.1.2-es vagy újabb verzióját.

  3. Bejelentkezés az Azure-ba.

    Connect-AzAccount
    

A cikkben szereplő PowerShell-mintákban használandó változók létrehozása

Másolja ki a mintakódot, és cserélje le az összes helyőrző szöveget a saját értékeire. Használja ugyanazokat a változókat a cikk összes példájában:

# Define some variables
# The name of the resource group where the resources will be deployed.
$RgName          = "ResourceGroupName"

# The name of the Elastic SAN that contains the volume group to be configured.
$EsanName        = "ElasticSanName"

# The name of the Elastic SAN volume group to be configured.
$EsanVgName      = "ElasticSanVolumeGroupName"

# The region where the new resources will be created.
$Location        = "Location"

# The name of the Azure Key Vault that will contain the KEK.
$KvName          = "KeyVaultName"

# The name of the Azure Key Vault key that is the KEK.
$KeyName         = "KeyName"

# The name of the user-assigned managed identity, if applicable.
$ManagedUserName = "ManagedUserName"

A kulcstartó konfigurálása

Az ügyfél által felügyelt kulcsok tárolásához használhat új vagy meglévő kulcstartót. A titkosított erőforrás és a kulcstartó különböző régiókban vagy előfizetésekben lehet ugyanabban a Microsoft Entra ID-bérlőben. Az Azure Key Vaultról további információt az Azure Key Vault áttekintése és az Azure Key Vault bemutatása című témakörben talál.

Az ügyfél által felügyelt kulcsok titkosítással való használatához a helyreállítható törlés és a törlés elleni védelem is engedélyezve van a kulcstartóban. A helyreállítható törlés alapértelmezés szerint engedélyezve van egy új kulcstartó létrehozásakor, és nem tiltható le. A kulcstartó létrehozásakor vagy a létrehozása után engedélyezheti a kiürítés elleni védelmet. Az Azure Elastic SAN-titkosítás támogatja a 2048-es, 3072-es és 4096-os méretű RSA-kulcsokat.

Az Azure Key Vault egy Azure RBAC-engedélymodellen keresztül támogatja az Azure RBAC-vel való engedélyezést. A Microsoft az Azure RBAC-engedélymodell használatát javasolja a kulcstartó hozzáférési szabályzatai alapján. További információ: Engedély megadása alkalmazások számára egy Azure-kulcstartóhoz való hozzáféréshez az Azure RBAC használatával.

A kulcstartók tárolóként való előkészítésének két lépése van a kötetcsoport KEK-k számára:

  • Hozzon létre egy új kulcstartót, amelyen engedélyezve van a helyreállítható törlési és törlési védelem, vagy engedélyezze a törlési védelmet egy meglévőhöz.
  • Hozzon létre vagy rendeljen hozzá egy Olyan Azure RBAC-szerepkört, amely rendelkezik a biztonsági másolat létrehozási törlésével, szerezze be a listafrissítés visszaállítására vonatkozó engedélyeket.

A következő példa:

  • Létrehoz egy új kulcstartót, amelyen engedélyezve van a helyreállítható törlés és a törlés elleni védelem.
  • Lekéri a felhasználói fiók UPN-ét.
  • Hozzárendeli az új kulcstartóHoz tartozó Key Vault crypto officer szerepkört a fiókjához.

Használja a cikkben korábban definiált változókat.

# Setup the parameters to create the key vault.
$NewKvArguments = @{
    Name                    = $KvName
    ResourceGroupName       = $RgName
    Location                = $Location
    EnablePurgeProtection   = $true
    EnableRbacAuthorization = $true
}

# Create the key vault.
$KeyVault = New-AzKeyVault @NewKvArguments

# Get the UPN of the currently loggged in user.
$MyAccountUpn = (Get-AzADUser -SignedIn).UserPrincipalName

# Setup the parameters to create the role assignment.
$CrptoOfficerRoleArguments = @{
    SignInName         = $MyAccountUpn
    RoleDefinitionName = "Key Vault Crypto Officer"
    Scope              = $KeyVault.ResourceId
}

# Assign the Cypto Officer role to your account for the key vault.
New-AzRoleAssignment @CrptoOfficerRoleArguments

Ha tudni szeretné, hogyan engedélyezheti a kiürítési védelmet egy meglévő kulcstartón a PowerShell-lel, tekintse meg az Azure Key Vault helyreállításának áttekintését.

További információ az RBAC-szerepkörök PowerShell-lel való hozzárendeléséről: Azure-szerepkörök hozzárendelése az Azure PowerShell használatával.

Kulcs hozzáadása

Ezután adjon hozzá egy kulcsot a kulcstartóhoz. Mielőtt hozzáadja a kulcsot, győződjön meg arról, hogy a Key Vault crypto officer szerepkört saját magához rendelte.

Az Azure Storage és az Elastic SAN titkosítás támogatja a 2048-es, 3072-es és 4096-os méretű RSA-kulcsokat. A támogatott kulcstípusokról további információt a Kulcsok ismertetése című témakörben talál.

Ezekkel a mintaparancsokkal hozzáadhat egy kulcsot a kulcstartóhoz a PowerShell használatával. Használja a cikkben korábban definiált változókat.

# Get the key vault where the key is to be added.
$KeyVault = Get-AzKeyVault -ResourceGroupName $RgName -VaultName $KvName

# Setup the parameters to add the key to the vault.
$NewKeyArguments = @{
    Name        = $KeyName
    VaultName   = $KeyVault.VaultName
    Destination = "Software"
}

# Add the key to the vault.
$Key = Add-AzKeyVaultKey @NewKeyArguments

Kulcsforgatási stratégia kiválasztása

A titkosítási ajánlott eljárások követése azt jelenti, hogy a rugalmas SAN-kötetcsoportot védő kulcs elforgatása rendszeres ütemezés szerint történik, általában legalább kétévente. Az Azure Elastic SAN soha nem módosítja a kulcsot a kulcstartóban, de konfigurálhat egy kulcsforgatási szabályzatot, hogy a megfelelőségi követelményeknek megfelelően forgassa el a kulcsot. További információ: Titkosítási kulcs automatikus elforgatásának konfigurálása az Azure Key Vaultban.

Miután a kulcs elfordult a kulcstartóban, a rugalmas SAN-kötetcsoport titkosítási konfigurációját frissíteni kell az új kulcsverzió használatához. Az ügyfél által kezelt kulcsok támogatják a KEK-verzió automatikus és manuális frissítését is. Döntse el, hogy milyen megközelítést szeretne használni, mielőtt ügyfél által felügyelt kulcsokat konfigurálna egy új vagy meglévő kötetcsoporthoz.

A kulcsforgatásról további információt a kulcsverzió frissítése című témakörben talál.

Fontos

A kulcs vagy a kulcsverzió módosításakor a fő adattitkosítási kulcs védelme megváltozik, de az Azure Elastic SAN-kötetcsoportban lévő adatok mindig titkosítva maradnak. Az adatok védelmének biztosításához nincs szükség további műveletre. A kulcsverzió elforgatása nem befolyásolja a teljesítményt, és nincs vele társított állásidő.

Automatikus kulcsverzió-rotáció

Az Azure Elastic SAN automatikusan frissítheti a titkosításhoz használt ügyfél által kezelt kulcsot a kulcstartó legújabb kulcsverziójának használatához. A rugalmas san naponta ellenőrzi a kulcstartót a kulcs egy új verziójáért. Amikor egy új verzió elérhetővé válik, az automatikusan a kulcs legújabb verzióját használja a titkosításhoz. A kulcs elforgatásakor mindenképpen várjon 24 órát, mielőtt letiltja a régebbi verziót.

Fontos

Ha az Elastic SAN kötetcsoport a kulcsverzió manuális frissítésére lett konfigurálva, és automatikus frissítésre szeretné módosítani, módosítsa a kulcsverziót üres sztringre. A kulcsverzió manuális módosításáról további információt a kulcsverzió automatikus frissítéséről szóló cikkben talál.

Manuális kulcsverzió elforgatása

Ha manuálisan szeretné frissíteni a kulcsverziót, adja meg egy adott verzió URI-jét, amikor ügyfél által felügyelt kulcsokkal konfigurálja a titkosítást. Az URI megadásakor a rugalmas SAN nem frissíti automatikusan a kulcsverziót, amikor új verziót hoz létre a kulcstartóban. Ahhoz, hogy a rugalmas SAN új kulcsverziót használjon, manuálisan kell frissítenie.

Egy kulcs adott verziójának URI-jának megkeresése az Azure Portalon:

  1. Lépjen a kulcstartóra.
  2. Az Objektumok területen válassza a Kulcsok lehetőséget.
  3. Válassza ki a kívánt kulcsot a verziójának megtekintéséhez.
  4. Válassza ki a kulcsverziót az adott verzió beállításainak megtekintéséhez.
  5. Másolja ki az URI-t biztosító Kulcsazonosító mező értékét.
  6. Mentse a másolt szöveget, hogy később használhassa a kötetcsoport titkosításának konfigurálásakor.

Képernyőkép a Key Vault kulcs URI-járól az Azure Portalon.

Felügyelt identitás kiválasztása a kulcstartóhoz való hozzáférés engedélyezéséhez

Ha engedélyezi az ügyfél által felügyelt titkosítási kulcsokat egy rugalmas SAN-kötetcsoporthoz, meg kell adnia egy felügyelt identitást, amely a kulcsot tartalmazó kulcstartóhoz való hozzáférés engedélyezésére szolgál. A felügyelt identitásnak a következő engedélyekkel kell rendelkeznie:

  • kap
  • wrapkey
  • unwrapkey

A kulcstartóhoz való hozzáférésre jogosult felügyelt identitás lehet felhasználó által hozzárendelt vagy rendszer által hozzárendelt felügyelt identitás. A rendszer által hozzárendelt és a felhasználó által hozzárendelt felügyelt identitásokról további információt a Felügyelt identitástípusok című témakörben talál.

Kötetcsoport létrehozásakor a rendszer automatikusan létrehoz egy rendszer által hozzárendelt identitást. Ha felhasználó által hozzárendelt identitást szeretne használni, hozza létre, mielőtt konfigurálja az ügyfél által felügyelt titkosítási kulcsokat a kötetcsoporthoz. A felhasználó által hozzárendelt felügyelt identitások létrehozásáról és kezeléséről a felhasználó által hozzárendelt felügyelt identitások kezelése című témakörben olvashat.

Hozzáférés engedélyezése felhasználó által hozzárendelt felügyelt identitással

Ha engedélyezi az ügyfél által felügyelt kulcsokat egy új kötetcsoporthoz, meg kell adnia egy felhasználó által hozzárendelt felügyelt identitást. Egy meglévő kötetcsoport támogatja a felhasználó által hozzárendelt felügyelt identitás vagy egy rendszer által hozzárendelt felügyelt identitás használatát az ügyfél által felügyelt kulcsok konfigurálásához.

Ha az ügyfél által felügyelt kulcsokat felhasználó által hozzárendelt felügyelt identitással konfigurálja, a rendszer a felhasználó által hozzárendelt felügyelt identitással engedélyezi a hozzáférést a kulcsot tartalmazó kulcstartóhoz. Az ügyfél által felügyelt kulcsok konfigurálása előtt létre kell hoznia a felhasználó által hozzárendelt identitást.

A felhasználó által hozzárendelt felügyelt identitás egy önálló Azure-erőforrás. A felhasználó által hozzárendelt felügyelt identitásokról további információt a Felügyelt identitástípusok című témakörben talál. A felhasználó által hozzárendelt felügyelt identitások létrehozásáról és kezeléséről a felhasználó által hozzárendelt felügyelt identitások kezelése című témakörben olvashat.

A felhasználó által hozzárendelt felügyelt identitásnak engedélyekkel kell rendelkeznie a kulcs eléréséhez a kulcstartóban. Manuálisan adhat engedélyeket az identitásnak, vagy hozzárendelhet egy beépített szerepkört a Key Vault hatókörével ezeknek az engedélyeknek a megadásához.

Az alábbi példa bemutatja, hogyan:

  • Hozzon létre egy új, felhasználó által hozzárendelt felügyelt identitást.
  • Várja meg, amíg befejeződik a felhasználó által hozzárendelt identitás létrehozása.
  • Szerezze be az PrincipalId új identitást.
  • Rendeljen hozzá egy RBAC-szerepkört az új identitáshoz, amely a kulcstartóra terjed ki.

Használja a cikkben korábban definiált változókat.

# Create a new user-assigned managed identity.
$UserIdentity = New-AzUserAssignedIdentity -ResourceGroupName $RgName -Name $ManagedUserName -Location $Location

Tipp.

Várjon körülbelül 1 percet, amíg a felhasználó által hozzárendelt identitás létrehozása befejeződik, mielőtt továbblép.

# Get the `PrincipalId` for the new identity.
$PrincipalId = $UserIdentity.PrincipalId

# Setup the parameters to assign the Crypto Service Encryption User role.
$CryptoUserRoleArguments = @{
    ObjectId           = $PrincipalId
    RoleDefinitionName = "Key Vault Crypto Service Encryption User"
    Scope              = $KeyVault.ResourceId
}

# Assign the Crypto Service Encryption User role to the managed identity so it can access the key in the vault.
New-AzRoleAssignment @CryptoUserRoleArguments

Hozzáférés engedélyezése rendszer által hozzárendelt felügyelt identitással

A rendszer által hozzárendelt felügyelt identitás egy Azure-szolgáltatás egy példányához van társítva, például egy Azure Elastic SAN-kötetcsoporthoz.

A rendszer által hozzárendelt felügyelt identitásnak engedélyekkel kell rendelkeznie a kulcs eléréséhez a kulcstartóban. Ez a cikk a Key Vault titkosítási szolgáltatás titkosítási felhasználói szerepkörét használja a rendszer által hozzárendelt felügyelt identitáshoz a Key Vault hatókörével ezen engedélyek megadásához.

Kötetcsoport létrehozásakor a rendszer automatikusan létrehoz egy rendszer által hozzárendelt identitást, ha a -IdentityType "SystemAssigned" paraméter meg van adva a New-AzElasticSanVolumeGroup paranccsal. A rendszer által hozzárendelt identitás csak a kötetcsoport létrehozása után érhető el. Ahhoz, hogy hozzáférhessen a kulcstartó titkosítási kulcsához, hozzá kell rendelnie egy megfelelő szerepkört, például a Key Vault titkosítási szolgáltatás titkosítási felhasználói szerepkörét az identitáshoz. Így az ügyfél által felügyelt kulcsok nem konfigurálhatók úgy, hogy rendszer által hozzárendelt identitást használjanak egy kötetcsoport létrehozásakor. Ha ügyfél által felügyelt kulcsokkal hoz létre új kötetcsoportot, a kötetcsoport létrehozásakor felhasználó által hozzárendelt identitást kell használnia, a létrehozása után konfigurálhat egy rendszer által hozzárendelt identitást.

Ezzel a mintakóddal rendelheti hozzá a szükséges RBAC-szerepkört a rendszer által hozzárendelt felügyelt identitáshoz, amely a kulcstartóra terjed ki. Használja a cikkben korábban definiált változókat.

# Get the Elastic SAN volume group.
$ElasticSanVolumeGroup = Get-AzElasticSanVolumeGroup -Name $EsanVgName -ElasticSanName $EsanName -ResourceGroupName $RgName

# Generate a system-assigned identity if one does not already exist.
If ($ElasticSanVolumeGroup.IdentityPrincipalId -eq $null) {
Update-AzElasticSanVolumeGroup -ResourceGroupName $RgName -ElasticSanName $EsanName -Name $EsanVgName -IdentityType "SystemAssigned"}

# Get the `PrincipalId` (system-assigned identity) of the volume group.
$PrincipalId = $ElasticSanVolumeGroup.IdentityPrincipalId

# Setup the parameters to assign the Crypto Service Encryption User role.
$CryptoUserRoleArguments = @{
    ObjectId           = $PrincipalId
    RoleDefinitionName = "Key Vault Crypto Service Encryption User"
    Scope              = $KeyVault.ResourceId
}

# Assign the Crypto Service Encryption User role.
New-AzRoleAssignment @CryptoUserRoleArguments

Ügyfél által felügyelt kulcsok konfigurálása kötetcsoporthoz

Válassza az Azure PowerShell-modult vagy az Azure CLI-lapot az ügyfél által felügyelt titkosítási kulcsok az előnyben részesített felügyeleti eszköz használatával történő konfigurálásához.

Most, hogy kiválasztotta a PowerShellt, válassza ki azt a lapot, amely megfelel annak, hogy konfigurálja-e a beállításokat egy új kötetcsoport létrehozásakor, vagy frissítse egy meglévő beállításait.

Ezzel a példával konfigurálhatja az ügyfél által felügyelt kulcsokat a kulcsverzió automatikus frissítésével egy új kötetcsoport létrehozásakor a PowerShell használatával:

# Setup the parameters to create the volume group.
$NewVgArguments        = @{
    Name                         = $EsanVgName
    ElasticSanName               = $EsanName
    ResourceGroupName            = $RgName
    ProtocolType                 = "Iscsi"
    Encryption                   = "EncryptionAtRestWithCustomerManagedKey"
    KeyName                      = $KeyName
    KeyVaultUri                  = $KeyVault.VaultUri
    IdentityType                 = "UserAssigned"
    IdentityUserAssignedIdentity = @{$UserIdentity.Id=$UserIdentity}
    EncryptionIdentityEncryptionUserAssignedIdentity = $UserIdentity.Id
}

# Create the volume group.
New-AzElasticSanVolumeGroup @NewVgArguments

Ha az ügyfél által felügyelt kulcsokat a kulcsverzió manuális frissítésével szeretné konfigurálni egy új kötetcsoport létrehozásakor a PowerShell használatával, adja hozzá a paramétert az KeyVersion alábbi példában látható módon:

# Setup the parameters to create the volume group.
$NewVgArguments        = @{
    Name                         = $EsanVgName
    ElasticSanName               = $EsanName
    ResourceGroupName            = $RgName
    ProtocolType                 = "Iscsi"
    Encryption                   = "EncryptionAtRestWithCustomerManagedKey"
    KeyName                      = $KeyName
    KeyVaultUri                  = $KeyVault.VaultUri
    KeyVersion                   = $Key.Version
    IdentityType                 = "UserAssigned"
    IdentityUserAssignedIdentity = @{$UserIdentity.Id=$UserIdentity}
    EncryptionIdentityEncryptionUserAssignedIdentity = $UserIdentity.Id
}

# Create the volume group.
New-AzElasticSanVolumeGroup @NewVgArguments

Következő lépések