Si usas políticas de listas de control de acceso (LCA) en Memorystore para Valkey, puedes proteger el acceso a tus instancias. Puedes habilitar la seguridad detallada restringiendo el acceso de los usuarios y los servicios a claves, comandos y canales de Pub/Sub específicos.
A continuación, se muestran ejemplos de casos de uso para usar políticas de ACL y proteger el acceso a las instancias:
- Proporciona control de acceso basado en roles (RBAC): Crea perfiles de usuario distintos para los diferentes componentes de tus aplicaciones. Por ejemplo, un frontend web puede tener acceso de solo lectura, mientras que un servicio de trabajador en segundo plano tiene acceso de lectura y escritura. Esto evita la filtración o alteración accidental de datos.
- Evita los comandos destructivos: Restringe los comandos peligrosos, como
FLUSHALL,FLUSHDBoCONFIG, solo a los administradores de alto nivel. Esto protege la integridad de los datos de errores de software o errores manuales. Proporciona seguridad para aplicaciones multiusuario: usa usuarios de ACL independientes para diferentes microservicios o socios externos. Esto garantiza que los usuarios de un servicio no puedan leer ni modificar las claves que pertenecen a otro servicio.
Memorystore for Valkey no ofrece la arquitectura de múltiples inquilinos a nivel de recursos. Aunque los espacios de claves estén divididos, un servicio podría consumir una cantidad desproporcionada de memoria o CPU.
Realiza análisis y supervisión de solo lectura: asigna un usuario dedicado que pueda usar solo
GETo cualquier otro comando de solo lectura (por ejemplo,SCANoTYPE) para motores de análisis o aplicaciones de panel. Esto evita escrituras accidentales o la eliminación de datos.Claves de base de datos seguras: Restringen las aplicaciones para que solo interactúen con claves que coincidan con patrones específicos (por ejemplo,
app1:*). Esto proporciona la separación lógica de los datos dentro de una instancia.Inhabilitar las secuencias de comandos de Lua: Usa políticas de ACL para administrar las capacidades de secuencias de comandos de Lua de tus instancias. Inhabilitar o restringir los secuencias de comandos de Lua puede ser útil para ajustar el rendimiento, simplificar la funcionalidad de tus instancias o cumplir con los lineamientos de seguridad de tu organización.
Antes de comenzar
Antes de comenzar a usar las políticas de ACL, completa las instrucciones de esta sección.
Usa la consola de Google Cloud , Google Cloud CLI y las APIs
Para usar la consola de Google Cloud , Google Cloud CLI y las APIs, haz lo siguiente:
- En la consola de Google Cloud , en la página del selector de proyectos, selecciona o crea un proyecto de Google Cloud .
Nota: Si no planeas conservar los recursos que creaste durante este procedimiento, crea un proyecto en lugar de seleccionar uno existente. Cuando termines, puedes borrar el proyecto y quitar todos los recursos asociados con él.
Ir al selector de proyectos - Asegúrate de tener habilitada la facturación para tu proyecto. Obtén información para verificar si la facturación está habilitada en un proyecto.
Instala y, luego, inicializa Google Cloud CLI.
Nota: Si ya instalaste gcloud CLI, ejecuta
gcloud components updatepara asegurarte de tener la versión más reciente. Necesitas, al menos, la versión489.0.0de gcloud CLI para acceder a los comandos de gcloud CLI de Memorystore para Valkey.-
Habilita la API de Memorystore para Valkey.
Memorystore for Valkey -
Habilita la API de Network Connectivity.
API de Network Connectivity -
Habilita la API de Service Consumer Management.
API de Service Consumer Management
Asigna roles de Memorystore for Valkey
Asegúrate de que tú o la cuenta de usuario que usas tengan los permisos necesarios para la acción que debes realizar.
Para realizar todas las operaciones de la política de LCA, usa los roles de administrador de Memorystore
(roles/memorystore.admin) y editor de Memorystore
(roles/memorystore.editor). Para ver solo las políticas de ACL, usa el rol de visualizador de Memorystore (roles/memorystore.viewer).
Asigna permisos de Memorystore for Valkey
Además de los roles de administrador, editor y visualizador de Memorystore, para usar las políticas de LCA en Memorystore para Valkey, necesitas los siguientes permisos:
| Acción | Permiso |
|---|---|
| Crea una política de ACL | memorystore.aclPolicies.create |
| Asigna una política de ACL a una instancia | memorystore.instances.update |
| Consulta información sobre las políticas de ACL | memorystore.aclPolicies.list |
| Visualiza información sobre una política de ACL | memorystore.aclPolicies.get |
| Consulta información sobre las revisiones de la política de ACL | memorystore.aclPolicyRevisions.list |
| Visualiza información sobre una revisión de la política de ACL | memorystore.aclPolicyRevisions.get |
| Cómo modificar una política de ACL | memorystore.aclPolicies.update |
| Quita una política de ACL de una instancia | memorystore.instances.update |
| Borra una política de ACL | memorystore.aclPolicies.delete |
Crea una política de LCA
Cuando creas políticas de LCA en Memorystore for Valkey, mejoras la seguridad de tus instancias, ya que restringes el acceso de los usuarios a claves, comandos y canales de Pub/Sub específicos.
Puedes crear una política de ACL con la consola de Google Cloud o la gcloud CLI.
Console
En la consola de Google Cloud , ve a la página Memorystore para Valkey.
En el panel de navegación lateral, haz clic en Políticas de ACL.
En la página Políticas de ACL, haz clic en Crear política.
En la ventana Crear política, haz lo siguiente:
En el campo Nombre de la política, ingresa un nombre para la política de ACL. El nombre de la política debe contener solo letras minúsculas, números y guiones. También debe comenzar con una letra y ser único en su región.
En el menú Región, selecciona la región en la que deseas que Memorystore para Valkey cree la política de ACL.
Haz clic en Agregar regla.
En el campo ID de usuario, ingresa el nombre del usuario al que se aplicará la política de ACL.
En el campo Cadena de acceso, ingresa la cadena de acceso de la política. La cadena de acceso es una regla legible por humanos que define los permisos específicos para el usuario.
Por ejemplo, si deseas otorgar al superusuario
defaultpermisos de lectura y escritura en todas las claves de LCA de la instancia, completa los campos ID de usuario y Cadena de acceso de la siguiente manera:ID de usuario Cadena de acceso defaulton ~* &* +@allEsta regla otorga los siguientes permisos al usuario
default:on: El usuario está activo y habilitado para la autenticación.~*: El usuario tiene acceso de lectura y escritura a todas las claves posibles.&*: El usuario tiene acceso a todos los canales de Pub/Sub.+@all: el usuario puede ejecutar todos los comandos disponibles.
Para obtener más información sobre otras reglas y políticas de ACL que puedes crear, consulta ACL en la documentación de Valkey.
Repite los pasos del c al e para las reglas de ACL adicionales que quieras crear para la política.
Haz clic en Crear.
gcloud
Para crear una política de ACL, usa el comando gcloud memorystore acl-policies create.
gcloud memorystore acl-policies create ACL_POLICY_NAME \ --location=REGION \ --rules=rule="on ~* +@all",username="lucian" \ --rules=rule="on +get",username="taylor"
Realiza los siguientes reemplazos:
- ACL_POLICY_NAME: Es el nombre de la política de ACL que crearás. El nombre de la política solo debe contener letras minúsculas, números y guiones. También debe comenzar con una letra y ser único en su región.
- REGION: Es la región en la que deseas que se ubique la política de ACL.
Esta política usa la autenticación básica basada en tokens y tiene reglas que realizan las siguientes acciones:
- La primera regla otorga a
lucianel permiso~* +@all. Este permiso permite que el usuario acceda a todas las claves y ejecute todos los comandos. - La segunda regla otorga el permiso
getataylor. Este permiso permite que el usuario recupere los valores asociados con las claves. Restringe el acceso del usuario a las operaciones de datos de solo lectura y evita que el usuario modifique las claves.
Para crear reglas de una política de ACL que use la autenticación de Identity and Access Management (IAM), te recomendamos que uses principales de IAM para los nombres de usuario (por ejemplo, las direcciones de correo electrónico de los usuarios).
gcloud memorystore acl-policies create ACL_POLICY_NAME \ --location=REGION \ --rules=rule="on ~* +@all",username="lucian@example.com" \ --rules=rule="on +get",username="taylor@example.com"
Para crear una regla para una política de ACL que no usa autenticación, el usuario debe ser el usuario default.
gcloud memorystore acl-policies create ACL_POLICY_NAME \ --location=REGION \ --rules=rule="on ~* +@all",username="default"
Para obtener más información sobre la autenticación básica basada en tokens y la autenticación de IAM, consulta Protege el acceso a tus instancias con la autenticación básica basada en tokens y Acerca de la autenticación de IAM.
Para obtener más información sobre otras reglas y políticas de ACL que puedes crear, consulta ACL en la documentación de Valkey.
Asigna una política de ACL a una instancia
Cuando asignas una política de ACL a una instancia o reemplazas una política asignada, habilitas Memorystore para Valkey para que aplique las reglas de la política a la instancia. Como resultado, restringes el acceso de los usuarios a claves, comandos y canales de Pub/Sub específicos.
Puedes asignar una política de LCA a una instancia con la consola deGoogle Cloud o la gcloud CLI.
Asigna una política a una instancia nueva
Para crear una instancia y asignarle una política de ACL, consulta Crea instancias.
Asigna una política a una instancia existente
Para aumentar la seguridad de una instancia existente, puedes asignarle una política de ACL.
Console
En la consola de Google Cloud , ve a la página Memorystore para Valkey.
Haz clic en el ID de la instancia a la que deseas asignar una política de LCA.
En la página Instancia de un vistazo, desplázate hasta la tarjeta Seguridad.
Junto al campo Política de ACL, haz clic en Editar (edit).
En la ventana Editar política de ACL, haz lo siguiente:
En el menú Política, selecciona la política que deseas asignar a la instancia.
Haz clic en Actualizar instancia.
gcloud
Para asignar una política de ACL a una instancia existente, usa el comando gcloud memorystore instances update.
gcloud memorystore instances update INSTANCE_ID \ --update_mask=acl_policy \ --acl-policy=ACL_POLICY_NAME \ --location=REGION
Realiza los siguientes reemplazos:
- INSTANCE_ID: Es el ID de la instancia a la que asignas la política de ACL.
- ACL_POLICY_NAME: Es el nombre de la política de ACL.
- REGION: Es la región en la que se encuentra la instancia.
Visualiza información sobre las políticas de ACL
Ver información sobre las políticas de LCA en Memorystore for Valkey te ayuda a mantener la seguridad, garantiza la estabilidad operativa de tu entorno y te permite auditar los datos en la memoria. Estas políticas definen qué usuarios pueden leer o modificar patrones de claves particulares, ejecutar comandos específicos o acceder a canales de Pub/Sub específicos.
Puedes ver información sobre las políticas de ACL con la consola deGoogle Cloud o la gcloud CLI.
Console
En la consola de Google Cloud , ve a la página Memorystore para Valkey.
En el panel de navegación lateral, haz clic en Políticas de ACL.
En la página Políticas de ACL, puedes ver la siguiente información sobre cada política de ACL:
- ID de la política: Es el ID único de la política.
- Ubicación: Es la región en la que se encuentra la política.
- Fecha de creación: Es la fecha y hora en que se creó la política.
- Fecha de actualización: Es la fecha y hora en que se actualizó la política por última vez.
- Cantidad de reglas: Es la cantidad total de reglas de la política.
- Usadas por instancias: Son las instancias que se asignan a la política.
gcloud
Para ver información sobre las políticas de ACL, usa el comando gcloud memorystore acl-policies list.
gcloud memorystore acl-policies list --location=REGION
Reemplaza REGION por la región en la que se encuentra la política de ACL.
Visualiza información sobre una política de ACL
Cuando visualizas información sobre una política de LCA en Memorystore para Valkey, puedes realizar auditorías de seguridad, solucionar errores de acceso y aplicar el principio de privilegio mínimo verificando los comandos de los usuarios, los permisos de las claves y el acceso a los canales de Pub/Sub. Además, los administradores pueden ver una política de ACL para garantizar que tus aplicaciones tengan el acceso adecuado y detectar reglas demasiado permisivas.
Puedes ver información sobre una política de ACL con la
gcloud CLI. Para ver esta información, usa el comando
gcloud memorystore acl-policies describe.
gcloud memorystore acl-policies describe ACL_POLICY_NAME \ --location=REGION
Realiza los siguientes reemplazos:
- ACL_POLICY_NAME: Es el nombre de la política de ACL sobre la que deseas ver información.
- REGION: Es la región en la que se encuentra la política de ACL.
Visualiza información sobre las revisiones de la política de ACL
Cuando creas una política de ACL, Memorystore for Valkey crea una versión (revisión) de la política. Cada vez que modificas la política, Memorystore para Valkey crea una revisión de política posterior.
Como Memorystore para Valkey genera estas revisiones automáticamente, puedes usarlas para fines de seguimiento y auditoría internos. Además, ver las revisiones te permite ver el contenido exacto de la política de ACL en cada versión histórica.
Con las revisiones de las políticas de ACL, puedes hacer un seguimiento de qué instancias usan qué revisión de una política. Esto te ayuda a mantener la visibilidad y garantizar que las instancias tengan la versión correcta durante los períodos de coherencia eventual después de una actualización de la política.
Puedes ver información sobre las revisiones de las políticas de ACL con la consola deGoogle Cloud o la gcloud CLI.
Console
En la consola de Google Cloud , ve a la página Memorystore para Valkey.
En el panel de navegación lateral, haz clic en Políticas de ACL.
En la página Políticas de ACL, haz clic en el ID de la política de ACL que tiene las revisiones que deseas ver. En la página Revisiones de la política de ACL, aparece la siguiente información:
- ID de revisión: Es el ID de cada revisión de la política de ACL.
- Número de revisión: Es el número de cada revisión de la política de ACL.
- Ubicación: Es la región en la que se encuentra cada revisión de la política de ACL.
- Fecha de creación: Es la fecha y hora en que se crea cada revisión de la política de LCA.
- Instancias adjuntas: Son las instancias que se asignan a cada revisión de la política de ACL.
- Instantánea: Información detallada sobre cada revisión de la política de ACL
gcloud
Para ver información sobre las revisiones de la política de ACL, usa el
comando gcloud memorystore acl-policies revisions list.
gcloud memorystore acl-policies revisions list \ --acl-policy=ACL_POLICY_NAME \ --location=REGION
Realiza los siguientes reemplazos:
- ACL_POLICY_NAME: Es el nombre de la política de ACL que contiene las revisiones sobre las que deseas ver información.
- REGION: Es la región en la que se encuentra la política de ACL.
En el resultado, anota los IDs de revisión. Necesitas estos IDs para ver información sobre revisiones específicas de la política de ACL.
Visualiza información sobre una revisión de la política de ACL
Cuando visualizas una revisión de la política de ACL, puedes ver sus reglas, metadatos y una lista de todas las instancias adjuntas. Puedes ver información sobre una revisión de la política de ACL con la consola de Google Cloud o la gcloud CLI.
Console
En la consola de Google Cloud , ve a la página Memorystore para Valkey.
En el panel de navegación lateral, haz clic en Políticas de ACL.
En la página Políticas de ACL, haz clic en el ID de la política de ACL que tiene una revisión que deseas ver.
En la página Revisiones de la política de ACL, haz clic en el vínculo Instantánea junto a la revisión de la política de ACL que tiene la información que deseas ver.
gcloud
Para ver información sobre una revisión de la política de ACL, usa el comando gcloud memorystore acl-policies revisions describe.
gcloud memorystore acl-policies revisions describe ACL_POLICY_REVISION_ID \ --acl-policy=ACL_POLICY_NAME \ --location=REGION
Realiza los siguientes reemplazos:
- ACL_POLICY_REVISION_ID: Es el ID de la revisión de la política de ACL sobre la que deseas ver información. Anotaste este ID cuando viste información sobre las revisiones de la política de ACL.
- ACL_POLICY_NAME: Es el nombre de la política de ACL que contiene la revisión.
- REGION: Es la región en la que se encuentra la política de ACL.
Modifica una política de ACL
Si modificas una política de ACL en Memorystore para Valkey, puedes mejorar la seguridad, aplicar el acceso con privilegios mínimos y administrar la seguridad operativa. Puedes modificar una política con la consola de Google Cloud o la gcloud CLI.
Agrega una regla a una política de ACL
Para aumentar la seguridad de una política de ACL, agrégale una regla.
Console
En la consola de Google Cloud , ve a la página Memorystore para Valkey.
En el panel de navegación lateral, haz clic en Políticas de ACL.
Junto a la política de ACL a la que deseas agregar una regla, haz clic en Más acciones (more_vert) y, luego, selecciona Editar.
En la ventana Editar política, haz clic en Agregar regla.
En el campo ID de usuario, ingresa el nombre del usuario al que se aplicará la política de ACL.
En el campo Cadena de acceso, ingresa la cadena de acceso para la política. Para obtener más información sobre las cadenas de acceso de las políticas de ACL, consulta Crea una política de ACL.
Repite los pasos del 4 al 6 para las reglas de ACL adicionales que quieras agregar a la política.
Haz clic en Guardar.
gcloud
Para agregar una regla a una política de ACL, usa el comando
gcloud memorystore acl-policies update.
gcloud memorystore acl-policies update ACL_POLICY_NAME \ --location=REGION \ --add-rules=rule="on ~list:*",username="lucian"
Realiza los siguientes reemplazos:
- ACL_POLICY_NAME: Es el nombre de la política de ACL para la que deseas agregar una regla de ACL.
- REGION: Es la región en la que se encuentra la política de ACL.
Esta regla otorga acceso de lucian a todas las claves que comienzan con list:.
Cómo modificar una regla de una política de ACL
Modificar una Regla LCA para una política de ACL proporciona mayor seguridad, mejor seguridad operativa y un control de acceso del usuario más detallado. Por ejemplo, puedes revocar permisos durante una respuesta ante incidentes o habilitar el acceso temporal con fines de depuración.
Console
En la consola de Google Cloud , ve a la página Memorystore para Valkey.
En el panel de navegación lateral, haz clic en Políticas de ACL.
Junto a la política de ACL para la que deseas modificar una regla, haz clic en Más acciones (more_vert) y, luego, selecciona Editar.
En la ventana Editar política, haz clic en Agregar regla.
En los campos ID de usuario y Cadena de acceso, modifica el ID de usuario o la cadena de acceso de la política. Para obtener más información sobre las cadenas de acceso de las políticas de ACL, consulta Crea una política de ACL.
Repite los pasos 4 y 5 para las reglas de ACL adicionales que desees modificar en la política.
Haz clic en Guardar.
Reemplaza las reglas de una política de ACL
Al igual que cuando se modifica una regla de una política, reemplazar las reglas de una política proporciona mayor seguridad, mejor seguridad operativa y un control de acceso del usuario más detallado.
gcloud
Para reemplazar las reglas de una política de ACL, usa el comando gcloud memorystore acl-policies update.
gcloud memorystore acl-policies update ACL_POLICY_NAME \ --location=REGION \ --rules=rule="on ~c*che",username="lucian"
Realiza los siguientes reemplazos:
- ACL_POLICY_NAME: Es el nombre de la política de ACL para la que deseas reemplazar las reglas de ACL.
- REGION: la región en la que se encuentra la política de ACL
La regla que reemplazas para la política otorga acceso de lucian a todas las claves que coinciden con el patrón c*che. Por ejemplo: cache, caache y
ceche.
Quita una regla de una política de ACL
Si una regla de ACL ya no se aplica a una política de ACL, puedes quitarla.
Console
En la consola de Google Cloud , ve a la página Memorystore para Valkey.
En el panel de navegación lateral, haz clic en Políticas de ACL.
Junto a la política de ACL de la que deseas quitar una regla, haz clic en Más acciones (more_vert) y, luego, selecciona Editar.
En la ventana Editar política, junto a la regla que deseas quitar de la política, haz clic en Borrar regla (delete).
Repite el paso 4 para las reglas de ACL adicionales que quieras quitar de la política.
Haz clic en Guardar.
gcloud
Para quitar una regla de una política de ACL, usa el comando gcloud memorystore acl-policies update.
gcloud memorystore acl-policies update ACL_POLICY_NAME \ --location=REGION \ --remove-rules=rule="on ~set",username="lucian"
Realiza los siguientes reemplazos:
- ACL_POLICY_NAME: Es el nombre de la política de ACL de la que deseas quitar una regla de ACL.
- REGION: Es la región en la que se encuentra la política de ACL.
Si quitas esta regla, se revocarán los permisos asociados para lucian. Para acceder
a la instancia, lucian ahora debe conectarse como el usuario default y está sujeto
a los permisos de ese usuario.
Quita una política de ACL de una instancia
Si una política de ACL ya no se aplica a una instancia de Memorystore para Valkey, puedes quitarla. Puedes quitar una política con la consola deGoogle Cloud o la CLI de gcloud.
Console
En la consola de Google Cloud , ve a la página Memorystore para Valkey.
Haz clic en el ID de la instancia de la que deseas quitar una política de ACL.
En la página Instancia de un vistazo, desplázate hasta la tarjeta Seguridad.
Junto al campo Política de ACL, haz clic en Editar (edit).
En la ventana Editar política de ACL, haz lo siguiente:
En el menú Política, selecciona Sin política.
Haz clic en Actualizar instancia.
gcloud
Para quitar una política de LCA de una instancia, usa el comando gcloud memorystore instances update.
gcloud memorystore instances update INSTANCE_ID \ --clear-acl-policy \ --location=REGION
Realiza los siguientes reemplazos:
- INSTANCE_ID: Es el ID de la instancia de la que quitas la política de ACL.
- REGION: Es la región en la que se encuentra la instancia.
Borra una política de ACL
Si ya no necesitas una política de ACL, puedes borrarla. Puedes borrar una política con la consola de Google Cloud o la gcloud CLI.
Console
En la consola de Google Cloud , ve a la página Memorystore para Valkey.
En el panel de navegación lateral, haz clic en Políticas de ACL.
Junto a la política de ACL que quieres borrar, haz clic en Más acciones (more_vert) y, luego, selecciona Borrar.
Si el elemento de menú Borrar está desactivado, la política se asigna a las instancias. Antes de borrar la política, debes quitarla de cada instancia.
En la ventana Borrar política, haz lo siguiente:
En el campo de texto, ingresa el nombre de la política.
Haz clic en Borrar.
gcloud
Para borrar una política de ACL, usa el comando gcloud memorystore acl-policies delete.
gcloud memorystore acl-policies delete ACL_POLICY_NAME \ --location=REGION
Realiza los siguientes reemplazos:
- ACL_POLICY_NAME: Es el nombre de la política de ACL que deseas borrar.
- REGION: Es la región en la que se encuentra la política de ACL.
Inhabilitar las secuencias de comandos de Lua
Puedes usar las políticas de ACL para administrar las capacidades de secuencias de comandos de Lua en tus instancias. Inhabilitar o restringir las secuencias de comandos de Lua puede ser útil para ajustar el rendimiento, simplificar la funcionalidad de tus instancias o cumplir con los lineamientos de seguridad de tu organización.
Inhabilitar los comandos de secuencias de comandos para los usuarios
Para inhabilitar los secuencias de comandos de Lua de modo que los usuarios no puedan ejecutarlos, debes usar políticas de LCA y quitar los permisos para los comandos de secuencias de comandos de la cadena de reglas de LCA del usuario.
Valkey categoriza los comandos en grupos. Las secuencias de comandos de Lua se incluyen en la categoría @scripting. Los comandos principales para los que debes quitar los permisos del usuario son los siguientes:
EVAL: Ejecuta una secuencia de comandos de Lua que se proporciona como una cadena.EVALSHA: Ejecuta una secuencia de comandos de Lua que se almacena en caché con el comandoSCRIPT LOAD.SCRIPT: Administra la caché de la secuencia de comandos (por ejemplo,LOAD,FLUSH,EXISTSyKILL)El comando
SCRIPTincluye los siguientes subcomandos:
Puedes inhabilitar todos los comandos de secuencias de comandos o un comando específico para los usuarios.
Para inhabilitar los comandos de secuencias de comandos, usa la gcloud CLI y
antepón un signo menos (-) al comando o a la categoría.
Inhabilitar todos los comandos de secuencias de comandos para un usuario
Para inhabilitar todos los comandos de secuencias de comandos de un usuario, crea una política de LCA y asígnala a una instancia o modifica una política de LCA asignada a una instancia.
Crear una política
Para crear una política de ACL que inhabilite todos los comandos de escritura de secuencias de comandos para un nombre de usuario llamado lucian, usa el comando gcloud memorystore acl-policies create.
gcloud memorystore acl-policies create POLICY_NAME \ --location=REGION \ --rules=rule="on ~* +@all -@scripting",username=lucian
Realiza los siguientes reemplazos:
- POLICY_NAME: Es el nombre de la política de ACL.
- REGION: Es la región en la que deseas que se ubique la política de ACL.
Después de crear la política, debes asignarla a una instancia nueva o existente.
Modifica una política
Para modificar una política de ACL y, así, inhabilitar todos los comandos de secuencias de comandos para lucian, usa el comando gcloud memorystore acl-policies update.
gcloud memorystore acl-policies update POLICY_NAME \ --location=REGION \ --rules=rule="on ~* +@all -@scripting",username=lucian
Realiza los siguientes reemplazos:
- POLICY_NAME: Es el nombre de la política de ACL.
- REGION: Es la región en la que se encuentra la política de ACL.
Si deseas otorgar solo los permisos específicos que necesita un usuario, cambia
el valor de +@all. Por ejemplo, si quieres que el usuario solo tenga acceso a comandos de solo lectura, cambia +@all a +@read. Para obtener más información sobre los
permisos de usuario que puedes configurar, consulta la documentación de la LCA de Valkey.
Inhabilita un comando de secuencias de comandos para un usuario
Puedes inhabilitar comandos específicos para un usuario. Por ejemplo, puedes permitir que el usuario ejecute todos los comandos de secuencias de comandos, excepto el comando SCRIPT FLUSH. Para inhabilitar un comando de secuencias de comandos para un usuario, crea una política de LCA y asígnala a una instancia, o bien modifica una política de LCA que esté asignada a una instancia.
Puedes inhabilitar cualquier comando de secuencias de comandos. En los ejemplos de esta sección, inhabilitas el comando SCRIPT FLUSH para el usuario. Para obtener una lista de los comandos de secuencias de comandos, consulta Inhabilitar los comandos de secuencias de comandos para los usuarios.
Crear una política
Para crear una política de ACL que inhabilite el comando de secuencias de comandos SCRIPT FLUSH para
lucian, usa el comando gcloud memorystore acl-policies create.
gcloud memorystore acl-policies create POLICY_NAME \ --location=REGION \ --rules=rule="on ~* -script|flush",username=lucian
Realiza los siguientes reemplazos:
- POLICY_NAME: Es el nombre de la política de ACL.
- REGION: Es la región en la que deseas que se ubique la política de ACL.
Después de crear la política, debes asignarla a una instancia nueva o existente.
Modifica una política
Para modificar una política de ACL y, así, inhabilitar todos los comandos de secuencias de comandos para lucian, usa el comando gcloud memorystore acl-policies update.
gcloud memorystore acl-policies update POLICY_NAME \ --location=REGION \ --rules=rule="on ~* -script|flush",username=lucian
Realiza los siguientes reemplazos:
- POLICY_NAME: Es el nombre de la política de ACL.
- REGION: Es la región en la que se encuentra la política de ACL.
Si deseas otorgar solo los permisos específicos que necesita un usuario, cambia
el valor de +@all. Por ejemplo, si deseas que el usuario tenga acceso solo a los comandos de solo lectura, cambia +@all a +@read. Para obtener más información sobre los
permisos de usuario que puedes configurar, consulta la documentación de la LCA de Valkey.
Protege al usuario predeterminado
Para inhabilitar los permisos de secuencias de comandos del superusuario default, crea una
política de LCA y asígnala a una instancia o modifica una política de LCA que esté asignada
a una instancia.
Crear una política
Para crear una política de ACL que inhabilite todos los comandos de secuencias de comandos para el usuario default, usa el comando gcloud memorystore acl-policies create.
gcloud memorystore acl-policies create POLICY_NAME \ --location=REGION \ --rules=rule="on ~* +@all -@scripting",username=default
Realiza los siguientes reemplazos:
- POLICY_NAME: Es el nombre de la política de ACL.
- REGION: Es la región en la que deseas que se ubique la política de ACL.
Después de crear la política, debes asignarla a una instancia nueva o existente.
Modifica una política
Para modificar una política de ACL y, así, inhabilitar todos los comandos de secuencias de comandos para el usuario default, usa el comando gcloud memorystore acl-policies update.
gcloud memorystore acl-policies update POLICY_NAME \ --location=REGION \ --rules=rule="on ~* +@all -@scripting",username=default
Realiza los siguientes reemplazos:
- POLICY_NAME: Es el nombre de la política de ACL.
- REGION: la región en la que se encuentra la política de ACL
Si solo deseas otorgar permisos específicos que necesita el usuario default, cambia el valor de +@all. Por ejemplo, si deseas que este usuario tenga acceso
solo a los comandos de solo lectura, cambia +@all por +@read. Para obtener más
información sobre los permisos de usuario que puedes configurar, consulta la documentación de la ACL de
Valkey.
Solucionar problemas
En esta sección, se enumeran los mensajes de error que puedes recibir cuando usas políticas de LCA, los motivos de estos mensajes y sugerencias para solucionar los problemas relacionados con ellos.
| Mensaje de error | Causa | Solucionar problemas |
|---|---|---|
username cannot be empty |
Estableciste una cadena vacía o una cadena que solo contiene espacios en blanco para un nombre de usuario en una política de LCA. | Usa un nombre de usuario que tenga caracteres alfanuméricos o especiales. Luego, vuelve a crear la política de ACL. |
duplicate username found in ACL policy |
Tienes nombres de usuario duplicados en una política de ACL. | Usa los registros de errores para encontrar el nombre de usuario duplicado. Modifica la solicitud de creación de la política de ACL para especificar exactamente una regla para el nombre de usuario. Luego, vuelve a crear la política de ACL. |
ACL rule token cannot contain token. use either
IAM or Basic Auth features to enable authentication
|
No puedes usar caracteres de contraseña (por ejemplo, <,
>, # y !) ni comandos relacionados
(por ejemplo, nopass, resetpass y
reset) en una política de ACL. |
Quita todos los caracteres de contraseña y los comandos relacionados de las reglas de la política de ACL. Luego, vuelve a crear la política de ACL. Para configurar la autenticación, habilita la autenticación básica o la autenticación basada en IAM. |
passwords not allowed in ACL rules (token starts with
char). use either IAM or Basic Auth features to
enable authentication |
No puedes usar caracteres de contraseña (por ejemplo, <,
>, # y !) ni comandos relacionados
(por ejemplo, nopass, resetpass y
reset) en una política de ACL. |
Quita todos los caracteres de contraseña y los comandos relacionados de las reglas de la política de ACL. Luego, vuelve a crear la política de ACL. Para configurar la autenticación, habilita la autenticación básica o la autenticación basada en IAM. |
invalid ACL rule syntax |
No formateaste correctamente una cadena de acceso en una o más de las reglas de la política de ACL. | Asigna el formato correcto a la cadena de acceso. |
ACL policy is in DELETING state and cannot be used |
Intentas asignar una política de ACL a una instancia, pero la política tiene el estado DELETING. |
Asigna una política de LCA diferente a la instancia. |
ACL_POLICY_IN_USE: ACL policy is in use by 1 or more instances
|
Estás intentando borrar una política de ACL que está asignada a, al menos, una instancia. | Antes de borrar una política de ACL, debes quitarla de todas las instancias a las que está asignada. Para determinar qué instancias se asignan a una política, consulta Visualiza información sobre las políticas de LCA. |
fast-failing the workflow as the resource is in DELETING
state |
Intentas modificar una política de ACL que tiene el estado DELETING. |
Si una política de ACL tiene el estado DELETING, no puedes
modificarla. |