Özel Yazılım Rehberi
Yönetim Paneli Tasarımında Rol ve Yetki Modeli
Yönetim panelinde rol, işlem, kayıt kapsamı, durum ve onay yetkileri nasıl modellenir? RBAC temelli güvenli panel tasarım rehberi.
Karar Özeti
Yetki modeli yalnız menü gizlemek değildir. Sunucu, her istekte kullanıcının hangi kaynak üzerinde hangi işlemi hangi kapsam ve durumda yapabildiğini doğrulamalıdır. Arayüz bu kuralı anlaşılır hale getirir; güvenlik sınırını tek başına oluşturmaz.
Başlangıç için dört eksenli bir matris kullanın: kaynak, işlem, kapsam ve durum. Örneğin satış personeli kendi müşterisindeki taslak teklifi düzenleyebilir; onaylanmış siparişi silemez. Admin tüm kayıtları görebilir fakat kritik fiyat değişikliği ikinci onay gerektirebilir.
Karar Modeli
Uygulamada belirleyici noktalar
Rol adından önce işlem envanteri çıkarın
Admin, editör ve kullanıcı gibi genel adlar hızla belirsizleşir. Müşteri görme, fiyat değiştirme, sipariş onaylama, dışa aktarma ve kullanıcı yetkilendirme gibi gerçek işlemleri listeleyin. Roller bu izinlerin anlamlı paketleri olarak oluşturulmalıdır.
Kayıt kapsamını açıkça modelleyin
Bir kullanıcının işlemi yapabilmesi, tüm kayıtları görebileceği anlamına gelmez. Kendi kayıtları, bağlı müşteri, ekip, şube veya ülke gibi kapsam kuralları izin kontrolüne dahil edilmelidir. Sorgu filtresi sunucu tarafında uygulanmalıdır.
Duruma bağlı yetki kurun
Taslak kayıtta düzenleme serbestken onaylanan veya faturalanan kayıtta değişiklik engellenebilir. Durum geçişlerini kimlerin başlatacağı, geri alacağı ve onaylayacağı yazılı olmalıdır. Böylece işlem geçmişi bozulmaz.
Kritik işlemlerde ek güvence kullanın
Toplu silme, fiyat güncelleme, veri dışa aktarma ve yetki verme işlemleri tekrar kimlik doğrulama, ikinci onay veya neden alanı gerektirebilir. Denetim logu eski değer, yeni değer, kullanıcı ve zaman bilgisini taşımalıdır.
Yetki testini otomatikleştirin
Her rol için izin verilen ve reddedilmesi gereken senaryolar yazın. Yalnız başarılı yolun test edilmesi yetki sızıntısını kaçırır. API testleri doğrudan yetkisiz kaynak kimliği ve durum geçişi denemelidir.
Doğrulanabilir Deneyim
Gerçek proje kanıtı: satışçı, bayi ve admin ayrımı
B2B sipariş sistemi vakasında satış personeli teklif oluşturma akışını, müşteri onay veya ret işlemini, admin ise sipariş takibini yönetiyor. Her rol için ayrı panel ve işlem yetkisi tanımlanmış durumda.
Vaka, rol modelinin menü seviyesinde kalmadığını; teklifin durumuna ve kullanıcı sorumluluğuna göre işlem akışına bağlandığını gösteriyor. Gizli müşteri verisi veya doğrulanmamış ticari metrik yayımlanmıyor.
Uygulama kontrol listesi
- Kaynak ve işlemleri rol adlarından bağımsız biçimde envantere alın.
- Her izin için kayıt kapsamını ve geçerli işlem durumunu tanımlayın.
- Varsayılan reddetme ilkesini hem API hem arka plan görevlerinde uygulayın.
- Toplu ve geri döndürülemez işlemlere onay ve denetim kaydı ekleyin.
- Rol değişikliğinde açık oturum ve önbellek davranışını test edin.
- Her rol için olumlu ve olumsuz yetki testlerini otomasyon kapsamına alın.
Sık sorulan sorular
RBAC ile kullanıcı bazlı özel izin birlikte kullanılabilir mi?
Kullanılabilir; ancak istisnalar çoğaldığında yönetim zorlaşır. Temel izinler rolle verilmeli, geçici veya dar kapsamlı istisnalar süre, gerekçe ve denetim kaydıyla tutulmalıdır.
Menüyü gizlemek neden yeterli değildir?
Kullanıcı API adresini doğrudan çağırabilir veya başka kaydın kimliğini deneyebilir. Yetki kontrolü her sunucu isteğinde kaynak, işlem, kapsam ve durum üzerinden yeniden yapılmalıdır.
Super admin hesabı nasıl korunmalı?
Günlük işlemlerde kullanılmamalı; çok faktörlü kimlik doğrulama, sınırlı kullanıcı sayısı, ayrı denetim kaydı ve gerektiğinde ek onay uygulanmalıdır.
Yetki değişikliği ne zaman etkili olmalı?
Risk düzeyine göre hemen etkili olması tercih edilir. Aktif oturumlar, erişim tokenları ve önbelleğe alınan izinler iptal veya yenileme politikasıyla birlikte ele alınmalıdır.
İlgili hizmet, vaka ve rehberler
Kısa cevap
Kimler için?
Çok rollü CRM, ERP, B2B portal veya operasyon paneli geliştiren ekipler
Temel karar
İzni kaynak, işlem, kapsam ve kayıt durumu üzerinden sunucuda doğrulamak
İlk ölçüm
Yetkisiz istek testi, kritik işlem log kapsamı ve rol değişikliği süresi
Ana risk
Butonu gizlemeyi erişim kontrolü sanmak