Memorystore proporciona la función de autenticación de gestión de identidades y accesos (IAM), que aprovecha IAM para ayudarte a gestionar mejor el acceso de inicio de sesión de usuarios y cuentas de servicio. La autenticación basada en gestión de identidades y accesos se integra con Redis AUTH, lo que te permite rotar las credenciales (tokens de gestión de identidades y accesos) sin problemas y sin depender de contraseñas estáticas.
Para obtener instrucciones sobre cómo configurar la autenticación de gestión de identidades y accesos en tu clúster de Memorystore, consulta Gestionar la autenticación de gestión de identidades y accesos.
Autenticación de gestión de identidades y accesos para Redis
Cuando se usa la autenticación de gestión de identidades y accesos, el permiso para acceder a un clúster de Memorystore no se concede directamente al usuario final. En su lugar, los permisos se agrupan en roles, y los roles se conceden a los principales. Para obtener más información, consulta la descripción general de la gestión de identidades y accesos.
Los administradores que se autentiquen con gestión de identidades y accesos pueden usar la autenticación de gestión de identidades y accesos de Memorystore para gestionar de forma centralizada el control de acceso a sus instancias mediante políticas de gestión de identidades y accesos. Las políticas de gestión de identidades y accesos implican las siguientes entidades:
Directores. En Memorystore, puedes usar dos tipos de principales: una cuenta de usuario y una cuenta de servicio (para aplicaciones). Otros tipos de principales, como los grupos de Google, los dominios de Google Workspace o los dominios de Cloud Identity, aún no se admiten en la autenticación de gestión de identidades y accesos. Para obtener más información, consulta Conceptos relacionados con la identidad.
Roles. Para la autenticación de gestión de identidades y accesos de Memorystore, un usuario necesita el permiso redis.clusters.connect para autenticarse con un clúster. Para obtener este permiso, puedes vincular el usuario o la cuenta de servicio al rol predefinido Usuario de conexión de base de datos de clúster de Redis (roles/redis.dbConnectionUser). Para obtener más información sobre los roles de gestión de identidades y accesos, consulta el artículo Roles.
Recursos: Los recursos a los que acceden las entidades son clústeres de Memorystore. De forma predeterminada, los enlaces de políticas de gestión de identidades y accesos se aplican a nivel de proyecto, de modo que las entidades reciben permisos de rol para todas las instancias de Memorystore del proyecto. Sin embargo, los enlaces de políticas de IAM se pueden restringir a un clúster concreto. Para obtener instrucciones, consulta Gestionar permisos para la autenticación de gestión de identidades y accesos.
Comando AUTH de Redis
La función de autenticación de gestión de identidades y accesos usa el comando AUTH de Redis para integrarse con la gestión de identidades y accesos, lo que permite que los clientes proporcionen un token de acceso de gestión de identidades y accesos que verificará el clúster de Memorystore antes de permitir el acceso a los datos.
Al igual que todos los comandos, el comando AUTH se envía sin cifrar a menos que se habilite Cifrado en tránsito.
Para ver un ejemplo de cómo puede ser el comando AUTH, consulta Conectarse a un clúster de Redis que usa la autenticación de gestión de identidades y accesos.
Periodo de validez del token de acceso de IAM
De forma predeterminada, el token de acceso de gestión de identidades y accesos que obtienes como parte de la autenticación caduca una hora después de obtenerlo. También puedes definir el tiempo de vencimiento del token de acceso cuando lo generes.
Cuando establezcas una nueva conexión Redis, debes proporcionar un token de acceso válido mediante el comando AUTH
. Si el token caduca, debes obtener uno nuevo para establecer nuevas conexiones. Sin embargo, si ya has autenticado una conexión, seguirá funcionando aunque el token caduque.
Finalizar una conexión autenticada
Si quieres finalizar la conexión, usa el comando CLIENT KILL
de Redis. Para encontrar la conexión que quieres finalizar, primero ejecuta CLIENT LIST
,
que devuelve las conexiones de cliente por orden de antigüedad. A continuación, puedes ejecutar CLIENT KILL
para finalizar la conexión.
Habilitar la autenticación de gestión de identidades y accesos
Habilitar la autenticación de gestión de identidades y accesos no afecta al rendimiento en estado estable. Sin embargo, sí afecta a la velocidad a la que puedes establecer una conexión.
Si habilitas la autenticación de gestión de identidades y accesos, se limitará la velocidad de las conexiones de cliente que se establecen cada segundo. Esto se debe a que la autenticación de IAM de Google Cloud debe autenticar cada nueva conexión. En estado estable, una aplicación habilita los grupos de conexiones, por lo que el impacto es insignificante. Sin embargo, cuando las aplicaciones cliente se actualizan mediante implementaciones o procesamiento de rebotes, puede que se produzca una afluencia de conexiones. Si actualizas tus clientes gradualmente e implementas retrocesos exponenciales, podrás asumir esta reducción de la frecuencia.
Para ver un ejemplo de código sobre cómo usar la autenticación de gestión de identidades y accesos, consulta el ejemplo de código de autenticación de gestión de identidades y accesos y cifrado en tránsito.
Seguridad y privacidad
La autenticación de gestión de identidades y accesos te ayuda a asegurarte de que solo los principales de gestión de identidades y accesos autorizados puedan acceder a tu clúster de Redis. El cifrado TLS no se proporciona a menos que se habilite la opción Cifrado en tránsito. Por este motivo, se recomienda activar el cifrado en tránsito al usar la autenticación de gestión de identidades y accesos.
Conectarse con una máquina virtual de Compute Engine
Si usas una VM de Compute Engine para conectarte a una instancia que usa la autenticación de IAM, debes habilitar las siguientes APIs y ámbitos de acceso en tu proyecto:
Ámbito de la API Cloud Platform. Para obtener instrucciones sobre cómo habilitar este permiso, consulta Asociar la cuenta de servicio y actualizar el permiso de acceso. Para ver una descripción de las prácticas recomendadas de este ámbito de acceso, consulta Prácticas recomendadas de los ámbitos.
API Memorystore for Redis Cluster. Para obtener un enlace que te permita habilitar la API, haz clic en el siguiente botón:
Memorystore for Redis Cluster