Erişim Yönetimi
Erişim yönetimi, kullanıcıların sisteme hangi rollerle gireceğini, menülerin nasıl görüneceğini ve izinlerin (yetkilerin) nasıl tanımlanıp dağıtılacağını kontrol ettiğiniz merkezi alandır. Ana ekran /Administration/Access yapısında olup işlemler Kullanıcılar, Menüler, Roller ve Yetkiler sekmeleri üzerinden yürütülür.
Multi-tenant mimari yapısında, bu ayarlar genel olarak sisteme giriş yapan veya modüllerde işlem yapan kişilerin çerçevesini belirler. Bu nedenle, erişim hakları tanımlanırken sıralı ve hiyerarşik bir işlem yapılmalıdır.
Bu ekranlardaki işlemler genellikle Developer, SystemManager ve gerekli haklara sahip TenantManager seviyesindeki yöneticiler tarafından yapılır.
1. Kullanıcılar
Sisteme giriş izni olan her bireyin tanımlandığı ekrandır. Yeni bir personel için hesap açılması veya mevcut hesapların yönetilmesi bu sekmeden gerçekleştirilir.
Kullanım Amacı ve Kurallar
- Yeni Kullanıcı Tanımlama: Çalışanlara veya yöneticilere sistem hesabı oluşturur.
- Rol Ataması: Kullanıcının sistemdeki temel yetkisini (hangi rol ile giriş yapacağını) belirler. Mümkün olduğunca her kullanıcıya işine uygun minimum yetki (Principle of Least Privilege) verilmelidir.
- Durum Kontrolü: İşten ayrılan ya da geçici olarak hesabının dondurulması gereken kullanıcıların Aktif durumu pasif (kapalı) hale getirilebilir.
Liste ve Filtreleme
- Sütunlar: Kullanıcı Adı, Ad, Soyad, Son Değiştiren, Son Değişiklik Tarihi ve Durum.
- Filtreler: Tarih Aralığı, Durum (Aktif/Pasif) ve Rol filtresi. Belirli bir rolde (örneğin sadece SystemManager) kimlerin olduğunu görmek için "Rol" filtrelemesi kullanılır.
Yeni Kullanıcı Tanımlama Formu (Create / Edit)
| Alan | Açıklama |
|---|---|
| Rol | Kullanıcıya atanacak temel erişim rolü. Liste menüsünden seçilir. (Zorunlu) |
| Kimlik Numarası | Kullanıcının kurumsal kimlik veya resmi numarası. |
| Kullanıcı Adı | Sisteme giriş yaparken kullanılacak hesap adı (Username). Benzersiz olmalıdır. (Zorunlu) |
| Ad / Soyad | Kullanıcının tam adı. |
| E-posta | Kullanıcının iletişim adresi (bildirim ve şifre işlemleri için önem taşır). |
| Telefon | Kullanıcının iletişim numarası (özel format maskesiyle girilir). |
| Aktif | Hesabın geçerli olup olmadığı. İşten ayrılmalarda bu onay işareti kaldırılarak hesap askıya alınır. |
2. Menüler
Uygulamanın sol barında ve üst kısımlarında yer alan yönlendirme bağlantılarını ve ekran hiyerarşisini kontrol eder.
Kullanım Amacı ve Kurallar
- Hiyerarşi Kurma: Ekranları mantıksal gruplar altında toplamak (örneğin "Ayarlar" başlığı altında birkaç ekran açmak).
- Tip Belirleme: Kaydın bir Menu (altındaki başlıkları gruplayan açılır öğe) mu yoksa Screen / Tab (tıklandığında bir işlem yapan sayfa) mi olduğunu ayarlar.
- Yetki Bağlama (Permissions): Bir menünün veya sekmenin sadece yetkisi olan kişilere görünmesini sağlar. Eğer izin atanmazsa, menü herkese görünebilir.
Liste ve Filtreleme
- Sütunlar: Ad, Menü Tipi, Sıra No, Adres, Son Değiştiren.
- Filtreler: Tarih Aralığı, Durum, Dil ve Menü Tipi (Çoklu seçim yapılabilir; sadece sekmeleri veya sadece ekranları filtrelemek mümkündür).
Yeni Menü Tanımlama Formu
| Alan | Açıklama |
|---|---|
| Dil Seçimi | Menü başlığının görüntüleneceği dil. (Çoklu dil sistemine bağlı olarak Türkçe için ayrı, İngilizce için ayrı isim belirlenebilir). |
| Tür (Menu Type) | Menu (Açılır Başlık), Screen (Ana Ekran) veya Tab (Sekme) tiplerinden biri. |
| İkon | Menü başlığında gösterilecek ikonun teknik kodu (özel ikon seti kullanılır). |
| Ad | Menünün/Sekmenin adı. (Zorunlu) |
| Üst Menü | Eğer bu menü başka bir menünün altındaysa, parent (üst) kaydı seçilir. Alt sekmeler (Tab) için zorunludur. |
| Sıra No | Menülerin sıralama dizilişini belirler. Küçük rakamlar üstte çıkar. |
| Adres | Menünün yönlendireceği URL segmenti (örn: /User/Index). Sadece Screen ve Tab tipleri için gereklidir. |
| İzinler (Permissions) | Bu menüyü görmek için hangi izin(ler)e sahip olunması gerektiği çoklu seçim ile belirlenir. |
| Aktif | Menünün tamamen pasife alınıp gizlenmesini kontrol eder. |
3. Roller
Roller, "Developer", "SystemManager", "TenantManager" gibi sistem geneli şablon gruplardır ve altlarında izinler barındırır. Kullanıcılar doğrudan yetkilere değil, rollere bağlanır.
Kullanım Amacı ve Kurallar
- Toplu Yetkilendirme: Aynı haklara sahip olacak kullanıcılara tek tek izin vermek yerine bu yetkiler bir "Rol" çatısı altında toplanır ve rol ataması yapılır.
- Sistem kurulumu aşamasında varsayılan bazı ana roller oluşturulmuştur ancak kurum iş akışına göre yeni roller türetilebilir (Örn: Sadece rapor görebilecek "Manager" rolü gibi).
Liste ve Filtreleme
- Sütunlar: Kod, Ad, Son Değiştiren, Güncelleme Tarihi, Durum.
- Filtreler: Tarih, Durum ve Dil.
Yeni Rol Formu
| Alan | Açıklama |
|---|---|
| Dil Seçimi | Rolün farklı dillerdeki isim karşılığını berlirler. |
| Kod | Rolün benzersiz teknik adı (örn: AssistantManager). |
| Ad | Arayüzlerde ve filtrelerde görünecek Türkçe/İngilizce rol adı. (Zorunlu) |
| Açıklama | Bu rolün ne işe yaradığını, hangi seviyedeki izinlere sahip olduğunu açıklayan kısa bir metin. |
| Aktif | Kullanıma açık olup olmadığı. |
4. Yetkiler
Tüm erişim yönetiminin en atomik (en küçük) parçasıdır. Görüntüleme, ekleme, silme, düzenleme gibi işlemler tekil "Yetki" (İzin) kayıtları olarak tanımlanır ve Rol'lere veya Menü'lere dağıtılır.
Kullanım Amacı ve Kurallar
- Sistem geliştirilirken yeni bir modül veya ekran eklendiğinde, o ekranın teknik fonksiyonlarını "İzin" olarak sisteme tanıtmak gerekir.
- Bu işlem, kod üzerinde bulunan yetki adlarıyla (Controller ve Action) eşleşecek şekilde ayarlanarak, ilgili URL rotasını güvenliğe alır.
Liste ve Filtreleme
- Sütunlar: Ad, Controller, Action, Son Değiştiren, Durum.
- Filtreler: Tarih Aralığı, Durum, Dil.
Yeni Yetki Formu
| Alan | Açıklama |
|---|---|
| Dil Seçimi | İzin açıklamasının dili. |
| Kod | İznin teknik kodu (örn: UserCreate). Genellikle Controller ve Action birleşimiyle verilir. (Zorunlu) |
| Ad | Kullanıcılara/Yöneticilere rol bağlanırken veya menü yetkisi verirken görünen izin adı. |
| Controller Adı | O iznin API katmanındaki denetleyici sınıfı adı. |
| Action Adı | Söz konusu Controller içindeki hedef metod (örn: GetAll, Create vb.). |
| Yol | Karmaşık yapılarda URL yolu bilgisi. |
| Açıklama | İznin kapsamı. |
| Aktif | İznin kullanımda olup olmadığı. |
Tipik Bir Yetki-Erişim Kurulum İş Akışı
Sisteme sıfırdan yeni bir departman veya özel bir erişim hiyerarşisi kurgularken, aşağıdaki yol izlenmelidir:
- Önce varsa yeni Yetkiler (Permissions) sisteme işlenir. (Sistem güncellemeleri otomatik yetkileri getirse de bazen ek ayarlamalar yapılabilir).
- Yeni ekran tasarlandıysa, bu ekranın Menüler (Menus) sekmesinden navigasyon bağlantısı oluşturulur ve içine gerekli Yetki (Permission) eklenir.
- Bu işlemler hangi yetkiye tabi olacaksa, ona uygun Rol (Role) oluşturulur ve Rolün kendi içinden, izinlerin seçimi sağlanır.
- Son adımda, Kullanıcılar (Users) sekmesinden veya doğrudan kullanıcı üzerine gidilerek o kişiye oluşturulan Rol atanır.