Kontrak Kuliah -...

Post on 10-Aug-2019

219 views 0 download

transcript

Kontrak Kuliah

Management User danAkses Kontrol

1

Edi Sugiarto, S.Kom, M.Kom

Pendahuluan• MySQL memberikan akses kontrol serta batasan

kewenangan yang ketat terhadap client yangmengakses ke sistem.

• Dua tingkat keamanan dalam operasi basisdata:– Connection

• Verifikasi user dan password• Verifikasi range IP, subnet.

– Privileges• Batasan akses terhadap database, tabel, field.• Batasan akses terhadap operasi insert, update, delete,

dsb.2

Mysql Grant Table

3

Tabel User• Mysql menggunakan kombinasi identifikasi user

dan host sebagai dasar keamanan sistem.• Identifikasi ini terdapat pada tabel user.• Didalam tabel user terdapat 3 field yang

memungkinkan user dapat terhubung kedatabase yakni:– Host– User– Password

4

• Untuk melihat siapa sajakah user yang telahterdaftar pada sistem, dapat menggunakanperintah berikut:

5

• Untuk melihat insert, update, delete, dan eventprivileges pada user dapat menggunakanperintah berikut.

6

MySQL Privileges Level• Berikut ini level-level kewenangan pada MySQL

7

• Melihat level privileges pada user denganperintah GRANT.

9

Tabel db• Tabel db digunakan untuk

mengontrol database yangdigunakan user sertamengendalikan operasi-operasi yang mungkindilakukan user padadatabase tersebut.

10

• Untuk melihat user yang telah dibatasi padatabel db dapat menggunakan perintah berikut:

• Untuk melihat hak akses apa saja pada tabel dbuntuk user deni gunakan perintah sbb:

11

• Jika menggunakan perintah grant

12

• Dari informasi tersebut dapat dilihat bahwa userdeni untuk database deni memiliki privilegesselect dan create.

• Select artinya user deni dapat lihat informasipada database deni.

• Create artinya user deni dapat membuatdatabase ‘deni’ dan tabel pada database deninamun tidak memiliki kewenangan insert,update, delete, atau drop table, serta tidakmemiliki kewenangan drop database.

13

• Perhatikan perintah berikut:

• Kemudian ketika user deni akan menghapusdatabase.

14

tables_priv dan columns_priv• MySQL menyediakan tables_priv dan

columns_priv untuk memungkinkan databaseadministrator membatasi akses pada tabel dankolom tertentu.

15

• Didalam tables_privfield berisi levelprivileges untukkombinasiuser/database/danhost.

• Untuk melihat batasan table privileges padauser “deni” gunakan perintah berikut:

16

• Dari informasi tersebut dapat dilihat bahwa userdeni dibatasi hanya dapat melihat tabel barangdan mahasiswa, hanya user deni masih memilikikewenangan untuk menambah dan mengubahtabel barang.

17

• Lalu kenapa user deni tidak dapat melihatsemua data mahasiswa?

18

• Tabel columns_priv digunakan untuk membatasiakses user terhadap field pada suatu tabel.

• Sebagai contoh untuk melihat batasan terhadapfield untuk user deni, gunakan perintah berikut:

19

• Dari informasi tersebut user deni hanya dibatasiuntuk akses field nim, nama, dan telp pada tabelmahasiswa.

• Struktur tabel mahasiswa dilihat dari root.

20

• Struktur tabel mahasiswa dilihat dari user deni:

21

Ada Pertanyaan ?

Mengelola User Privileges

23

Menambah User• Untuk membuat user baru dapat menggunakan

perintah :

Create User ‘nama_user’@’nama_host’Identified by ‘password’;

• Untuk menghapus user dapat menggunakanperintah :

Drop User ‘nama_user’@’nama_host’; 24

Menambah dan menghapusprivileges

• Untuk menambah kewenangan pada user dapatmenggunakan perintah GRANT.

GRANT level_privileges1, level_privileges2,...ON database.tableTO user

25

• Untuk menghapus kewenangan user gunakanperintah REVOKE.

REVOKE level_privileges, level_privileges,...ON database.tableFROM user;

26

Praktikum 5.1• Sebelum mulai buatlah database baru dengan

nama– master_database1– master_database2

• Pada master_database1 buatlah tabel-tabelberikut serta tambahkan datanya.

27

28

29

• Pada master_database2 buatlah tabel-tabelberikut serta tambahkan datanya.

30

31

• Selanjutnya buatlah user dengan nama ‘anton’dengan password ‘anton’

• Selanjutnya cobalah masuk ke dbms.

32

• User anton belum memiliki hak akses kedatabase manapun.

• Selanjutnya atur user ‘anton’ agar dapat masukke database master_database1 dan melihatsemua tabel

33

• Selanjutnya bisa dilihat user anton dapat melihatseluruh tabel pada master_database1

34

• Selanjutnya atur agar user ‘anton’ dapat melihatdan mengisi tabel anggota pada databasemaster_database2.

• Sehingga jika dilihat hak akses pada user‘anton’ dapat dilihat sbb:

35

• Selanjutnya masukkan satu data pada tabelanggota.

36

• Selanjutnya atur hak akses user ‘anton’ agarhanya dapat mengubah kota anggota.

• Selanjutnya masuk sebagai user ‘anton’ danlakukan perubahan nama anggota.

37

Perubahan nama anggotaditolak karena diluar hakakses user ‘anton’

• Kemudian masuk kembali sebagai user ‘anton’lalu lakukan perubahan kota anggota.

38

Latihan1. Atur user anton agar hanya dapat melihat data

anggota untuk field kode_anggota, nama, dankotanya.

2. Atur kembali user anton agar dapat mengubahnama anggota dan kota pada tabel anggota.

3. Atur user anton agar dapat membuat storedprocedure.

4. Atur user anton agar dapat melihat,menambah, mengubah, serta menghapus datapada tabel buku.

39

5. Masuk dengan user anton, kemudian buatlahprosedur tambah_buku() untuk menambahdata buku.

40

Ada Pertanyaan ?

Daftar Pustaka

• Vikram Vaswani (2010),”MySQL DatabaseUsage & Administration”,McGraw-HillCompanies.

42

Terima kasih

43