Kontrol akses yang sangat terperinci untuk urutan

Halaman ini menjelaskan cara kerja kontrol akses terperinci dengan urutan Spanner.

Untuk pengguna kontrol akses terperinci, Anda dapat memberikan salah satu atau kedua hak istimewa berikut untuk mengizinkan akses membaca informasi urutan atau membuat nilai dari urutan.

  • Berikan SELECT pada urutan untuk mengizinkan akses baca ke parameter dan status urutan saat ini.

    GoogleSQL

    GRANT SELECT ON SEQUENCE SEQUENCE_NAME TO ROLE ROLE_NAME;
    

    PostgreSQL

    GRANT SELECT ON SEQUENCE SEQUENCE_NAME TO ROLE_NAME;
    
  • Berikan UPDATE pada urutan untuk mengizinkan panggilan ke generator nilai urutan.

    GoogleSQL

    GRANT UPDATE ON SEQUENCE SEQUENCE_NAME TO ROLE ROLE_NAME;
    

    PostgreSQL

    GRANT UPDATE ON SEQUENCE SEQUENCE_NAME TO ROLE_NAME;
    

Hak istimewa yang diperlukan untuk operasi urutan

Tabel berikut berisi detail tentang hak istimewa yang Anda perlukan saat melakukan operasi urutan tertentu.

Operasi Persyaratan hak istimewa

GoogleSQL:

GET_NEXT_SEQUENCE_VALUE()

PostgreSQL:

nextval()

Memerlukan hak istimewa UPDATE atau SELECT pada urutan. Perhatikan bahwa jika Anda menjalankan fungsi ini melalui kolom yang dihasilkan atau nilai default, Anda juga harus memiliki hak istimewa INSERT atau UPDATE pada kolom tersebut. Hak istimewa UPDATE pada urutan tidak otomatis memberikan hak istimewa apa pun pada kolom tempat Anda ingin menggunakan urutan.

GoogleSQL:

GET_INTERNAL_SEQUENCE_STATE()

PostgreSQL:

spanner.get_internal_sequence_state()

Memerlukan hak istimewa SELECT pada urutan yang Anda minta.

GoogleSQL:

INFORMATION_SCHEMA.SEQUENCES
INFORMATION_SCHEMA.SEQUENCE_OPTIONS

PostgreSQL

INFORMATION_SCHEMA.SEQUENCES

Anda dapat memiliki hak istimewa SELECT atau UPDATE pada urutan yang ingin dikueri. Anda hanya dapat melihat urutan yang memiliki hak istimewa untuk dilihat.

Langkah selanjutnya