Controle de acesso granular para sequências

Nesta página, explicamos como o controle de acesso detalhado funciona com o Spanner sequências.

Para usuários de controle de acesso refinados, você pode conceder um ou ambos os os seguintes privilégios para permitir o acesso para ler informações da sequência ou gerar valores da sequência.

  • Conceda SELECT na sequência para permitir acesso de leitura aos parâmetros. e o estado atual da sequência.

    GoogleSQL

    GRANT SELECT ON SEQUENCE SEQUENCE_NAME TO ROLE ROLE_NAME;
    

    PostgreSQL

    GRANT SELECT ON SEQUENCE SEQUENCE_NAME TO ROLE_NAME;
    
  • Conceda UPDATE na sequência para permitir chamadas ao valor da sequência. gerador.

    GoogleSQL

    GRANT UPDATE ON SEQUENCE SEQUENCE_NAME TO ROLE ROLE_NAME;
    

    PostgreSQL

    GRANT UPDATE ON SEQUENCE SEQUENCE_NAME TO ROLE_NAME;
    

Privilégios necessários para operações em sequência

A tabela a seguir contém detalhes sobre os privilégios necessários ao a execução de uma sequência específica.

Operação Requisitos de privilégios

SQL do Google:

GET_NEXT_SEQUENCE_VALUE()

PostgreSQL:

nextval()

Requer um privilégio UPDATE ou SELECT no sequência. Se você executar essa função por colunas geradas ou valores padrão, também será necessário Privilégio INSERT ou UPDATE na coluna. Um O privilégio UPDATE em uma sequência não concede automaticamente nas colunas em que você quer usar a sequência.

SQL do Google:

GET_INTERNAL_SEQUENCE_STATE()

PostgreSQL:

spanner.get_internal_sequence_state()

Exige o privilégio SELECT na sequência que você solicitação.

SQL do Google:

INFORMATION_SCHEMA.SEQUENCES
INFORMATION_SCHEMA.SEQUENCE_OPTIONS

PostgreSQL

INFORMATION_SCHEMA.SEQUENCES

É possível ter o SELECT ou o UPDATE na sequência que você quer consultar. Só é possível conferir as sequências que você tem o privilégio de visualizar.

A seguir