public static string DisplayName(this IPrincipal user) { var culture = CultureInfo.CurrentCulture;// (CultureInfo)HttpContext.Current.Session["Culture"]; if (culture != null && culture.Name.StartsWith("zh")) { return(string.Format($"{user.GetClaimValue(ClaimTypes.Surname)}{user.GetClaimValue(ClaimTypes.GivenName)}").Trim()); } return(string.Format("{0} {1}", user.GetClaimValue(ClaimTypes.GivenName), user.GetClaimValue(ClaimTypes.Surname))); }
public static Guid Id(this IPrincipal user) { string id = user.GetClaimValue(ClaimTypes.NameIdentifier); Guid result; if (Guid.TryParse(id, out result)) { // It's a normal string Guid return(result); } else if (String.IsNullOrEmpty(id)) { // This is the anonymous user return(Guid.Empty); } else { try { // We might be a ADFS-style Guid is which a base64 string // If this fails, we'll get a FormatException thrown anyway return(new Guid(Convert.FromBase64String(id))); } catch (Exception ex) { Log.Error(ex, "Could not parse id '{id}' from NameIdentifier claim", id); return(Guid.Empty); } } }
/// <summary> /// Get the value of the object with the specific filter /// </summary> /// <param name="currentPrincipal">User Principal/Identity</param> /// <param name="userFilter">User Filter</param> /// <returns>returns an object value</returns> private static object GetUserData(IPrincipal currentPrincipal, CookieFilter filter) { switch (filter) { case CookieFilter.Id: return(currentPrincipal.GetClaimValue(ClaimTypes.Name)); case CookieFilter.Token: return(currentPrincipal.GetClaimValue("IdToken")); case CookieFilter.StreamToken: return(currentPrincipal.GetClaimValue("StreamToken")); } return(null); }
/// <summary> /// Gets the user identificator /// </summary> /// <param name="user">IPrincipal user</param> /// <returns>The user identificator</returns> public static Int64?GetUserId(this IPrincipal user) { var claimValue = user.GetClaimValue(ClaimTypes.NameIdentifier); Int64 userId; if (Int64.TryParse(claimValue, out userId)) { return(userId); } return(null); }
public static bool HasFlag(this IPrincipal principal, string type) { return(principal.GetClaimValue <bool>(type)); }
public static string GetClaimValue(this IPrincipal principal, string type, string defaultValue = default) { return(principal.GetClaimValue <string>(type, defaultValue)); }
public static string GivenName(this IPrincipal user) { return(user.GetClaimValue(ClaimTypes.GivenName)); }
public static bool IsWindowsAuthenticated(this IPrincipal user) { string authenticationMethod = user.GetClaimValue(ClaimTypes.AuthenticationMethod); return(!String.IsNullOrEmpty(authenticationMethod) && authenticationMethod.Equals("Windows", StringComparison.OrdinalIgnoreCase)); }
public static string DisplayName(this IPrincipal user) { return(string.Format("{0} {1}", user.GetClaimValue(ClaimTypes.GivenName), user.GetClaimValue(ClaimTypes.Surname))); }
public static string Username(this IPrincipal user) { // We can tolerate the username being in either Upn or Name return(user.GetClaimValue(ClaimTypes.Name) ?? user.GetClaimValue(ClaimTypes.Upn)); }
/// <summary> /// Gets the user name /// </summary> /// <param name="user">IPrincipal user</param> /// <returns>The user name</returns> public static String GetUserName(this IPrincipal user) { return(user.GetClaimValue(ClaimTypes.Name)); }