Kodbank İndir

! CODEBANK 2012 !

İNDİRMEK&DETAYLI BİLGİ ALMAK İÇİN BURAYI TIKLAYINIZ.

ÖNEMLİ AÇIKLAMA: MUTLAKA OKUYUNUZ!

Gönderen Konu: Kullanıcı Hakları (Grant,Revoke,Role)  (Okunma sayısı 2741 defa)

0 Üye ve 1 Ziyaretçi konuyu incelemekte.

Çevrimdışı Fatih

  • Emekli Yönetici
  • *****
  • İleti: 2.217
  • Rep: +43/-10
  • Cinsiyet: Bay
    • Delphi Dünyası
Kullanıcı Hakları (Grant,Revoke,Role)
« : 09 Ekim 2005 12:47:59 »
Kullanıcı Hakları (Grant,Revoke,Role)

Kullanıcı tanımladıktan sonra mutlaka o kullanıcıya haklarını da vermelisiniz.  Aksi taktirde oluşturduğunuz  kullanıcıyla login olsanız bile kayıtlar üzerinde hiçbir işlem yapamazsınız.
Kullanıcıya hak vermek için Grant verilen hakkı geri almak için Revoke deyimlerini kullanıyoruz.

Kullanıcıya Verebileceğiniz Haklar
Insert > Kayıt Ekleme Hakkı
Update > Kayıtları Güncelleme Hakkı
Delete > Kayıtları Silme Hakkı
Select > Kayıtları Seçme Hakkı
Execute > Stored Procedureleri Çalıştırma Hakkı
References > Primary/Foreign Key gibi Özelliklere Bakabilme Hakkı.
All > Yukarıdaki Hakların Tümünü Tek Seferde Vermenizi Sağlar

DelphiDunyasi adında bir kullanıcı oluşturduğunuzu Varsayıyorum.
Grant Bir Kullanıcı yada Role belirli haklar verebilmenizi sağlar
Procedureyi çalıştırabilme hakkı vermek için
Kod: [Seç]
GRANT EXECUTE ON PROCEDURE BenimSP to DelphiDunyasi;

Kod: [Seç]
GRANT DELETE, INSERT, SELECT, UPDATE, REFERENCES ON BenimTablo TO DelphiDunyasi;
Kod: [Seç]
GRANT ALL ON BenimTablo TO DelphiDunyasi;

Bir kullanıcıya hem yetki vermek hemde kendisine verilen yetkileri başkasına da verebilme yetkisi verebilmek istersek cümlenin sonuna
Kod: [Seç]
WITH GRANT OPTION cümlesini eklememiz lazım. kullanıcı başka bir kullanıcıya sadece sahip olduğu hakları verebilir.
Kod: [Seç]
GRANT Select ON BenimTablo TO DelphiDunyasi WITH GRANT OPTION;
Burada DelphiDunyasi kullanıcısı başka bir kullanıcıya sadece BenimTablo tablosu üzerinde select hakkı verebilir.

Revoke Grant ile verdiğiniz hakları geri alır. Grant yerine Revoke To Yerine From deyimlerini kullanmalısınız.

DelphiDunyasi kullanıcısından tüm hakları almak için
Kod: [Seç]
REVOKE ALL ON BenimTablo FROM DelphiDunyasi;

Kod: [Seç]
Revoke insert on BenimTablo from DelphiDunyasi;

WITH GRANT OPTION yetkisini kullanıcıdan almak için

Kod: [Seç]
REVOKE GRANT OPTION FOR INSERT ON BenimTablo FROM DelphiDunyasi;

ROLE

Role ye yukarıdaki yetkileri verebilir. Role’ye verilen yetkileride oluşturacağınız kullanıcıya verebilirsiniz.
10 kullanıcı oluşturup bu kullanıcılara bütün tablolar üzerinde tek tek seçme yetkisi vermek baya uzun bir işlem olacaktır. Bunun yerine tablolarda seçme yetkisini Role’ye atayarak oluşturacağınız her kullanıcıya bu role’yi atamanız yeterli.
kullanıcıya Role atamadan önce Rola oluşturmamız gerekiyor.
Role oluşturmak için
Kod: [Seç]
create role RoleAdi;
Role silmek için
Kod: [Seç]
Drop role RoleAdi; Örneğin
Kod: [Seç]
create role BenimRole; komutuyla bir role oluşturduk. Şimdi bu role’yi tıpkı kullanıcıları yetkilendirdiğimiz gibi yetkilendirelim.

