it-swarm-tr.com

RBAC ve DAC / ACL arasındaki fark nedir?

Her birinin faydaları nelerdir ve ne zaman birini diğerinden seçmeliyim? Bunların birleştirilmesi gereken durumlar var mı?

Ortak kullanım örnekleri var mı?

Peki ya MAC, bu nereye uyuyor?

64
AviD

RBAC (Rol tabanlı erişim kontrolü), bir iş rolleri listesi tanımlamaya ve sistemdeki her kullanıcıyı bir veya daha fazla role eklemeye dayanır. Daha sonra her bir rol için izinler ve ayrıcalıklar verilir ve kullanıcılar roldeki üyelikleri yoluyla alır (bir gruba hemen hemen eşdeğerdir). Uygulamalar genellikle kullanıcıyı belirli bir role üyelik için test eder ve buna dayalı olarak erişim izni verir veya vermez.
İsteğe Bağlı Erişim Kontrolü (DAC), bir kullanıcının veya yöneticinin belirli bir kaynakta (örneğin dosya, kayıt defteri anahtarı, veritabanı tablosu, OS nesnesi, vb.) Bir Erişim Kontrol Listesi (ACL) tanımlamasına izin verir, bu Liste girişleri içerecektir (ACE) kaynağa erişimi olan her kullanıcıyı ve bu kaynak için ayrıcalıklarının neler olduğunu tanımlar.

RBAC'ın DAC üzerindeki ana yararı, yönetim kolaylığıdır - prensipte, kaç kullanıcı olursa olsun, merkezi olarak yönetilen çok az rolünüz vardır ve bu her kullanıcıya doğru rolü vermekle ilgilidir; DAC'ın aksine, her yeni kullanıcı için (veya kullanıcı değişikliği veya silme vb.), erişmesi gereken tüm kaynaklara gitmeniz ve bunları listeye eklemeniz gerekir.
Öte yandan, DAC genellikle daha basit ve genellikle daha ayrıntılıdır. Ayrıca, DAC modelinde veri sahibi kimlerin erişebileceğine (veriler üzerinde bu izne sahipse) karar verebilir ve listeye kişi ekleyebilir veya listeden kişi kaldırabilir.

DAC'nin çok yaygın bir örneği Windows dosya sistemidir. Öte yandan, RBAC'ın çok yaygın bir örneği kurumsal dosya sunucularındaki DAC'dir - "Sales" ActiveDirectory grubundaki herkes\Sales\paylaşılan klasörüne erişebilir. Daha yaygın olarak Windows'taki Yöneticiler grubudur.

MAC Zorunlu Erişim Kontrolüdür, bu bir sınıflandırma veya gizlilik seviyesi olarak görülebilir. Bu genellikle askeri sistemlerde ve Mainframe günlerinde kullanılır :). Artık çok fazla kullanılmıyor, ancak mevcut işletim sistemleri bunun bir lezzetini uyguluyorlar, örneğin Vista/Win7'nin Dürüstlük Seviyeleri.

Farklılıkları özetlemek gerekirse:

  • DAC kişisel izinlere, "grup" düzeyindeki izinlere dayalı RBAC
  • DAC veri sahibi tarafından, sistem sahibi/sahipleri tarafından RBAC tarafından ayarlanır (genellikle geliştirici her bir role verilen erişimi tanımlar ve işletim yöneticisi kullanıcıları rollere koyar)
  • DAC tanımları genellikle veriye/kaynağa eklenirken, RBAC genellikle iki yerde tanımlanır: kod/yapılandırma/meta verilerde (rol erişimi) ve kullanıcı nesnesinde (veya tabloda - her kullanıcının sahip olduğu roller).
  • Öte yandan, RBAC rolleri merkezi olarak (kimin rolleriyle ilişkili) yönetilirken, DAC "kaynak üzerinde" (yani her bir kaynağı ayrı ayrı yönetirsiniz) uygulanır.
  • Rol başına izinlerin tanımı genellikle RBAC'de statiktir ve kullanıcılara yalnızca rol verilir; DAC'de kaynak başına izinler çalışma zamanında genellikle değişir.
  • DAC "verilerime erişimi olan" numaralandırma olarak görülmeli ve RBAC "bu kullanıcının ne yapabileceğini" tanımlar.
87
AviD