Erişim izinleri sistemi(Rights of Access)
Erişim izinleri sistemi, kullanıcı veya faaliyet türü görevlerine uygun izinlerin tanımlamasını yapmaktadır. İzinler yapısı somut uygulamalı çözümler ile belirlenmektedir.

Buna ek olarak, veritabanında var olan nesneler(kart listesi, evraklar, kayıt tablolar vb…) için ayrı alanlar ve kayıtlara erişim izni tanımlanabilir. Örneğin, belirli bir cari hesabın evrakları üzerinde çalışabilir ve aynı zamanda diğer cari hesapların benzer evraklarına erişimi olmayacak şekilde ayarlanabilir.

Roller


Programda erişim izinlerin ayarlaması Roller bölümünde yapılmaktadır. Detaylı bilgiler…

Etkileşimli(Interactive) ve Temel İzinler


1C:İşletme sistemi tarafından desteklenen izinler iki gruba ayrılır: Etkileşimli(Interactive) ve Temel izinler. Temel izinler, sistem veri elemanlarını ya da tüm sistem üzerinde yapılan işlemleri tanımlar. Bu izinler verilere erişim yöntemine bağlı olmadan her zaman kontrol yaparlar. Kullanıcı tarafından gerçekleştirilebilen işlemler Etkileşimli(Interactive) izinler tarafından tanımlanır. Bu izinler sadece etkileşimli olarak(Interactive) yapılabilen işlemler sırasında standart yöntem ile kontrol edilir. İstemci-sunucu biçiminde çalışıldığında temel izinlerin kontrolü sunucuda yapılmaktadır.

Temel ve etkileşimli(Interactive) izinler birbirine bağlıdır. Örneğin, Silme temel izni ile uyumlu olan iki etkileşimli(Interactive) izni mevcuttur: Etkileşimli(Interactive) silme (Direkt kaldırma) ve Seçilenleri Etkileşimli(Interactive) silme (Silmek için işaretlenenleri Sil). Kullanıcıya Silme izni verilmediyse, etkileşimli(Interactive) “silme” (direkt kaldırma) işlemini yapamayacaktır. Aynı zamanda Seçilenlerin Etkileşimli(Interactive) silme izni verildiyse, Silme iznin de verildiği demektir.

Bunun dışında, temel izinler birbirine bağlı olabilirler. Sonuç olarak, sistem tarafından otomatik olarak izlenen karmaşık bağlantılar zincirlemesi oluşmaktadır. Kullanıcı, herhangi bir izni kaldırdığı zaman, bu izne bağlı olan izinler sistem tarafından otomatik olarak kaldırılmaktadır. Veya tam tersi, erişim izni verildiği zaman, bu iznin bağlı olduğu izinler sistem tarafından otomatik olarak verilmektedir.

Kullanıcının Seçilenleri etkileşimli(Interactive) silme iznin olması için, Düzeltme etkileşimli(Interactive) iznin de olması gerekiyor. Aynı zamanda, Düzeltme izni için Görüntüleme etkileşimli(Interactive) iznin olması gerekiyor.



Seçilenleri etkileşimli(Interactive) silme izni Silme izni gerektirir. Etkileşimli (Interactive) Düzeltme izni Değiştirme temel izni gerektirir. Etkileşimli(Interactive) Görünüm izni Okuma temel izni gerektirir.
Bunun dışında Değiştirme ve Silme temel izinlerin aktif olabilmesi için Okuma temel izni gerekir.

Kayıtlar ve alanlar seviyesinde verilere erişim sınırı

Veritabanındaki nesneler(kart listeleri, evraklar vb…) üzerinde okuma, ekleme, değiştirme ve silme işlemleri yapılmaktadır.
• Okuma: kayıtların veya kayıt listelerin veritabanından alınması;
• Ekleme: mevcut kayıtları değiştirmeden yeni kayıt eklenmesi;
• Değiştirme: mevcut kayıtların değiştirilmesi;
• Silme: kaydın silinmesi.

