玩得开心!这是一个简单的asp.net core 2.0应用程序,我将在其中测试自定义身份和Web令牌授权。 JwtBearer的配置如下所示:
public void ConfigureServices(IServiceCollection services)
{
services
.AddAuthentication(options =>
{
options.DefaultAuthenticateScheme = JwtBearerDefaults.AuthenticationScheme;
options.DefaultChallengeScheme = JwtBearerDefaults.AuthenticationScheme;
options.DefaultScheme = JwtBearerDefaults.AuthenticationScheme;
})
.AddJwtBearer(JwtBearerDefaults.AuthenticationScheme, options =>
{
options.RequireHttpsMetadata = false;
options.SaveToken = true;
options.ClaimsIssuer = AppConfig.Jwt.Issuer;
options.TokenValidationParameters = new TokenValidationParameters
{
ValidateIssuer = true,
ValidateAudience = true,
ValidateLifetime = true,
ValidateIssuerSigningKey = true,
ValidIssuer = AppConfig.Jwt.Issuer,
ValidAudience = AppConfig.Jwt.Issuer,
IssuerSigningKey = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(AppConfig.Jwt.SecretKey))
};
});
services.AddMvc();
}
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
app.UseSwagger();
app.UseAuthentication();
app.UseMvc();
}
}
当我尝试致电_signInManager.PasswordSignInAsync()
时,通常会收到错误消息:
谢谢!