Kontrol akses yang sangat detail untuk urutan

Halaman ini menjelaskan cara kerja kontrol akses yang mendetail dengan urutan Spanner.

Untuk pengguna kontrol akses yang mendetail, 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 menjalankan operasi urutan tertentu.

Operasi Persyaratan hak istimewa

GoogleSQL:

GET_NEXT_SEQUENCE_VALUE()

PostgreSQL:

nextval()

Memerlukan hak istimewa UPDATE atau SELECT sesuai urutan. Perhatikan bahwa jika menjalankan fungsi ini melalui kolom atau nilai default yang dihasilkan, Anda juga harus memiliki hak istimewa INSERT atau UPDATE pada kolom tersebut. Hak istimewa UPDATE pada urutan tidak secara otomatis memberikan hak istimewa apa pun di 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 Anda kueri. Anda hanya dapat melihat urutan yang memiliki hak istimewa untuk dilihat.

Langkah selanjutnya