Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Satır Bazı Güvenlik Uygulaması
Netsis Satır Bazı Güvenlik uygulamasıyla ilgili ayrıntılı bilgiye bu dokümandan ulaşılır.
Netsis Satır Bazı Güvenlik sistemi, veri tabanındaki kayıtları satır bazında görüntüleme ve işlem yetkilerinin, "Kullanıcı", "Kullanıcı Grubu" veya "Tüm Kullanıcılar" bazında sınırlandırılabilmesini sağlar.
Satır Bazı Güvenlik uygulaması, Oracle & SQL Server 2016 ve üzeri versiyonların tüm sürümlerinde (Express, Standard, Enterprise) kullanılabilir.
Satır Bazı Güvenlik Sisteminin kullanılabilmesi için Şirket / Şube / Parametre Tanımları ekranından Güvenlik Uygulaması parametresinin "Satır Bazı Güvenlik Sistemi" veya "Hepsi" olarak seçilmesi gerekir.
Image Added
Güvenlik tanımlamaları, "Genel\Kullanıcı İşlemleri\Kayıt\Satır Bazı Güvenlik" menüsünden gerçekleştirilir.
Örneğin; Kullanıcılar il bazında tanımlanan kullanıcı gruplarına bağlıdır. Her kullanıcının yalnızca bağlı olduğu ilde bulunan müşterileri görüntüleme ve işlem yetkisinin tanımlanması istenmektedir.
İzmir için örnek tanımlama aşağıdaki gibi gerçekleştirilir.
Kısıt Kapsamı alanında Grup seçeneği işaretlenerek Grup Kodu rehberinden "IZMIR" kullanıcı grubu seçilir.
Veritabanı Nesnesi, kısıtlamanın yapılacağı tablo nesnesinin belirtiği alandır. Örneğimizde Cari Hesap Kayıtları ile ilgili bir kısıtlama yapılacağı için "TBLCASABIT" nesnesi seçilir.
Image Added
Satır Bazı Güvenlik ile izleme ve işlem olmak üzere iki çeşit kısıtlama yapılabilir.
İzleme Kısıtı: Seçilen kullanıcıların belirlenen kısıt ifadesine uygun kayıtları görüntüleyebilmesi veya görüntüleyememesi için kullanılan kuraldır.
Örn; Kullanıcının sadece İzmir'e iline ait kayıtları görüntülemesi için (@CARI_IL='IZMIR'),
İzmir dışındaki tüm kayıtları görüntüleyebilmesi için (@CARI_IL<>'IZMIR') şeklinde tanımlanabilir.
Örneğimizdeki kısıt tanımlandıktan sonra İzmir grubuna bağlı bir kullanıcı tarafından programa giriş yapıldığında ekranlarda, raporlarda ve rehberlerde cari il bilgisi İzmir olmayan kayıtların gösterilmesine izin verilmeyecektir.
İzleme seçilerek oluşturulan kısıtlar NFS_RLS_PREDICATE_XXX_FILTER (XXX Tablo Adı) adıyla oluşturulan Table Valued Function'a eklenir.
İşlem Kısıtı: Seçilen kullanıcılar için kısıt ifadesinde belirtilen kayıtlarda, kayıt, düzelme ve silme işlemlerinin engellenmesi için kullanılır.
Örneğin; Yetki grubu "İzmir" olan bir kullanıcı tarafından cari il bilgisine "İzmir" dışında bir kayıt girilmek istendiğinde ekran görüntüsündeki uyarı alınacaktır.
Image Added
İşlem kısıtı seçilerek oluşturulan kayıtlar NFS_RLS_PREDICATE_XXX_BLOCK (XXX Tablo Adı) adıyla oluşturulan Table Valued Function'a eklenir.
Hepsi seçilerek oluşturulan kayıtlar ise; NFS_RLS_PREDICATE_XXX_FILTER ve NFS_RLS_PREDICATE_XXX_BLOCK için oluşturulan Table Valued Function'a eklenir.
Not: Kısıt Tipi seçeneği sadece SQL Server veritabanlarında kullanılabilir.
Detaylı Tanım: Detaylı Tanım yöntemi seçildiğinde alttaki bölüme istenen kısıt tanımı serbest bir biçimde yazılabilir. Kısıt tanımlarında saha adının başında @ ifadesi yer almalıdır.
Örn; @CARI_KOD LIKE 'M%' AND @CARI_TIP = 'A' AND (@CARI_IL = 'IZMIR' OR @CARI_IL = 'AYDIN')
Basit Tanım: Basit Tanım yönteminde SQL cümlesinin yazıldığı bölüm yerine saha listesinin bulunduğu bir tablo ekrana gelecektir. Saha Adı alanından tablonun kısıt ifadesinin yazılacağı saha adı seçilir ve ilgili operatör belirtilerek değer alanlarına kısıt değeri yazılır.
Image Added
Birden fazla alana kısıt vermek için sağ klik menüsü "Araya Satır Ekle" seçeneği kullanılabilir.
Tablo Sahaları
"Veritabanı Nesnesi" alanında seçilen tabloya ait sahaların izlenmesi için kullanılan butondur. Böylece, kısıt verilecek tablonun saha isimlerine bu ekrandan bakılabilir.
Satır bazı güvenlik kısıtları kaydedildiğinde Row-Level Security (RLS) tanımları için gereken table valued function nesneleri otomatik olarak oluşturulur ve bu fonksiyonlar oluşturulan policy'lere otomatik eklenir.
Yukarıdaki tanımlara göre function ve policy aşağıdaki gibi oluşur.