本页介绍了精细访问权限控制如何与 Spanner 序列搭配使用。
对于精细访问权限控制用户,您可以授予以下一项或两项特权,以允许用户读取序列信息或从序列中生成值。
对序列授予
SELECT
,以允许对序列的参数和当前状态进行读取访问。GoogleSQL
GRANT SELECT ON SEQUENCE SEQUENCE_NAME TO ROLE ROLE_NAME;
PostgreSQL
GRANT SELECT ON SEQUENCE SEQUENCE_NAME TO ROLE_NAME;
向序列授予
UPDATE
,以允许调用序列值生成器。GoogleSQL
GRANT UPDATE ON SEQUENCE SEQUENCE_NAME TO ROLE ROLE_NAME;
PostgreSQL
GRANT UPDATE ON SEQUENCE SEQUENCE_NAME TO ROLE_NAME;
序列操作所需的权限
下表详细介绍了执行特定序列操作时需要哪些权限。
操作 | 特权要求 |
GoogleSQL:
PostgreSQL:
|
需要对序列拥有 UPDATE 或 SELECT 权限。请注意,如果您通过生成的列或默认值执行此函数,则还需要对该列拥有 INSERT 或 UPDATE 权限。对序列的 UPDATE 权限不会自动授予您对要使用该序列的列的任何权限。 |
GoogleSQL:
PostgreSQL:
|
需要对您请求的序列拥有 SELECT 权限。
|
GoogleSQL:
PostgreSQL
|
您可以对要查询的序列拥有 SELECT 或 UPDATE 权限。您只能看到您有权查看的序列。
|
后续步骤
- 详细了解如何在 Spanner 中使用序列。
- 了解适用于 GoogleSQL 或 PostgreSQL 的
SEQUENCE
。 - 了解 GoogleSQL 或 PostgreSQL 中的序列函数。
- 了解 GoogleSQL 或 PostgreSQL 中 INFORMATION_SCHEMA 中的序列。