Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Cara Membuat Pengguna di Oracle dan Menetapkan hak istimewa

Kami akan memposting informasi tentang akses dan keamanan Pengguna di database oracle. Postingan ini akan memberikan informasi yang baik tentang  Buat Pengguna di Oracle, Hak Istimewa Sistem dan Hak Istimewa Objek Oracle, Cara memberikan hak istimewa kepada pengguna, Cara menampilkan semua hak istimewa dari pengguna di oracle

BUAT pernyataan PENGGUNA

Ini digunakan untuk membuat pengguna (skema).

Otentikasi default untuk pengguna baru adalah database. Pengguna diberi kata sandi, dan kata sandi disimpan dienkripsi dalam database. Ada dua jenis otentikasi lain yang mungkin, yang pertama adalah otentikasi eksternal menggunakan tingkat sistem operasi. Otentikasi eksternal memeriksa kata sandi di tingkat sistem operasi.

Yang lainnya adalah otentikasi Global yang memeriksa kata sandi pengguna di layanan keamanan Oracle atau layanan direktori pihak ketiga lainnya.

Menetapkan Atribut

Kita dapat mengubah atribut pengguna menggunakan ALTER USER. Kita bisa mengubahnya atau menugaskannya

Buat pernyataan pengguna dengan beberapa set atribut akan

CREATE USER SCOTT
IDENTIFIED BY TTOC
DEFAULT TABLESPACE USERS
QUOTA 10M ON USERS
TEMPORARY TABLESPACE temp
QUOTA 5M ON system
PROFILE application_user
PASSWORD EXPIRE

Hak Istimewa Sistem Oracle

Hal ini memungkinkan penerima hibah untuk membuat, mengubah, menjatuhkan dan mengelola objek database. Misalnya, hak istimewa untuk membuat ruang tabel dan menghapus baris tabel apa pun dalam database adalah hak istimewa sistem.

Oracle memiliki lebih dari 100 hak istimewa sistem (ditemukan di tabel SYSTEM_PRIVILEGE_MAP).

Ada 2 hak istimewa dalam database Oracle yang disebut SYSDBA dan SYSOPER. Kedua hak istimewa memungkinkan operasi database seperti STARTUP, SHUTDOWN, OPEN, MOUNT, CADANGAN, ARCHIVELOG dan RECOVER. SYSDBA memungkinkan perintah CREATE DATABASE dan opsi CHANGE CHARACTER SET.

Hak istimewa sistem diberikan oleh administrator Database kepada pengguna menggunakan perintah grant dan dicabut menggunakan perintah revoke

Jika DBA perlu memberikan hak istimewa sistem kepada seseorang sehingga orang lain juga dapat memberikannya, maka itu perlu diberikan dengan opsi admin

GRANT create session TO user;
GRANT create session TO user with admin option;
Revoke create session from user;

Hak istimewa Sistem Pengguna

Saat pengguna dibuat, kami biasanya memberikan hak istimewa sistem di bawah ini

  • BUAT SESI
  • BUAT TABEL
  • BUAT TAMPILAN
  • BUAT URUTAN
  • BUAT PROSEDUR

Dengan ini pengguna dapat mulai membuat tabel dan objek lainnya.

Sample
CREATE USER "TEST" IDENTIFIED BY TEST
DEFAULT TABLESPACE "TOOLS"
TEMPORARY TABLESPACE "TEMP";
grant CREATE TRIGGER to TEST;
grant CREATE PROCEDURE to TEST;
grant CREATE SESSION to TEST;
grant CREATE TYPE to TEST;
grant CREATE TABLE to TEST;
grant CREATE VIEW to TEST;
grant ALTER SESSION to TEST;
grant CREATE SEQUENCE to TEST;
grant CREATE SYNONYM to TEST;
grant CREATE ANY SYNONYM to TEST;
grant UNLIMITED TABLESPACE to TEST;

Hak Istimewa Objek Oracle

Ini diberikan pada objek database (seperti tabel, tampilan, prosedur, dll...)

Pemilik memiliki semua hak istimewa dan pemilik dapat memberikan hak istimewa khusus pada objek

Pemilik dapat memberikan hak istimewa menggunakan perintah di bawah ini

GRANT privileges ON object TO user;

Hak istimewa dapat berupa pilih, sisipkan, perbarui, hapus atau SEMUA

Jika pemilik ingin memberikan hak istimewa kepada semua pengguna

GRANT privileges ON object TO public;

Jika pemilik ingin memberikan hak istimewa kepada pengguna dengan opsi hibah. Pada dasarnya, itu berarti, penerima hibah selanjutnya dapat memberikan hak istimewa ini kepada orang lain

GRANT privileges ON object TO user with grant option;

Demikian pula, kami memiliki perintah mencabut untuk menghapus hak istimewa dari objek

Apa itu Peran oracle?

Role adalah objek database yang digunakan untuk menegakkan hak istimewa. Seorang pengguna dapat diberi peran untuk mengatur hak istimewa pada objek database:

GRANT EBS_ADMIN TO SCOTT;

Ini akan memberikan peran EBS_ADMIN dengan semua hak istimewanya kepada pengguna SCOTT.

Membuat dan Menggunakan Peran

Perintah CREATE ROLE [IDENTIFIED BY ], membuat peran. Menetapkan hak istimewa untuk peran dilakukan dengan menggunakan perintah GRANT. Mencabut hak istimewa dilakukan menggunakan REVOKE FROM ROLE.

Apa perbedaan antara hak istimewa sistem dan objek?

