MVC4 и EF5 с аутентификацией Active Directory и ролями в SQL
Мне нужно реализовать проект в MVC4 и EF5 с аутентификацией Active Directory, но вместо того, чтобы иметь группы AD для ролей, я должен реализовать роли в SQL.
Пока у меня есть несколько организаций для поддержки... Я надеюсь, что это может помочь.
- Роль
- пользователь
- UserRole
Я пытаюсь использовать аннотацию [Роль]. Является ли это возможным?
Я немного растерялся, мне нужна помощь ПОЖАЛУЙСТА!!!!
1 ответ
Я думаю, я понял.
Пожалуйста, не стесняйтесь улучшить и перепостить:
[AttributeUsage(AttributeTargets.Class, AllowMultiple = false, Inherited = true)]
public class ARQAuthorize : AuthorizeAttribute
{
protected override bool AuthorizeCore(HttpContextBase httpContext)
{
bool allowToUse = false;
IPrincipal user = httpContext.User;
if (!user.Identity.IsAuthenticated)
{
return false;
}
else{
try
{
Arq.Core.DAL.ArqContext c = new ArqContext();
if (c.Users.Where(u => u.UserName.ToUpper() == user.Identity.Name.ToUpper()).FirstOrDefault().role.RoleDescription == "ADMINS")
{
allowToUse = true;
}
}
catch (Exception)
{
allowToUse = false;
}
}
return allowToUse;
}
}