private AuthenticationTicket BuildIdentityFromEasyAuthMeJson(JObject payload) { var providerName = payload["provider_name"].Value <string>(); this.Logger.LogDebug($"payload was fetched from easyauth me json, provider: {providerName}"); this.Logger.LogInformation("building claims from payload..."); return(AuthenticationTicketBuilder.Build( JsonConvert.DeserializeObject <IEnumerable <AADClaimsModel> >(payload["user_claims"].ToString()), providerName, this.defaultOptions.GetProviderOptions() )); }
private AuthenticationTicket BuildIdentityFromEasyAuthMeJson(JObject payload) { var providerName = payload["provider_name"].Value <string>(); this.Logger.LogDebug($"payload was fetched from easyauth me json, provider: {providerName}"); this.Logger.LogInformation("building claims from payload..."); return(AuthenticationTicketBuilder.Build( payload["user_claims"].Children <JObject>(), providerName, this.Options )); }
private AuthenticationTicket BuildIdentityFromEasyAuthRequestHeaders() { var providerName = this.Headers[PrincipalIdpHeaderName][0]; this.Logger.LogDebug($"payload was fetched from easyauth me json, provider: {providerName}"); this.Logger.LogInformation("building claims from payload..."); var xMsClientPrincipal = JObject.Parse( Encoding.UTF8.GetString( Convert.FromBase64String(this.Headers[PrincipalObjectHeader][0]) ) ); var claims = xMsClientPrincipal["claims"].Children <JObject>(); return(AuthenticationTicketBuilder.Build(claims, providerName, this.Options)); }
private AuthenticationTicket BuildIdentityFromEasyAuthMeJson(JObject payload) { var providerName = payload["provider_name"].Value <string>(); this.Logger.LogDebug($"payload was fetched from easyauth me json, provider: {providerName}"); this.Logger.LogInformation("building claims from payload..."); var ticket = AuthenticationTicketBuilder.Build( JsonConvert.DeserializeObject <IEnumerable <AADClaimsModel> >(payload["user_claims"].ToString()), providerName, this.defaultOptions.GetProviderOptions() ); var name = ticket.Principal.Claims?.FirstOrDefault(c => c.Type == ClaimTypes.Name)?.Value ?? string.Empty; var roles = ticket.Principal.Claims?.Where(c => c.Type == ClaimTypes.Role); var rolesString = string.Join(", ", roles?.Select(r => r.Value)) ?? string.Empty; this.Logger.LogInformation($"identity name: '{ name }' with roles: [{ rolesString }]"); return(ticket); }