Tabel dan Tampilan Kamus Data

Oracle telah menyediakan tampilan kamus data untuk mendapatkan informasi tentang hak istimewa

Ada tiga kategori tampilan

Memeriksa Tampilan Hak Istimewa

Kueri yang berguna untuk hak istimewa

cara memeriksa hak pengguna di oracle

col role for a16
col pv for a75 hea 'PRIVILEGE OR ROLE'
break on role on type skip 1
define usercheck = 'SH'
select grantee, 'ROL' type, granted_role pv
from dba_role_privs where grantee = '&usercheck' union
select grantee, 'PRV' type, privilege pv
from dba_sys_privs where grantee = '&usercheck' union
select grantee, 'OBJ' type,
max(decode(privilege,'WRITE','WRITE,'))||max(decode(privilege,'READ','READ'))||
max(decode(privilege,'EXECUTE','EXECUTE'))||max(decode
(privilege,'SELECT','SELECT'))||
max(decode(privilege,'DELETE',',DELETE'))||max(decode
(privilege,'UPDATE',',UPDATE'))||
max(decode(privilege,'INSERT',',INSERT'))||' ON '||object_type||'
"'||a.owner||'.'||table_name||'"' pv
from dba_tab_privs a, dba_objects b
where a.owner=b.owner and a.table_name = b.object_name and
a.grantee='&usercheck'
group by a.owner,table_name,object_type,grantee union
select username grantee, '---' type, 'empty user ---' pv from dba_users
where not username in (select distinct grantee from dba_role_privs) and
not username in (select distinct grantee from dba_sys_privs) and
not username in (select distinct grantee from dba_tab_privs) and username like
'%&usercheck%'
group by username
order by grantee, type, pv;

Menentukan hak istimewa sistem yang diberikan kepada pengguna

SELECT GRANTEE, PRIVILEGE FROM DBA_SYS_PRIVS  
WHERE GRANTEE = 'USER';

Memeriksa hak istimewa tabel mana yang Anda berikan kepada pengguna lain.

SELECT * FROM USER_TAB_PRIVS_MADE

Memeriksa hak istimewa tabel mana yang diberikan kepada Anda oleh pengguna lain

SELECT * FROM USER_TAB_PRIVS_RECD;

Memeriksa hak istimewa tingkat kolom mana yang Anda berikan kepada pengguna lain.

SELECT * FROM USER_COL_PRIVS_MADE;


Memeriksa  hak istimewa tingkat kolom mana yang diberikan kepada Anda oleh pengguna lain

SELECT * FROM USER_COL_PRIVS_RECD;


Memeriksa hak istimewa mana yang diberikan kepada peran

SELECT * FROM USER_ROLE_PRIVS;

Cara memberikan dan mencabut hak istimewa  di Oracle

Objects grant/revoke from user  
grant select on dept to public;
revoke select  on dept  from public;
Objects grant/revoke from Role
grant delete on dept to dept_role;
revoke update on dept from dept_role;

Tautan Terkait

Mengelola Hak Istimewa dan Peran Pengguna :Dokumentasi Oracle untuk referensi lebih lanjut
Tampilan Oracle :Panduan lengkap tentang Cara membuat tampilan Oracle, melepaskan tampilan Oracle, mengubah tampilan Oracle, Cara menentukan kueri tampilan yang sudah dibuat
membuat table in oracle :Tabel adalah unit dasar penyimpanan data dalam Oracle Database. kami membahas cara menggunakan perintah Oracle create table untuk membuat tabel dengan kunci asing / kunci utama
Urutan di oracle :Apa itu Urutan di oracle, Deskripsi semua opsi, Cara membuatnya ,Oracle 12c fitur baru urutan , Cara menghapus dan mengubahnya
membuat pengguna di oracle 12c :Cari tahu cara membuat pengguna umum di oracle 12c, membuat pengguna umum dan lokal, membuat peran umum dan peran lokal, dan cara mengelolanya

Semoga Anda menyukai postingan ini. Harap berikan umpan balik

Kursus yang Direkomendasikan

Berikut adalah Kursus Udemy yang bagus untuk Oracle SQL
Oracle-Sql-Step-by-step :Kursus ini mencakup sql dasar, bergabung, Membuat Tabel dan memodifikasi strukturnya, Membuat Tampilan, Union, Union -semua dan banyak hal lainnya . Kursus yang bagus dan kursus yang harus dimiliki untuk pemula SQL
Kursus Sertifikasi Oracle SQL Lengkap :Ini adalah kursus yang bagus untuk siapa saja yang ingin siap kerja untuk keterampilan pengembang SQL. Kursus yang dijelaskan dengan baik
Pengembang Oracle SQL:Esensi, Kiat, dan Trik :Alat pengembang Oracle Sql sedang digunakan oleh banyak pengembang. Kursus ini memberi kita trik dan pelajaran tentang cara menggunakannya secara efektif dan menjadi pengembang sql yang produktif
Oracle SQL Performance Tuning Masterclass 2020 :Penyesuaian kinerja adalah salah satu keterampilan penting dan paling dicari. Ini adalah kursus yang bagus untuk mempelajarinya dan mulai melakukan penyetelan kinerja sql


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL Oracle Menghitung Cluster

  2. Pisahkan varchar menjadi kolom terpisah di Oracle

  3. Pisahkan nilai yang dipisahkan koma ke kolom di Oracle

  4. Oracle:memuat file xml besar?

  5. Kendala UNIK vs pemeriksaan sebelum INSERT