Rolleri ayarlama sürecinde yukarıdaki işlemler için ek ayarlar tanımlanabilir. Veritabanındaki bir nesne için erişim kısıtlaması “Evet” (True) değerini alıyorsa, nesne üzerinde değişiklik veya herhangi bir işlem yapılabilir. Veritabanındaki tablolar (kayıt tablolar) için de benzer şartlar uygulanabilir.





Tablo nesneleri ve bilgi kayıt tablolardaki farklı alanlara göre değişik erişim kısıtlamaları tanımlanabilir. Dolayısıyla, sadece veritabanı kayıtları için değil, veritabanın herhangi bir alanı için de kısıtlama tanımlanabilir.



Verilere erişim kısıtlaması, sorgu dilinin alt kümesinde dilinde ifade edilen programlama kodu şartıdır. Bu şart işlem yapılan her tablo kaydı için kullanılmaktadır. Eğer durum “Evet” (True) değerini alıyorsa işlem yapılır, değilse yapılmaz. Erişim kısıtlamanın şartları kullanıcı önişlemci yardımıyla netleştirilebilir (#IF <şart>,#THEN… ). Kart listesini görüntülerken veya raporu oluştururken sadece erişim izni açık olan verileri görüntülemek mümkündür.

Birikim kayıt tabloları, muhasebe hesapları ve şart hesaplamaları için ölçümlerin değerlerine göre(Muhasebe kayıt tabloları için bilanço ölçümleri) erişimi sınırlandırabilir. Şartlar, nesne verileri ve bilgi kayıt tabloları için herhangi bir alana göre erişimi sınırlandırabilir.
Kısıtlama şartlarını, manüel olarak ya da verilere erişim kısıtlama tasarımcısı ile oluşturabiliriz.


Seans Parametreleri

Seans parametreleri uygulama çözümünde nesne şeklindedir. Bu nesneler geçerli seans için verilere erişimi kısıtlamasında kullanımı amaçlanmıştır (değişik işlemlerde de kullanılabilir). Parametrelerin değerleri 1C:İşletme programının aynı seans sırasında kaydedilmektedir. Kayıt ve alanların seviyesindeki verilere erişim sınırlıyken parametrelerin kullanımı verilere erişimi hızlandırır. Detaylı bilgiler…

İzinleri kontrol etmeden sunucu üzerinde çalışma


Ayrıcalıklı modüller

Ayrıcalıklı modülleri tanımlama imkânı vardır. Bu modüllere, kullanıcının erişim izni olmayan verileri kullanan işlemler aktarılabilir.
Örneğin, kullanıcının evrak oluşturma izni var, fakat kaydetme sırasında hareket yaptığı kayıt tablosuna erişim izni yoktur. Bu durumda, evrakın kaydetme prosedürü, ayrıcalıklı modüle aktarabiliriz. Ayrıcalıklı modül erişim izni kontrol etmeden sunucuda yapılmaktadır. Sonuç olarak kullanıcı, kayıt tablosuna erişimi olmadan evrakı kaydedebilir.

Ayrıcalıklı program kodu çalıştırma biçimi
Ayrıcalıklı biçim çalışma biçimine benzerdir. Açıp kapatma işlemi kaynak kodu araçları ile yapılabilir. Bunun için global bağlam menüsünde SetPrivelegedMode() prosedürü, ve PrivelegedMode() fonksiyonu mevcuttur. PrivelegedMode() fonksiyonu ayrıcalıklı biçiminin açık olup olmadığını kontrol eder.
Ayrıcalıklı biçim kullanıldığında, verilere erişim kısıtlamaları olmadığından, işlemin daha hızlı olmasını ve kullanıcının erişim izni olmayan veriler üzerinde işlem yapma imkânını sağlayacaktır.
Ayrıcalıklı biçim, erişim izinlerinin kontrolünü mecburi yada işlemi hızlandırmak amacıyla devre dışı bırakıldığında kullanılması tavsiye edilir. Kullanıcı, tanımlanan izinleri ihlal etmeden de ayrıcalıklı biçimi kullanabilir.


Ek linkler: