Oracle 11g ile Kullanici islemleri

ORACLE 11g ILE KULLANICI ISLEMLERI

Oracle gelistirilmis güvenlik sistemi ile oracle son olarak 11g ile devam etmektedir. Veritabani islemlerini arayüzlerden yapabilinecegi gibi kendi query’lerimizle de yapabilmekteyiz. Bu makalemizde kullanici islemlerini: yeni kullanici olusturma, kullaniciya yetki verme bilgi güncellemesi islemlerini anlatacagiz.

Oracle kurulumuyla birlikte SYS ve SYSTEM kullanicilari gelir. Bu kullanicilar DBA rolündedir ve tüm islemlere yetkileri vardir. Veritabanini açma kapatma ve bazi yönetim islemleri için gerekli kullanicidirlar. SYS ve SYSTEM kullanicilari veritabanindaki rutin islemler için kullanilmaz.

Yeni kullanici olusturma:

Kullanici adi :NEWUSER,sifre:NEWPASS olan bir kullanici create edelim.

SQL> CREATE USER NEWUSER IDENTIFIED BY NEWPASS;

Kullanici bilgisi degistirme:

Tüm nesne tanimlarinin degistirilmesinde oldugu gibi kullanicilarin da (kullanicilar da bir nesnedir) tanimlarini ALTER komutu ile degistirebiliriz.

Yeni olusturdugumuz NEWUSER kullanicisinin sifresini degistirelim,

SQL> ALTER USER NEWUSER IDENTIFIED BY NEWPASS11;

Kullanici Silme:

Diger nesnelerde oldugu gibi kullanici silmede de DROP komutu kullanilir:

SQL> DROP USER NEWUSER;

Eger kullanicinin semasi altinda nesneler varsa bu nesnelerin de silinmesi için CASCADE ifadesi kullanilmalidir:

SQL> DROP USER NEWUSER CASCADE;

Eger kullanici sistemde bagli durumda ise baglantisini kesene kadar silinemez.

ORACLE YETKILER

Oracle kullanicilari veritabanina baglanma, obje olusturma, degistirme, silme ya da veri sorgulama gibi islemler için yetkilere ihtiyaç duyarlar. Bu yetkiler “System Privilege” ve “Object Privilege” olarak ikiye ayrilmaktadir. System Privilege’lar kullanicinin veritabaninda bazi islemler yapabilmesini saglarken, Object Privilege’lar kullaniciya belirli bir veritabani objesine erisim ve düzenleme hakkini verir. Asagida system ve object privilege atama için örnek komutlar bulunmaktadir.

.

1.SYSTEM PRIVILEGE (SISTEM YETKILERI):

Yeni olusturulan kullanicilarin ilk basta hiçbir yetkisi yoktur.Sisteme baglanabilmesi için CREATE SESSION yetkisinin kullaniciya verilmesi gerekir:

SQL> GRANT CREATE SESSION TO NEWUSER
;

GRANT komutu ile ayni anda birden çok yetki birden çok kullaniciya verilebilir:

SQL> GRANT CREATE SESSION TO NEWUSER1,NEWUSER2;

Verilen Yetki Geri Alinmasi:

Kullanicilara verilen yetkilerin geri alinmasi REVOKE komutu ile gerçeklestirilir:

SQL> REVOKE CREATE TABLE FROM NEWUSER;

Sistem Yetkileri çok fazladir.Hepsinin bilinmesi konusunda da isimlerinden yetkinin ne oldugu konusunda çikarim yapilabilir.

ÖR: CREATE SESSION, CREATE TABLE, CREATE PROCEDURE, CREATE INDEX, DROP INDEX

2.OBJECT PRIVILEGE (NESNE YETKILERI)

Kullanicilarin veri tabanindaki nesneler üzerinde ne tür yetkileri oldugunu tanimlamak için kullanilan yapidir.

Bir kullanici kendi yarattigi tablolar üzerinde tüm yetkilere sahiptir, fakat baska semalardaki tablolar üzerinde islem yapabilmesi için yetki tanimi yapilmasi gerekmektedir.

Örnek olarak SELECT sorgusu yapabilmesi asagidaki gibi yetki tanimi yapilir:

SQL> GRANT SELECT ON PERSONEL TO NEWUSER;

UPDATE yetkisinin sadece iki kolona verilmesi asagidaki gibidir:

SQL> GRANT UPDATE (NAME,LASTNAME) ON PERSONEL TO NEWUSER;
.

Kullaniciya verilen yetkiyi bir baskasina verdirebilen yetki. ALI kullanicisina MALZEMELER tablosu üzerinde bir baska kullaniciya INSERT ve UPDATE yetkilerini verelim fakat baska kullanicilara da bu yetkileri verebilsin.

SQL> GRANT INSERT, UPDATE ON PERSONEL TO ALI
WITH GRANT OPTION;

Eger bir yetkiyi tüm kullanicilara verilmek isteniyorsa bunu public sekilde tanimlanilmasi gerekmeltedir.

SQL> GRANT SELECT,INSERT,UPDATE, ON KULLANICILAR TO PUBLIC;

Verilen yetkiyi geri almak için REVOKE komutunu kullaniyoruz. ALI kullanicisindan INSERT yetkisini alalim:

SQL> REVOKE INSERT ON KULLANICILAR FROM ALI;
Konu ile ilgili ilerleyen zamanlarda makalelerimize devam edecegiz.
.

Iyi çalismalar.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir