Buradaki zorluk, veritabanı erişiminizin bir soyutlama ile yönetilmesidir. Kendileri olarak bağlanan kullanıcılar yerine, aslında bazı genelleştirilmiş uygulama rolünün kimliğini alırlar. Yalnızca bireysel bağlantının görünürlüğünü kaybetmezsiniz, aynı zamanda tüm bireysel kullanıcılarınız için farklı erişim türleri tanımlamanın ayrıntı düzeyini de kaybedersiniz.
Bu yaklaşımı kullanmanın ana nedeni basitliktir. Birçok uygulama, uygulamanın kullanıcısı veritabanı hakkında hiçbir bilgiye sahip olmayacak şekilde tasarlanmıştır. Özellikle uygulama kendi iç güvenliğini yönetiyorsa buna gerçekten ihtiyaç duymazlar. Bireysel kullanıcıların çoğu asla doğrudan veritabanına bağlanmaz, bu nedenle onlar için açık bir oturum tanımlamak gerekmez.
Veritabanınızın güvenliğinizi yönetmesine izin vermeniz gereken tek zaman, doğrudan veritabanınıza bağlanacak kullanıcılarınız varsa. Bu, uygulamanızın etrafında dolaştıkları ve artık güvenliği tek başına uygulayamayacağı anlamına gelir. Buradaki avantaj, güvenliğinizi tanımlama konusunda daha ayrıntılı olmanızdır. Dezavantajı, kullanıcıları ve izinlerini yönetmek için daha yüksek bir ek yüktür.
Bu tür bir erişime gereksinim duyuyorsanız, Rol Tabanlı Erişim Denetimi'ni kullanmak istersiniz . Rolleri, veritabanınızda ne tür izinlere ihtiyaç duyulduğuna bağlı olarak tanımlamalı ve daha sonra tek tek kullanıcıları bu roller altında gruplandırmalısınız. Bu, doğrudan erişiminizi yönetirken hızlı bir şekilde kontrolden çıkabilen güvenlik modeliniz üzerinde daha iyi denetim ve kontrol sağlar.
Buna melez bir yaklaşım var. Güvenliğinizin veritabanı tarafından kısmen yönetilmesini istiyorsanız, her biri rolleri tarafından tanımlanan birden çok uygulama kullanıcısı oluşturabilir ve yerine getirdikleri role göre bu kullanıcılara açıkça erişim verebilirsiniz. Bu, bazı güvenlik modeliniz için veritabanı motorundan yararlanabileceğiniz anlamına gelir, ancak yine de uygulama içinde bazı yönetiminizin olması gerekir. Uygulama kullanıcı modelinin karmaşıklığını artırır, ancak kullanımdaki farklı girişlerde size daha ayrıntılı ayrıntı verir.