public override void OnAuthorization(AuthorizationContext filterContext) { filterContext.HttpContext.Response.Cache.SetNoServerCaching(); filterContext.HttpContext.Response.Cache.SetNoStore(); var userId = Constant.GetUserID(); string roles = base.Roles; if (base.Roles == "LOGIN") { filterContext.HttpContext.Response.StatusCode = (int)System.Net.HttpStatusCode.OK; } else if (base.Roles == "LOGOUT") { filterContext.HttpContext.Response.StatusCode = (int)System.Net.HttpStatusCode.OK; } else { if (userId == "") { base.HandleUnauthorizedRequest(filterContext); } bool state = ClaimsManager.IsUserInRole(roles); if (!state) { filterContext.Result = new Http403Result(); } else { filterContext.HttpContext.Response.StatusCode = 200; } } }
public static bool IsUserInRole(string roleName) { // change to claims var userId = Constant.GetUserID(); if (userId != null || userId != "") { List <Roles> roles = ClaimsManager.RolesPerUserId(userId.ToString()); //Console.WriteLine(roles); string[] splitrole = roleName.Split(','); for (int i = 0; i < splitrole.Count(); i++) { if (splitrole[i] == "anonymous".ToUpper()) { return(true); } var re = roles.Find(r => r.RoleName == splitrole[i]); if (re != null) { return(true); } } } return(false); }
public override bool IsUserInRole(string username, string roleName) { ClaimsPrincipal principal = HttpContext.Current.User as ClaimsPrincipal; List <Roles> user = ClaimsManager.RolesPerUserId(principal.FindFirst(ClaimTypes.Name).Value); var userRoles = user.Select(r => r.RoleName); if (user == null) { return(false); } return(userRoles != null && userRoles.Any(r => r == roleName)); }
public override string[] GetRolesForUser(string username) { ClaimsPrincipal principal = HttpContext.Current.User as ClaimsPrincipal; // username in this case we use user id List <Roles> user = ClaimsManager.RolesPerUserId(principal.FindFirst(ClaimTypes.Name).Value); var userRoles = user.Select(r => r.RoleName); if (user == null) { return new string[] { } } ; return(userRoles == null ? new string[] { } : userRoles.ToArray()); }
public static bool HasRole(string RoleName) { var userId = Constant.GetUserID(); if (userId != "" || userId != null) { List <Roles> roles = ClaimsManager.RolesPerUserId(userId.ToString()); var re = roles.Find(r => r.RoleName == RoleName); if (re != null) { return(true); } } return(false); }
public override string[] GetAllRoles() { List <Roles> userContext = ClaimsManager.GetAllRoles(); return(userContext.Select(r => r.RoleName).ToArray()); }