YAZILIM GELİŞTİRME
Kurumsal Yazılımda Roller ve Yetkiler Nasıl Tasarlanır?
Kurumsal yazılımda rol ve yetki tasarımı; roller mi yetkiler mi, en az yetki, rol patlaması, veri kapsamı ve görev ayrılığı kararlarını açıklayan bir yöntem rehberi.

İçindekiler
Kurumsal yazılımda en çok gözden kaçan tasarım kararı, ekranların nasıl göründüğü değil; kimin neyi, hangi kayıtlar üzerinde yapabileceğidir. Yetkilendirme sonradan "eklenecek bir özellik" gibi bırakılırsa, her yeni ihtiyaçta kodun içine serpiştirilmiş kontroller birikir ve kimin neye eriştiğini kimse net söyleyemez hale gelir.
İyi bir rol ve yetki tasarımı, bu kararı baştan netleştirir: önce yetkiler (tek tek işlemler) tanımlanır, sonra bu yetkiler rollere toplanır, en sonda roller kullanıcılara verilir. Aşağıda bu modeli kuran ve zamanla ayakta tutan bir yöntem var.
Önce yetkiyi tanımlayın, rolü sonra kurun
Rol ve yetki aynı şey değildir. Yetki, yazılımda yapılabilecek tek bir işlemdir ("teklifi onayla", "faturayı sil"). Rol ise bir görevi yapmak için gereken yetkilerin paketidir ("Satış Yöneticisi"). Tasarıma yetkilerden başlamak, rolleri daha sonra ihtiyaç değiştikçe yeniden paketlemenizi sağlar; doğrudan rollerden başlarsanız her rol kendi içinde sabit bir kutuya dönüşür.
Temel ilke en az yetkidir: her role, görevini yapması için gerekenden fazlası değil, tam gereken kadar yetki verilir. "Ne olur ne olmaz" diye fazladan verilen yetkiler, sonradan kimsenin geri almaya cesaret edemediği risklere dönüşür.
| İşlem | Temsilci | Satış Yöneticisi | Finans | Yönetici |
|---|---|---|---|---|
| Teklif görüntüleme | Görür | Görür | Görür | Görür |
| Teklif oluşturma / düzenleme | Düzenler | Düzenler | Görür | Düzenler |
| Teklif onaylama | — | Onaylar | — | Onaylar |
| Fatura kesme | — | — | Düzenler | Düzenler |
| Kullanıcı ve rol yönetimi | — | — | — | Düzenler |
Yetki yetmez: hangi kayıtları gördüğünü de belirleyin
"Teklifleri düzenleyebilir" demek yarım bir karardır; asıl soru hangi tekliflerdir. Aynı role sahip iki kişi genellikle farklı kayıt kümeleri görmelidir: bir temsilci yalnızca kendi müşterilerini, bir bölge yöneticisi kendi bölgesini, bir yönetici tümünü. Buna veri kapsamı denir ve yetki kadar önemlidir.
- Kendi kayıtları: kullanıcı yalnızca oluşturduğu veya kendisine atanan kayıtlara erişir.
- Takım / bölge kapsamı: kullanıcı bağlı olduğu birimin tüm kayıtlarına erişir.
- Tüm kayıtlar: genellikle yalnızca yönetici veya denetim rollerine verilir.
Rol patlamasını önleyin, görev ayrılığını koruyun
Her özel durum için yeni bir rol açmak kısa vadede kolaydır; ama zamanla aralarındaki farkı kimsenin bilmediği onlarca role yol açar. Buna rol patlaması denir. Çaresi, rolleri gerçek görevler etrafında az sayıda tutmak ve istisnaları ek yetkiyle ya da veri kapsamıyla çözmektir.
- Rolleri unvanlara göre değil, yapılan işlere göre tanımlayın; benzer işleri tek rolde birleştirin.
- Riskli işlemlerde görev ayrılığı uygulayın: bir işlemi başlatan kişi onu tek başına onaylayamasın (ör. harcamayı giren ile onaylayan farklı olsun).
- Rolleri ve kimin hangi role sahip olduğunu belirli aralıklarla gözden geçirin; işten ayrılan veya görev değiştiren kullanıcıların yetkisini zamanında güncelleyin.
- Yeni bir rol açmadan önce mevcut bir rolün yetki veya kapsamıyla çözülüp çözülmediğini sorun.
UYGULAMA ÖZETİ
Rol ve yetki tasarımı kontrol listesi
Model
- Yetkiler tek tek işlemler olarak tanımlandı.
- Roller, yetki paketleri olarak en az yetki ilkesiyle kuruldu.
- Her rol için veri kapsamı (kendi / takım / tümü) belirlendi.
Sürdürülebilirlik
- Rol sayısı gerçek görevlerle sınırlı; gereksiz rol yok.
- Riskli işlemlerde görev ayrılığı tanımlandı.
- Rolleri ve atamaları gözden geçirme düzeni belirlendi.
SSS
Sık sorulan sorular
Rol ile yetki arasındaki fark nedir?
Yetki, yazılımda yapılabilecek tek bir işlemdir ("faturayı onayla" gibi). Rol ise bir görevi yerine getirmek için gereken yetkilerin paketidir ("Finans" gibi). Kullanıcılara tek tek yetki yerine rol atanır; böylece bir görevin yetkileri değiştiğinde tek yerden güncellersiniz.
Herkese geniş yetki verip sonra kısıtlasak olmaz mı?
Önerilmez. En az yetki ilkesi, baştan yalnızca gerekeni vermeyi söyler. Önce geniş verip sonra daralmak pratikte çok zordur; kimse çalışan bir yetkiyi geri almaya istekli olmaz ve fazladan yetkiler kalıcı riske dönüşür.
Küçük bir ekip için bu kadar ayrıntı gerekli mi?
Başlangıçta birkaç rol yeterli olabilir; ama yetkileri ve veri kapsamını ayrı düşünen bir model kurmak küçük ekipte de işe yarar. Ekip ve kayıt sayısı büyüdüğünde modeli bozmadan genişletirsiniz; bu da sonradan yeniden yazma maliyetini düşürür.
BİRİNCİL KAYNAKLAR
Kaynaklar ve İleri Okuma
- Google — Faydalı, güvenilir, insan öncelikli içerik (yeni sekmede açılır)
İçerik kararlarını kullanıcı değeri üzerinden vermek.
YAZAR
Next Medya Strateji ve Teknoloji Ekibi
Özel yazılım ve iş süreçleri
Next Medya ekibi; iş süreçlerini, veri modelini ve yetkilendirmeyi birlikte ele alarak özel yazılım tasarlar. Bu rehberlerdeki senaryolar, karar yöntemini açıklayan temsili örneklerdir.
İLGİLİ HİZMET
Müşteri portalı geliştirmeSONRAKİ OKUMA
İlgili diğer analizler
YAZILIM GELİŞTİRME
Müşteri Portalında Yetki ve Veri Görünürlüğü
Müşteri portalında kullanıcı, kurum, kayıt ve işlem yetkilerini tanımlayın. Rol matrisi, dosya erişimi ve kurumlar arası veri izolasyonu testlerini inceleyin.
Okumaya devam edinYAZILIM GELİŞTİRME
Web Formundan CRM’e Nitelikli Talep Akışı
Web formu ve CRM arasında alan eşleme, mükerrer kayıt, talep sahibi ve satış aşamalarını planlayın. Kesinti ve tekrar durumları için kontrol listesi kullanın.
Okumaya devam edinYetki modelinizi birlikte tasarlayalım
İş süreçlerinizi ve kim kime ne yapabilmeli sorusunu paylaşın; rolleri, yetkileri ve veri kapsamını birlikte kararlaştıralım.
Projenizi görüşelim