Kod: [Seç]
grant all on BenimTablo to BenimRole;şimdi oluşturmuş olduğumuz Role Tabloma erişip Tüm işlemleri yapacak yetkiye sahip. Yeni bir kullanıcı oluşturduğumuzda bu roleyi kullanıcıya atamamız kullanıcıların kayıtlara müdahale edebilmesi için  yeterli olacaktır.  Aşağıdaki şekilde kullanıcılara role’yi atıyoruz.
Kod: [Seç]
grant BenimRole to DelphiDunyasi;
Kod: [Seç]
grant BenimRole to DelphiDunyasi2;
Bu komutları Query vb. bileşenlerle çalıştırabilirsiniz. Ben IBScript bileşenini tercih ediyorum.
Malulen emekli programcı / yazar. Bildiklerini unutmakta olduğundan size cevap veremez.

Çevrimdışı taha

  • Kıdemli Üye
  • *****
  • İleti: 63
  • Rep: +0/-0
  • Cinsiyet: Bay
Ynt: Kullanıcı Hakları (Grant,Revoke,Role)
« Yanıtla #1 : 16 Mayıs 2006 17:33:26 »
Bilgi için çok teşekkürler.

Ben IBExpert kullanıyorum. Yeni kullanıcı ekliyorum ama bu hakları nereden ekleyeceğim bir türlü bulmadım. Grant diye sekme var ama Personal sürüm olduğu için aktif değil(sanırım burdan oluyo).

Birde delphiden yapmamızı tavsiye etmişsiniz acaba bir örnek var mı yada nasıl yapabiliriz?

Şimdiden teşekkürler.

Verdiğin bütün bilgiler içinde tekrar teşekkürler.
"Bilgisizlerin geçtikleri mevkiye yaptığı fenalığı, yüzlerce aslan bir araya gelse yapamaz" MEVLANA

Çevrimdışı Fatih

  • Emekli Yönetici
  • *****
  • İleti: 2.217
  • Rep: +43/-10
  • Cinsiyet: Bay
    • Delphi Dünyası
Ynt: Kullanıcı Hakları (Grant,Revoke,Role)
« Yanıtla #2 : 16 Mayıs 2006 20:41:04 »
 :arrow:IBSecurityService [Kullanıcı Tanımlama]

Şuan IBExpert kurulu olmadığı için bakamıyorum
Malulen emekli programcı / yazar. Bildiklerini unutmakta olduğundan size cevap veremez.

Çevrimdışı taha

  • Kıdemli Üye
  • *****
  • İleti: 63
  • Rep: +0/-0
  • Cinsiyet: Bay
Ynt: Kullanıcı Hakları (Grant,Revoke,Role)
« Yanıtla #3 : 17 Mayıs 2006 07:26:17 »
Fatih kardeş verdiğin bilgiler için teşekkür ediyorum. Verdiğin linki ben incelemiştim (ayrıca DelphiDunyasindaki senin bütün linklerini inceledim  8)) ama orda da sadece IBexpertteki kullanıcı oluşturmayla aynı işi yapıyor. Benim istediğim senin yukarıda anlatığın (select,delete,...vb.) hakları delphide nasıl yapabiliriz onu sormuştum. Yani delphide (ben delphi 7 kullanıyorum ) yukarıdaki scriptleri nereye ve nasıl yazıp çalıştırıyoruz demek istemiştim ::). Ama yine de teşekkürler...
"Bilgisizlerin geçtikleri mevkiye yaptığı fenalığı, yüzlerce aslan bir araya gelse yapamaz" MEVLANA

Çevrimdışı Fatih

  • Emekli Yönetici
  • *****
  • İleti: 2.217
  • Rep: +43/-10
  • Cinsiyet: Bay
    • Delphi Dünyası
Ynt: Kullanıcı Hakları (Grant,Revoke,Role)
« Yanıtla #4 : 17 Mayıs 2006 07:47:32 »
Bunun için apilerden faydaklaman gerekiyor. fırsat bulduğum zaman makale olarak siteye eklemeye çalışırım.
Malulen emekli programcı / yazar. Bildiklerini unutmakta olduğundan size cevap veremez.