Her Kurum Kendi Kalesinde
RiverAI, kurumsal kimlik yönetiminin endüstri standardı olan Keycloak üzerine inşa edildi — ama gerçek fark, bunun üzerine kurduğumuz çoklu-kiracı izolasyon mimarisinde.
Her Kurumun Kendi Kimlik Alanı, Kendi Şeması
RiverAI kimlik yönetimini kurumsal dünyanın standart açık kaynak çözümü olan Keycloak üzerine kurar. Ama asıl fark, Keycloak'ı nasıl kullandığımızda: her kurum, aynı Keycloak kümesinde ayrı bir realm alır — kendi kullanıcıları, kendi rolleri, kendi oturum politikaları, kendi parola kuralları olan bağımsız bir kimlik alanı. İki kurum aynı fiziksel sunucuyu paylaşsa bile, biri diğerinin kullanıcı listesini, rolünü ya da oturum bilgisini asla göremez.
Aynı ayrım veri katmanında da geçerlidir: her kurumun kendi veri şeması vardır. Bu, "tek tabloda tenant_id kolonuyla filtrele" gibi kırılgan bir yaklaşım değildir — bir sorguda unutulan tek bir WHERE koşulu, o modelde başka bir müşterinin verisini sızdırabilir. RiverAI'da izolasyon şema düzeyinde, yani kod hatasına bağlı olmayan bir mimari garanti olarak durur.
Kimlik doğrulama JWT (JSON Web Token) tabanlıdır: kullanıcı giriş yaptığında aldığı token, hangi realm'e, hangi role ve hangi oturuma ait olduğunu taşır; her istekte bu token doğrulanır. Oturum süresi, eşzamanlı oturum sınırı ve token yenileme kuralları da kurum bazında ayrı ayrı yapılandırılabilir — bir kurum 8 saatlik oturum isterken bir başkası 30 dakikada otomatik çıkış isteyebilir.
Kalıcı Denetim İzi
Kritik her işlem — bir sürecin yayına alınması, bir yetkinin değişmesi, bir formun yapısının değiştirilmesi, bir kaydın silinmesi — otomatik olarak denetim izine yazılır. Kaydedilen sadece "ne oldu" değildir: hangi kullanıcı, hangi zaman damgasıyla, hangi kaydı, hangi eski değerden hangi yeni değere değiştirdiği ayrı ayrı tutulur.
Bu iz geri alınamaz ve silinemez — ne uygulama arayüzünden, ne veritabanına doğrudan erişimle. Bir yönetici bile kendi yaptığı bir işlemi denetim kaydından temizleyemez; bu, denetim izinin asıl amacını (kurum içi kötüye kullanımın da izlenebilir olması) korur. Örneğin bir kullanıcının rolü "sadece görüntüleme"den "onaylayabilir"e yükseltildiğinde, bunu kimin, hangi tarihte yaptığı kalıcı olarak durur.
Pratikte bu, bir sorun çıktığında "kim yaptı, ne zaman yaptı, öncesinde ne vardı" sorularına dakikalar içinde, tahmin yürütmeden cevap vermek demektir — bir masraf talebinin neden reddedildiğini, bir sürecin neden farklı davrandığını ya da bir yetkinin ne zaman kimin tarafından verildiğini denetim kaydından adım adım geriye doğru okuyabilirsiniz.
Ekran, Alan ve İşlem Seviyesinde Kontrol
Rol tabanlı erişim kontrolü (RBAC) RiverAI'da tek bir "yönetici/kullanıcı" ayrımından ibaret değildir — roller her kuruma özel tanımlanır ve ekran, alan ve işlem seviyesinde ayrı ayrı uygulanır. Bir kullanıcı bir formu açabilir ama içindeki belirli bir alanı düzenleyemeyebilir; bir sürecin bir adımını tetikleyebilir ama başka bir adımı hiç göremeyebilir.
Yetkilendirme kayıt (satır) düzeyinde de çalışır: bir kullanıcı sadece kendi departmanının açtığı talepleri görebilir, bir bölge müdürü sadece kendi bölgesindeki kayıtlara erişebilir. Form tasarımında da benzer bir ince ayar vardır — bir alanın görünürlüğü doğrudan role bağlanabilir; örneğin bir personel formundaki maaş alanını sadece İK rolündeki kullanıcılar görür, diğer herkes için o alan formda hiç render edilmez.
Oturum güvenliği için iki faktörlü kimlik doğrulama (2FA) desteklenir ve token tabanlı oturumlar merkezi olarak sonlandırılabilir — bir çalışan işten ayrıldığında tüm aktif oturumları anında kapatılır. Destek ekibinin bir kullanıcı adına işlem yapması gerektiği istisnai durumlarda bile bu "sessiz" bir yetki devri değildir: kim adına, kimin, ne zaman işlem yaptığı yine aynı denetim iziyle açıkça loglanır.
- Ayrı Realm, Ayrı Şema: her kurum kendi Keycloak realm'inde ve kendi veritabanı şemasında yaşar — kod hatasına bağlı olmayan, mimari düzeyde bir izolasyon garantisi.
- Alan/Ekran/İşlem RBAC: roller sadece "yönetici/kullanıcı" değil, ekran, alan ve işlem seviyesinde ayrı ayrı tanımlanır; bir kullanıcı bir alanı görüp başka birini hiç göremeyebilir.
- Kayıt Düzeyinde Yetki: bir kullanıcı yalnızca kendi departmanının ya da bölgesinin kayıtlarına erişir — satır bazlı erişim kontrolü formun/sürecin tasarımına gömülüdür.
- Kalıcı Denetim İzi: kim, ne zaman, hangi kaydı hangi değerden hangi değere değiştirdi — bu iz yöneticiler dahil kimse tarafından silinemez veya değiştirilemez.
- 2FA + Merkezi Oturum Kontrolü: iki faktörlü kimlik doğrulama ve token tabanlı oturumların merkezi sonlandırılması — bir çalışan ayrıldığında tüm oturumlar anında kapanır.
Güvenlik Mimarimizi Detaylı Konuşalım
BT ekibinizle bir teknik oturum planlayalım — sorularınızı doğrudan yanıtlayalım.
Demo Talep Et