Descripción general
GKE en AWS utiliza claves simétricas del Servicio de administración de claves de AWS (KMS) administradas por el cliente para cifrar:
- Datos de estado de Kubernetes en etcd
- Datos de usuario de la instancia EC2
- Volúmenes EBS para el cifrado en reposo de datos del plano de control y del grupo de nodos
En entornos de producción, recomendamos usar claves diferentes para la configuración y el cifrado de volúmenes. Para minimizar aún más los riesgos si una clave se ve comprometida, también puede crear claves diferentes para cada uno de los siguientes elementos:
- Configuración del plano de control del clúster
- Base de datos del plano de control del clúster
- Volumen principal del plano de control del clúster
- Volumen raíz del plano de control del clúster
- Configuración del grupo de nodos
- Volumen raíz del grupo de nodos
Para mayor seguridad, puede crear una política de claves de AWS KMS que asigne únicamente el conjunto mínimo de permisos requerido. Para obtener más información, consulte Creación de claves KMS con permisos específicos .
Crear una clave AWS KMS
Para crear una clave, ejecute el siguiente comando:
aws --region AWS_REGION kms create-key \
--description "KEY_DESC"
Reemplace lo siguiente:
-
AWS_REGION
con el nombre de su región de AWS -
KEY_DESC
con una descripción de texto de su clave
Para cada clave que cree, guarde el valor denominado KeyMetadata.Arn
en la salida de este comando para su uso posterior.
Creación de claves KMS con permisos específicos
Si crea claves independientes para distintas funciones, debe proporcionar una política de claves KMS para cada clave que otorgue los permisos adecuados. Si no especifica una política de claves al crear una clave, AWS KMS creará una predeterminada que otorga a todos los principales de la cuenta propietaria acceso ilimitado a todas las operaciones de la clave.
Al crear una política de claves, debe permitir que una política de AWS IAM acceda a ella. Esta política también debe otorgar a su cuenta permisos para usar políticas de IAM. Sin el permiso de la política de claves, las políticas de IAM que otorgan permisos no surten efecto. Para obtener más información, consulte Políticas de claves en AWS KMS .
La siguiente tabla describe los permisos para cada uno de los roles de AWS IAM que utiliza GKE en AWS.
Rol de agente de servicio de API de GKE Multi-Cloud | Rol del plano de control | Rol del grupo de nodos | Rol de servicio de AWS para escalado automático | |
---|---|---|---|---|
Cifrado de la configuración del plano de control del clúster | kms:Cifrar | kms:Descifrar | N / A | N / A |
Cifrado de la base de datos del plano de control del clúster | N / A | kms:Cifrar kms:Descifrar | N / A | N / A |
Cifrado del volumen principal del plano de control del clúster | kms: Generar clave de datos sin texto plano | kms:CrearConcesión | N / A | N / A |
Cifrado del volumen raíz del plano de control del clúster | N / A | N / A | N / A | Consulte las secciones de políticas clave que permiten el acceso a la clave administrada por el cliente |
Cifrado de la configuración del grupo de nodos | kms:Cifrar | N / A | kms:Descifrar | N / A |
Cifrado del volumen raíz del grupo de nodos | N / A | N / A | N / A | Consulte las secciones de políticas clave que permiten el acceso a la clave administrada por el cliente |
Otros requisitos | kms:DescribirClave | N / A | N / A | N / A |