Soal praktikum moodul 1;
1.
Buatlah user dengan nama zyro_05937
dengan default table space bd.
2.
Berikan user tsb privilege untuk login
3.
Buatlah role dengan nama
zyro_(NAMA ROLE) dan isi role dgn previllege create table.
4.
Buat 2 tabel
dengan user tsb dan implementasikan penggunaan pk dan fk serta jelaskan maksud dari pembuatan constraint tsb.
KEGUNAAN PRIMARY KEY DAN FOREIGN
KEY
Pengertian Primary Key & Foreign Key
a. “Primary Key” adalah field kunci / utama dari suatu tabel
yang menunjukkan bahwa field yang menjadi kunci tersebut tidak bisa diisi
dengan data yang sama, / dengan kata lain Primary key menjadikan tiap record
memiliki identitas sendiri-sendiri yang membedakan satu sama lainnya (unik).
Primary Key berguna pada saat menampilkan record hasil
pencarian (searching), pengurutan (sorting), dan berbagai operasi query
lainnya. Dengan memilih rimary key, proses pencarian, pengurutan dan proses
penampilan data dan lainnya berlangsung lebih cepat.
“Foreign key” adalah satu attribute yang melengkapi satu
relationship yang menunjukan ke induknya.
b. Satu tabel tidak boleh memiliki lebih dari satu primary
key, karena primary key merupakan variable data yang menjadi identitas utama
dari tabel tersebut.
SISTEM KEAMANAN AKSES
DATA PADA DATABASE ORACLE
SISTEM KEAMANAN AKSES DATA PADA
DATABASE ORACLE
1. Perkembangan Sistem
Keamanan Akses Data
Sebelum membahas Virtual Private
Database lebih jauh, penulis akan membahas sedikit beberapa sistem keamanan
akses data yang sudah ada sebelumnya dan banyak dipakai para
administrator.
Pada bab pendahuluan diatas
telah sedikit dibahas suatu sistem pengaturan hak akses user terhadap
objek-objek database di Oracle yang masih bersifat tradisional
yaitu privilege dan role.
Secara umum ada beberapa sistem
pengaturan hak akses user di database Oracle yaitu :
1. Grant
security (system privilege dan object privilege)
Oracle grant security terdiri
dari system privilege dan object privilege.System privilege memberikan hak
akses kepada user untuk mengatur dan mengelola sistem database Oracle. Terdapat
sekitar 80 system privilege yang ada di Oracle.
contoh :
sql> grant create any cluster
to customer_role;
sql> grant select any table
to fred;
sql> grant create any table
to public;
sql> grant create tablespace
to dba_role;
Object
privilege merupakan hak akses yang diberikan kepada user untuk
melakukan beberapa operasi pada beberapa objek database seperti; tabel, view,
sequence, atau procedure.
contoh :
sql> grant select, insert on
customer to fred, mary, joe;
sql> grant insert on
order_table to update_role;
sql> grant all on customer to
fred;
sql> grant select on
customer_view to mary;
2. Role-based
grant security
Role-based grant security pada
dasarnya adalah kumpulan dari beberapa privilege yang dikumpulkan menjadi satu.
Ini merupakan salah satu cara untuk memudahkan dalam pemberian hak akses kepada
user.
contoh :
sql> create role
system_admin;
sql> grant select, update on
customer to system_admin;
sql> grant select on
item_table to system_admin;
sql> grant system_admin to
user 1, user 2, user 3;
Secara umum penerapan role dan
privilege di Oracle dapat dilihat pada gambar dibawah ini :
Gambar 1. Penerapan privilege
dan role
1. Grant
execute security
Oracle menyediakan kemampuan
untuk membuat hak akses dengan menciptakan suatu program tertentu melalui store
procedure dan bahasa PL/SQL. Secara spesifik sdministrator dapat berkreasi
dalam membuat hak akses user.
Secara keseluruhan grant execute
security memiliki cukup perbedaan dengan traditional grant security yang telah
dibahas sebelumnya.
2. Virtual
Private Database (VPD)
Virtual Private Database (VPD)
pertama kali diperkenalkan pada Oracle8i yang kemudian dilanjutkan pada Oracle
versi 9i dan 10g. Sistem keamanan akses data ini merupakan standar baru dalam
sistem keamanan database yang dibuat kedalam database server.
Untuk lebih jelasnya kita akan
bahas VPD pada subbab berikut ini dan bab-bab selanjutnya.
2. Konsep Virtual Private
Database (VPD)
Virtual Private Database (VPD)
atau row level security (RLS) atau biasa disebut
juga fine-grained access control (FGAC) merupakan teknologi yang
dapat membatasi akses terhadap baris-baris (row) data dari beberapa objek
database yaitu tabel dan view secara run-time.
Virtual Private Database
memfasilitasi database untuk memodifikasi query berdasarkan security policy
yang terdapat pada paket policy. Sebuah security policy sangat berkaitan dengan
tabel atau view yang dituju.
Ketika
user secara langsung atau tidak memasuki tabel atau view yang berkaitan dengan
VPD security policy, server secara dinamis memodifikasi SQL statement user.
Modifikasi ini berdasarkan pada suatu kondisi yang diberikan oleh suatu fungsi
yang mengimplementasi kan security policy. Setiap user diberikan
security policy yang berbeda terhadap tabel dan view yang di-query.
Gambar 2. Pemahaman sederhana
Virtual Private Database
Dari gambar 2 diatas, terlihat
bahwa setiap user akan memiliki hak akses yang berbeda terhadap suatu sumber
data (tabel atau view), walaupun user-user tersebut melakukan perintah query
yang sama, tetapi yang ditampilkan akan berbeda-beda untuk setiap user.
Adapun akses data dengan VPD
melalui tahapan-tahapan sebagai berikut:
1. User
mengirimkan SQL ke database server.
2. Tabel
yang dituju akan memberikan pendefinisian security policy.
3. Security
policy akan mengembalikan sebuah predicate (dalam bentuk
pernyataan where, disesuaikan dengan user yang mengakses).
4. Pernyataan
SQL akan termodifikasi berdasarkan security policy.
5. Data
yang telah melalui security policy akan kembali ke user (user akan disajikan
data yang sesuai dengan hak aksesnya).
Untuk lebih jelasnya dapat
dilihat pada gambar dibawah ini :
Gambar 3. Gambaran Umum Virtual
Private Database
Penggunaan security policy
menjamin otoritas akses pada baris tabel yang spesifik. Aturan akses digunakan
tanpa menghiraukan bagaimana tabel terakses, melalui aplikasi atau secara
langsung melalui query tool, seperti SQL*Plus. Yang jelas user hanya melihat
baris yang telah terotorisasi.