ABAC Nedir?

İngilizce: ABAC (Attribute-Based Access Control)

ABAC, erişim kararını rol yerine kullanıcı, kaynak, işlem ve ortam niteliklerini birlikte değerlendiren yetkilendirme modelidir.

ABAC Nedir?

ABAC (Attribute-Based Access Control), bir kullanıcının neye erişebileceğini yalnızca rol adıyla değil, çok sayıda nitelikle belirleyen yetkilendirme modelidir. Kararda kullanıcının departmanı, kaynağın gizlilik seviyesi, yapılmak istenen işlem, cihaz güvenliği, saat veya lokasyon gibi bilgiler birlikte değerlendirilebilir.

Örneğin “Finans departmanındaki kullanıcılar, şirket ağından bağlanıyorsa onaylanmış faturaları görüntüleyebilir” kuralı ABAC mantığına uygundur. Burada rol tek başına yeterli değildir; kaynak durumu ve bağlantı koşulu da politikanın parçasıdır.

Nasıl Çalışır?

ABAC mimarisinde uygulama erişim isteğini bir politika karar noktasına gönderir. Politika motoru kullanıcı, kaynak ve ortam niteliklerini okur; tanımlı kurallara göre izin veya ret kararı verir. Open Policy Agent gibi araçlar bu kararı uygulamalardan ayrıştırmak için kullanılabilir.

RBAC’ten Farkı

RBAC daha basittir: kullanıcıya rol atanır, role izin verilir. ABAC ise daha esnektir fakat politika tasarımı ve test yükü daha fazladır. Özellikle çok müşterili SaaS sistemleri, hassas belge yönetimi, sağlık verisi veya şube/ülke bazlı yetki ayrımı olan kurumsal uygulamalarda işe yarar.

ABAC, Zero Trust yaklaşımıyla iyi örtüşür çünkü her istekte bağlam yeniden değerlendirilir. Yine de denetlenebilir log, politika versiyonlama ve açık hata mesajları olmadan yönetimi zorlaşabilir.