Configurer CMEK pour les catalogues MCS dans GCP
Vous pouvez utiliser des clés de chiffrement gérées par le client (CMEK) pour les catalogues MCS. Lorsque vous utilisez cette fonctionnalité, vous attribuez le rôle Google Cloud Key Management Service CryptoKey Encrypter/Decrypter à l’agent de service Compute Engine. Le compte Citrix DaaS doit disposer des autorisations correctes dans le projet où la clé est stockée. Consultez la section Attribuer des autorisations au compte Citrix DaaS. Pour plus d’informations, reportez-vous à la section Contribuer à la protection des ressources en utilisant des clés Cloud KMS.
L’agent de service Compute Engine se présente sous la forme suivante : service-<Project _Number>@compute-system.iam.gserviceaccount.com. Ce formulaire est différent du compte de service Compute Engine par défaut.
Remarque
Ce compte de service Compute Engine peut ne pas apparaître dans l’écran Autorisations IAM de Google Console. Dans de tels cas, utilisez la commande
gcloudcomme décrit dans Aide à la protection des ressources à l’aide de clés Cloud KMS.
Attribuer des autorisations au compte Citrix DaaS
Les autorisations Google Cloud KMS peuvent être configurées de différentes manières. Vous pouvez fournir des autorisations KMS au niveau du projet ou des autorisations KMS au niveau des ressources. Pour plus d’informations, consultez la section Autorisations et rôles.
Autorisations KMS au niveau du projet
L’une des options consiste à fournir au compte Citrix DaaS des autorisations au niveau du projet pour parcourir les ressources Cloud KMS. Pour ce faire, créez un rôle personnalisé et ajoutez les autorisations suivantes :
cloudkms.keyRings.listcloudkms.keyRings.getcloudkms.cryptokeys.listcloudkms.cryptokeys.get
Attribuez ce rôle personnalisé à votre compte Citrix DaaS. Cela vous permet de parcourir les clés régionales du projet concerné dans l’inventaire.
Autorisations KMS au niveau des ressources
Pour l’autre option, les autorisations au niveau des ressources, dans la console Google Cloud, accédez à la cryptoKey que vous utilisez pour le provisioning MCS. Ajoutez un compte Citrix DaaS à un trousseau de clés ou à une clé que vous utilisez pour le provisioning de catalogue.
Conseil :
Avec cette option, vous ne pouvez pas parcourir les clés régionales de votre projet dans l’inventaire car le compte Citrix DaaS ne dispose pas d’autorisations de liste au niveau du projet sur les ressources Cloud KMS. Toutefois, vous pouvez toujours provisionner un catalogue à l’aide de CMEK en spécifiant la valeur
cryptoKeyIdappropriée dans les propriétés personnaliséesProvSchemedécrites ci-dessous. Consultez la section Créer un catalogue avec CMEK à l’aide de propriétés personnalisées.
Rotation des clés gérées par le client
Google Cloud does not support rotating keys on existing persistent disks or images. Une fois qu’une machine est provisionnée, elle est liée à la version clé utilisée au moment de sa création. Toutefois, une nouvelle version de la clé peut être créée et cette nouvelle clé est utilisée pour les machines ou les ressources nouvellement provisionnées créées lorsqu’un catalogue est mis à jour avec une nouvelle image principale.
Remarques importantes concernant les trousseaux de clés
Les trousseaux de clés ne peuvent pas être renommés ou supprimés. En outre, vous risquez d’entraîner des frais imprévus lors de leur configuration. Lorsque vous supprimez ou retirez un trousseau de clés, Google Cloud affiche un message d’erreur :
Sorry, you can't delete or rename keys or key rings. We were concerned about the security implications of allowing multiple keys or key versions over time to have the same resource name, so we decided to make names immutable. (And you can't delete them, because we wouldn't be able to do a true deletion--there would still have to be a tombstone tracking that this name had been used and couldn't be reused).
We're aware that this can make things untidy, but we have no immediate plans to change this.
If you want to avoid getting billed for a key or otherwise make it unavailable, you can do so by deleting all the key versions; neither keys nor key rings are billed for, just the active key versions within the keys.
<!--NeedCopy-->
Conseil :
Pour plus d’informations, consultez la section Modification ou suppression d’un trousseau de clés de la console.
Créer un catalogue avec CMEK à l’aide de propriétés personnalisées
Lorsque vous créez votre schéma de provisioning via PowerShell, spécifiez une propriété CryptoKeyId dans ProvScheme CustomProperties. Par exemple :
'<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Property xsi:type="StringProperty" Name="CryptoKeyId" Value="<yourCryptoKeyId>" />
</CustomProperties>'
<!--NeedCopy-->
Le cryptoKeyId doit être spécifié au format suivant :
projectId:location:keyRingName:cryptoKeyName
Par exemple, si vous souhaitez utiliser la clé my-example-key dans le trousseau de clés my-example-key-ring dans la région us-east1 et le projet avec l’ID my-example-project-1, vos paramètres personnalisés ProvScheme doivent ressembler aux paramètres suivants :
'<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Property xsi:type="StringProperty" Name="CryptoKeyId" Value="my-example-project-1:us-east1:my-example-key-ring:my-example-key" />
</CustomProperties>'
<!--NeedCopy-->
Tous les disques et images provisionnés avec MCS associés à ce schéma de provisioning utilisent cette clé de chiffrement gérée par le client.
Conseil :
Si vous utilisez des clés globales, l’emplacement des propriétés du client doit indiquer
globalet non le nom de la région, qui dans l’exemple ci-dessus est us-east1. Par exemple :<Property xsi:type="StringProperty" Name="CryptoKeyId" Value="my-example-project-1:global:my-example-key-ring:my-example-key" />.