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()
                       ));
        }
コード例 #2
0
        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
                       ));
        }
コード例 #3
0
        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));
        }
コード例 #4
0
        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);
        }