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 IAM se integra con Valkey AUTH, lo que te permite rotar las credenciales (tokens de IAM) 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 instancia de Memorystore, consulta Gestionar la autenticación de gestión de identidades y accesos.
Autenticación de IAM para Valkey
Cuando se usa la autenticación de IAM, el permiso para acceder a una instancia 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 memorystore.instances.connect para autenticarse con una instancia. Para obtener este permiso, puede vincular el usuario o la cuenta de servicio al rol predefinido Usuario de conexión de base de datos de Memorystore (roles/memorystore.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 principales son instancias 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 una instancia concreta. Para obtener instrucciones, consulta Gestionar permisos para la autenticación de gestión de identidades y accesos.
Comando AUTH de Valkey
La función de autenticación de IAM usa el comando AUTH de Valkey para integrarse con IAM, lo que permite a los clientes proporcionar un token de acceso de IAM que la instancia de Valkey verificará 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 una instancia que usa la autenticación de gestión de identidades y accesos.
Periodo de validez del token de acceso de IAM
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 de forma predeterminada. También puedes definir el tiempo de vencimiento del token de acceso al generar el token de acceso. Se debe presentar un token válido mediante el comando AUTH al establecer una nueva conexión Valkey. Si el token ha caducado, tendrás que obtener un nuevo token de acceso para establecer nuevas conexiones.
Finalizar una conexión autenticada
Para finalizar una conexión, usa el comando Valkey CLIENT KILL
. Primero, ejecuta CLIENT LIST
para
identificar la conexión y, después, ejecuta CLIENT KILL
para finalizarla.
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 se reinician o se implementan las aplicaciones cliente, puede haber un aumento repentino de nuevas conexiones. Si actualizas tus clientes gradualmente e implementas una retirada exponencial, podrás asumir esta reducción.
Para ver un ejemplo de código sobre cómo usar la autenticación de gestión de identidades y accesos, consulta Ejemplo de código para la autenticación de gestión de identidades y accesos y el 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 instancia de Valkey. 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 Valkey. Para obtener un enlace que te permita habilitar la API, haz clic en el siguiente botón:
Memorystore para Valkey