Control de acceso detallado para secuencias

En esta página, se explica cómo funciona el control de acceso detallado con las secuencias de Spanner.

En el caso de los usuarios con control de acceso detallado, puedes otorgar uno o ambos de los siguientes privilegios para permitir el acceso a la información de la secuencia de lectura o generar valores a partir de ella.

  • Otorga SELECT en la secuencia para permitir el acceso de lectura a los parámetros. y el estado actual de la secuencia.

    GoogleSQL

    GRANT SELECT ON SEQUENCE SEQUENCE_NAME TO ROLE ROLE_NAME;
    

    PostgreSQL

    GRANT SELECT ON SEQUENCE SEQUENCE_NAME TO ROLE_NAME;
    
  • Otorga UPDATE en la secuencia para permitir llamadas al valor de la secuencia generador.

    GoogleSQL

    GRANT UPDATE ON SEQUENCE SEQUENCE_NAME TO ROLE ROLE_NAME;
    

    PostgreSQL

    GRANT UPDATE ON SEQUENCE SEQUENCE_NAME TO ROLE_NAME;
    

Privilegios obligatorios para las operaciones de secuencia

En la siguiente tabla, se incluyen detalles sobre los privilegios que necesitas cuando realizas operaciones de secuencia específicas.

Operación Requisitos de privilegios

GoogleSQL:

GET_NEXT_SEQUENCE_VALUE()

PostgreSQL:

nextval()

Requiere un privilegio UPDATE o SELECT en la secuencia. Ten en cuenta que, si ejecutas esta función a través de columnas generadas o valores predeterminados, también debes tener un privilegio INSERT o UPDATE en la columna. Un privilegio UPDATE en una secuencia no otorga automáticamente ningún privilegio en las columnas en las que deseas usar la secuencia.

GoogleSQL:

GET_INTERNAL_SEQUENCE_STATE()

PostgreSQL:

spanner.get_internal_sequence_state()

Requiere el privilegio SELECT en la secuencia que para cada solicitud.

GoogleSQL:

INFORMATION_SCHEMA.SEQUENCES
INFORMATION_SCHEMA.SEQUENCE_OPTIONS

PostgreSQL

INFORMATION_SCHEMA.SEQUENCES

Puedes tener la SELECT o la UPDATE en la secuencia que quieras consultar. Solo puedes ver las secuencias para las que tienes permiso.

¿Qué sigue?