Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Pemberian dan pencabutan hak istimewa untuk RDS untuk Db2
Pengguna mendapatkan akses ke basis data melalui keanggotaan dalam grup yang dilampirkan pada basis data.
Gunakan prosedur-prosedur berikut untuk memberikan dan mencabut privilese untuk mengontrol akses ke basis data Anda.
Prosedur-prosedur ini menggunakan IBM Db2 CLP yang berjalan pada mesin lokal untuk menghubungi instans basis data RDS for Db2. Pastikan untuk membuat katalog simpul TCPIP dan basis data untuk menghubungi instans basis data RDS for Db2 yang berjalan di mesin lokal Anda. Untuk informasi selengkapnya, lihat Menghubungkan ke Amazon RDS untuk instans Db2 DB dengan IBM Db2 CLP.
Topik
Memberikan akses ke basis data Anda kepada pengguna
Untuk memberikan akses ke basis data Anda kepada seorang pengguna
-
Hubungi basis data
rdsadmindengan menggunakan nama pengguna master dan kata sandi master untuk instans basis data RDS for Db2 Anda. Dalam contoh berikut, gantimaster_usernamedanmaster_passworddengan informasi Anda sendiri.db2 connect to rdsadmin usermaster_usernameusingmaster_passwordPerintah ini menghasilkan output yang serupa dengan contoh berikut:
Database Connection Information Database server = DB2/LINUXX8664 11.5.8.0 SQL authorization ID = ADMIN Local database alias = RDSADMIN -
Tambahkan pengguna ke daftar otorisasi Anda dengan memanggil
rdsadmin.add_user. Untuk informasi selengkapnya, lihat rdsadmin.add_user.db2 "call rdsadmin.add_user( 'username', 'password', 'group_name,group_name')" -
(Opsional) Tambahkan grup lain ke pengguna dengan memanggil
rdsadmin.add_groups. Untuk informasi selengkapnya, lihat rdsadmin.add_groups.db2 "call rdsadmin.add_groups( 'username', 'group_name,group_name')" -
Tegaskan otoritas yang tersedia untuk pengguna. Dalam contoh berikut, ganti
rds_database_alias,master_user, danmaster_passworddengan informasi Anda sendiri. Juga, gantiusernamedengan nama pengguna.db2 terminate db2 connect tords_database_aliasusermaster_userusingmaster_passworddb2 "SELECT SUBSTR(AUTHORITY,1,20) AUTHORITY, D_USER, D_GROUP, D_PUBLIC FROM TABLE (SYSPROC.AUTH_LIST_AUTHORITIES_FOR_AUTHID ('username', 'U') ) AS T ORDER BY AUTHORITY"Perintah ini menghasilkan output yang serupa dengan contoh berikut:
AUTHORITY D_USER D_GROUP D_PUBLIC -------------------- ------ ------- -------- ACCESSCTRL N N N BINDADD N N N CONNECT N N N CREATETAB N N N CREATE_EXTERNAL_ROUT N N N CREATE_NOT_FENCED_RO N N N CREATE_SECURE_OBJECT N N N DATAACCESS N N N DBADM N N N EXPLAIN N N N IMPLICIT_SCHEMA N N N LOAD N N N QUIESCE_CONNECT N N N SECADM N N N SQLADM N N N SYSADM * N * SYSCTRL * N * SYSMAINT * N * SYSMON * N * WLMADM N N N -
Berikan peran-peran RDS for Db2
ROLE_NULLID_PACKAGES,ROLE_TABLESPACES, danROLE_PROCEDURESke grup tempat Anda menambahkan pengguna. Untuk informasi selengkapnya, lihat Amazon RDS untuk peran default Db2.catatan
Kami membuat instans basis data RDS for Db2 dalam mode
RESTRICTIVE. Oleh karena itu, peran-peran RDS for Db2ROLE_NULLID_PACKAGES,ROLE_TABLESPACES, danROLE_PROCEDURESmemberikan privilese eksekusi pada paket-paketNULLIDuntuk IBM Db2 CLP dan Dynamic SQL. Peran-peran ini juga memberi pengguna privilese pada ruang tabel.-
Connect ke database Db2 Anda. Dalam contoh berikut, ganti
database_name,master_user, danmaster_passworddengan informasi Anda sendiri.db2 connect todatabase_nameusermaster_userusingmaster_password -
Berikan peran
ROLE_NULLED_PACKAGESkepada sebuah grup. Dalam contoh berikut, gantigroup_namedengan nama grup tempat Anda ingin menambahkan peran.db2 "grant role ROLE_NULLID_PACKAGES to groupgroup_name" -
Berikan peran
ROLE_TABLESPACESkepada grup yang sama. Dalam contoh berikut, gantigroup_namedengan nama grup tempat Anda ingin menambahkan peran.db2 "grant role ROLE_TABLESPACES to groupgroup_name" -
Berikan peran
ROLE_PROCEDURESkepada grup yang sama. Dalam contoh berikut, gantigroup_namedengan nama grup tempat Anda ingin menambahkan peran.db2 "grant role ROLE_PROCEDURES to groupgroup_name"
-
-
Berikan otoritas-otoritas
connect,bindadd,createtab, danIMPLICIT_SCHEMAkepada grup yang Anda tambahi pengguna. Dalam contoh berikut, gantigroup_namedengan nama grup kedua yang Anda tambahkan pengguna.db2 "grant usage on workload SYSDEFAULTUSERWORKLOAD to public" db2 "grant connect, bindadd, createtab, implicit_schema on database to groupgroup_name" -
Ulangi langkah 4 hingga 6 untuk setiap grup lain yang Anda tambahi pengguna.
-
Coba akses pengguna dengan menghubungkan sebagai pengguna, membuat tabel, memasukkan nilai ke dalam tabel, dan mengambil data dari tabel. Dalam contoh berikut, ganti
rds_database_alias,username, danpassworddengan nama database dan nama pengguna dan kata sandi pengguna.db2 connect tords_database_aliasuserusernameusingpassworddb2 "create table t1(c1 int not null)" db2 "insert into t1 values (1),(2),(3),(4)" db2 "select * from t1"
Mengubah kata sandi pengguna
Untuk mengubah kata sandi seorang pengguna
-
Hubungi basis data
rdsadmindengan menggunakan nama pengguna master dan kata sandi master untuk instans basis data RDS for Db2 Anda. Dalam contoh berikut, gantimaster_usernamedanmaster_passworddengan informasi Anda sendiri.db2 connect to rdsadmin usermaster_usernameusingmaster_password -
Ubah kata sandi dengan memanggil
rdsadmin.change_password. Untuk informasi selengkapnya, lihat rdsadmin.change_password.db2 "call rdsadmin.change_password( 'username', 'new_password')"
Menambahkan grup ke pengguna
Untuk menambahkan grup ke seorang pengguna
-
Hubungi basis data
rdsadmindengan menggunakan nama pengguna master dan kata sandi master untuk instans basis data RDS for Db2 Anda. Dalam contoh berikut, gantimaster_usernamedanmaster_passworddengan informasi Anda sendiri.db2 connect to rdsadmin usermaster_usernameusingmaster_password -
Tambahkan grup ke pengguna dengan memanggil
rdsadmin.add_groups. Untuk informasi selengkapnya, lihat rdsadmin.add_groups.db2 "call rdsadmin.add_groups( 'username', 'group_name,group_name')"
Menghapus grup dari pengguna
Untuk menghapus grup dari seorang pengguna
-
Hubungi basis data
rdsadmindengan menggunakan nama pengguna master dan kata sandi master untuk instans basis data RDS for Db2 Anda. Dalam contoh berikut, gantimaster_usernamedanmaster_passworddengan informasi Anda sendiri.db2 connect to rdsadmin usermaster_usernameusingmaster_password -
Hapus grup dengan memanggil
rdsadmin.remove_groups. Untuk informasi selengkapnya, lihat rdsadmin.remove_groups.db2 "call rdsadmin.remove_groups( 'username', 'group_name,group_name')"
Menghapus pengguna
Untuk menghapus seorang pengguna dari daftar otorisasi
-
Hubungi basis data
rdsadmindengan menggunakan nama pengguna master dan kata sandi master untuk instans basis data RDS for Db2 Anda. Dalam contoh berikut, gantimaster_usernamedanmaster_passworddengan informasi Anda sendiri.db2 connect to rdsadmin usermaster_usernameusingmaster_password -
Hapus pengguna dari daftar otorisasi dengan memanggil
rdsadmin.remove_user. Untuk informasi selengkapnya, lihat rdsadmin.remove_user.db2 "call rdsadmin.remove_user('username')"
Memerinci pengguna
Untuk memerinci pengguna pada sebuah daftar otorisasi, panggil prosedur tersimpan rdsadmin.list_users. Untuk informasi selengkapnya, lihat rdsadmin.list_users.
db2 "call rdsadmin.list_users()"
Membuat peran
Anda dapat menggunakan prosedur tersimpan rdsadmin.create_role untuk membuat peran.
Untuk membuat grup
-
Hubungi basis data
rdsadmin. Dalam contoh berikut, gantimaster_usernamedanmaster_passworddengan informasi Anda.db2 connect to rdsadmin usermaster_usernameusingmaster_password -
Atur Db2 ke konten keluaran.
db2 set serveroutput on -
Buat peran. Untuk informasi selengkapnya, lihat rdsadmin.create_role.
db2 "call rdsadmin.create_role( 'database_name', 'role_name')" -
Setel Db2 agar tidak menampilkan konten.
db2 set serveroutput off
Memberikan peran
Anda dapat menggunakan prosedur rdsadmin.grant_role tersimpan untuk menetapkan peran ke peran, pengguna, atau grup.
Untuk menetapkan peran
-
Hubungi basis data
rdsadmin. Dalam contoh berikut, gantimaster_usernamedanmaster_passworddengan informasi Anda.db2 connect to rdsadmin usermaster_usernameusingmaster_password -
Atur Db2 ke konten keluaran.
db2 set serveroutput on -
Tetapkan peran. Untuk informasi selengkapnya, lihat rdsadmin.grant_role.
db2 "call rdsadmin.grant_role( 'database_name', 'role_name', 'grantee', 'admin_option')" -
Setel Db2 agar tidak menampilkan konten.
db2 set serveroutput off
Mencabut peran
Anda dapat menggunakan prosedur rdsadmin.revoke_role tersimpan untuk mencabut peran dari peran, pengguna, atau grup.
Untuk mencabut peran
-
Hubungi basis data
rdsadmin. Dalam contoh berikut, gantimaster_usernamedanmaster_passworddengan informasi Anda.db2 connect to rdsadmin usermaster_usernameusingmaster_password -
Mencabut peran. Untuk informasi selengkapnya, lihat rdsadmin.revoke_role.
db2 "call rdsadmin.revoke_role( ?, 'database_name', 'role_name', 'grantee')"
Menjatuhkan peran
Anda dapat menggunakan prosedur yang rdsadmin.drop_role disimpan untuk menjatuhkan peran.
Untuk menjatuhkan peran
-
Hubungi basis data
rdsadmin. Dalam contoh berikut, gantimaster_usernamedanmaster_passworddengan informasi Anda.db2 connect to rdsadmin usermaster_usernameusingmaster_password -
Jatuhkan peran. Untuk informasi selengkapnya, lihat rdsadmin.drop_role.
db2 "call rdsadmin.drop_role( ?, 'database_name', 'role_name')"
Pemberian otorisasi basis data
Pengguna master, yang memiliki DBADM otorisasi, dapat memberikanDBADM,ACCESSCTRL, atau DATAACCESS otorisasi untuk peran, pengguna, atau grup.
Untuk memberikan otorisasi basis data
-
Hubungi basis data
rdsadmindengan menggunakan nama pengguna master dan kata sandi master untuk instans basis data RDS for Db2 Anda. Dalam contoh berikut, gantimaster_usernamedanmaster_passworddengan informasi Anda sendiri.db2 connect to rdsadmin usermaster_usernameusingmaster_password -
Berikan akses pengguna dengan menelepon
rdsadmin.dbadm_grant. Untuk informasi selengkapnya, lihat rdsadmin.dbadm_grant.db2 "call rdsadmin.dbadm_grant( ?, 'database_name, 'authorization', 'grantee')"
Contoh kasus penggunaan
Prosedur berikut memandu Anda melalui pembuatan peran, memberikan DBADM otorisasi untuk peran, menetapkan peran kepada pengguna, dan memberikan peran ke grup.
-
Hubungi basis data
rdsadmindengan menggunakan nama pengguna master dan kata sandi master untuk instans basis data RDS for Db2 Anda. Dalam contoh berikut, gantimaster_usernamedanmaster_passworddengan informasi Anda sendiri.db2 connect to rdsadmin usermaster_usernameusingmaster_password -
Buat peran yang dipanggil
PROD_ROLEuntuk database yang disebutTESTDB. Untuk informasi selengkapnya, lihat rdsadmin.create_role.db2 "call rdsadmin.create_role( 'TESTDB', 'PROD_ROLE')" -
Tetapkan peran ke pengguna yang dipanggil
PROD_USER.PROD_USEROtorisasi admin diberikan untuk menetapkan peran. Untuk informasi selengkapnya, lihat rdsadmin.grant_role.db2 "call rdsadmin.grant_role( ?, 'TESTDB', 'PROD_ROLE', 'USER PROD_USER', 'Y')" -
(Opsional) Berikan otorisasi atau hak istimewa tambahan. Contoh berikut memberikan
DBADMotorisasi untuk peran bernamaPROD_ROLEuntuk database yang disebut.FUNDPRODUntuk informasi selengkapnya, lihat rdsadmin.dbadm_grant.db2 "call rdsadmin.dbadm_grant( ?, 'FUNDPROD', 'DBADM', 'ROLE PROD_ROLE')" -
Hentikan sesi Anda.
db2 terminate -
Hubungi basis data
TESTDBdengan menggunakan nama pengguna master dan kata sandi master untuk instans basis data RDS for Db2 Anda. Dalam contoh berikut, gantimaster_usernamedanmaster_passworddengan informasi Anda sendiri.db2 connect to TESTDB usermaster_usernameusingmaster_password -
Tambahkan lebih banyak otorisasi ke peran.
db2 "grant connect, implicit_schema on database to role PROD_ROLE" -
Berikan peran
PROD_ROLEkepada sebuah grup.db2 "grant role PROD_ROLE to group PRODGRP"
Pengguna yang termasuk dalam grup sekarang PRODGRP dapat melakukan tindakan seperti menghubungkan ke TESTDB database, membuat tabel, atau membuat skema.
Mencabut otorisasi basis data
Pengguna master, yang memiliki DBADM otorisasi, dapat mencabut, DBADMACCESSCTRL, atau DATAACCESS otorisasi dari peran, pengguna, atau grup.
Untuk mencabut otorisasi basis data
-
Hubungi basis data
rdsadmindengan menggunakan nama pengguna master dan kata sandi master untuk instans basis data RDS for Db2 Anda. Dalam contoh berikut, gantimaster_usernamedanmaster_passworddengan informasi Anda sendiri.db2 connect to rdsadmin usermaster_usernameusingmaster_password -
Cabut akses pengguna dengan menelepon.
rdsadmin.dbadm_revokeLihat informasi yang lebih lengkap di rdsadmin.dbadm_revoke.db2 "call rdsadmin.dbadm_revoke( ?, 'database_name, 'authorization', 'grantee')"