コード例 #1
0
        public static void JwtBearerOptions(JwtBearerOptions options, IConfiguration configuration)
        {
            var jwtAppSettingsOptions = configuration.GetSection(nameof(JwtIssuerOptions));

            var symmetricSecurityKey =
                JwtSecurityKey.Create(jwtAppSettingsOptions[nameof(JwtIssuerOptions.IssuerSigningKey)]);
            var jwtIssuer   = jwtAppSettingsOptions[nameof(JwtIssuerOptions.Issuer)];
            var jwtAudience = jwtAppSettingsOptions[nameof(JwtIssuerOptions.Audience)];

            // Jwt token validation configuration
            options.TokenValidationParameters = new TokenValidationParameters
            {
                ValidIssuer           = true.ToString(),
                ValidAudience         = true.ToString(),
                ValidateLifetime      = true,
                RequireExpirationTime = true,
                //ClockSkew = TimeSpan.Zero,

                ValidateIssuerSigningKey = true,
                ValidIssuers             = new[] { jwtIssuer },
                ValidAudiences           = new[] { jwtAudience },
                IssuerSigningKey         = symmetricSecurityKey
            };

            // Jwt token configuration configuration
            options.Configuration = new OpenIdConnectConfiguration()
            {
                SigningKeys = { symmetricSecurityKey },
                Issuer      = jwtIssuer
            };
            options.Audience = jwtAudience;
        }
コード例 #2
0
        public JwtTokenBuilder WithDefaultOptions(IConfiguration configuration)
        {
            var jwtAppSettingsOptions = configuration.GetSection(nameof(JwtIssuerOptions));

            securityKey     = JwtSecurityKey.Create(jwtAppSettingsOptions.GetValue <string>(nameof(JwtIssuerOptions.IssuerSigningKey)));
            issuer          = jwtAppSettingsOptions.GetValue <string>(nameof(JwtIssuerOptions.Issuer));
            audience        = jwtAppSettingsOptions.GetValue <string>(nameof(JwtIssuerOptions.Audience));
            expiryInMinutes = jwtAppSettingsOptions.GetValue <int>(nameof(JwtIssuerOptions.ExpirityInMinutes));

            return(this);
        }