سؤال

أحتاج إلى معرفة كيف SiteMapProvider.IsAccessibleToUser() يعمل.

مدمج XmlSiteMapProvider المكالمات HttpContext.User.IsInRole() الذي يستخدم System.Security.Principal.GenericPrincipal في حالة المصادقة النماذج.

أين يحصل المستخدم الحالي على أدواره؟ أي مزود يحمل هذا النوع من المعلومات؟ أريد أن أفرطها واستخدام المنطق المخصص.

هل كانت مفيدة؟

المحلول

يمكنك القيام بذلك عن طريق تنفيذ roleprovider. تحقق من هذه الروابط:

http://msdn.microsoft.com/en-us/library/8fw7xh74.aspx

http://www.codeproject.com/kb/aspnet/wssecurityprovider.aspx

نصائح أخرى

لاستخدام منطق مخصص ، يمكنك إنشاء ملفات تعريف ارتباط مصادقة النماذج الخاصة بك مع أدوار وقراءتها مرة أخرى في Global.asax.

انظر هذه:

private void SetAuthenticationCookie(int employeeID, List<string> roles)

protected void Application_AuthenticateRequest(Object sender, EventArgs e)

http://weblogs.asp.net/rajbk/archive/2010/04/01/securing-an-asp-net-mvc-2-application.aspx

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top