您的位置:首页 > 房产 > 家装 > 重庆市建设工程信息网证件信息_装修公司取名高端大气_关键词完整版_谷歌搜索引擎seo

重庆市建设工程信息网证件信息_装修公司取名高端大气_关键词完整版_谷歌搜索引擎seo

2024/12/23 13:58:54 来源:https://blog.csdn.net/hua_chi/article/details/142362669  浏览:    关键词:重庆市建设工程信息网证件信息_装修公司取名高端大气_关键词完整版_谷歌搜索引擎seo
重庆市建设工程信息网证件信息_装修公司取名高端大气_关键词完整版_谷歌搜索引擎seo

目录

services.AddAuthorization和services.AddAuthentication是ASP.NET Core中的两个核心服务注册方法。

一、services.AddAuthentication

二、services.AddAuthorization

总结


services.AddAuthorization和services.AddAuthentication是ASP.NET Core中的两个核心服务注册方法。

一、services.AddAuthentication

AddAuthentication用于注册身份验证服务。身份验证是指确认用户身份的过程,确保、验证用户提供的凭据是否合法。通常,你需要指定一个具体的身份验证方案,如基于Basic的身份验证或JWT Bearer Token身份验证。然后为每个请求创建相应的用户身份(通常为一个 ClaimsPrincipal 对象)。

使用方法:

例如使用JWT:

services.AddAuthentication(options =>  
{  options.DefaultAuthenticateScheme = JwtBearerDefaults.AuthenticationScheme;  options.DefaultChallengeScheme = JwtBearerDefaults.AuthenticationScheme;  
})  
.AddJwtBearer(options =>  
{  options.TokenValidationParameters = new TokenValidationParameters  {  ValidateIssuer = true,  ValidateAudience = true,  ValidateLifetime = true,  ValidateIssuerSigningKey = true,  ValidIssuer = "YourIssuer",  ValidAudience = "YourAudience",  IssuerSigningKey = new SymmetricSecurityKey(Encoding.UTF8.GetBytes("YourSecretKey"))  };  
}); 

 例如使用Basic:

services.AddAuthentication(options =>
{options.DefaultAuthenticateScheme = "Basic";options.DefaultChallengeScheme = "Basic";
}).AddBasic(options =>
{options.Realm = "My Realm";options.Events = new BasicAuthenticationEvents{OnValidateCredentials = context =>{var username = context.Username;var password = context.Password;if (username == "user" && password == "pass"){context.ValidationSucceeded();}else{context.ValidationFailed();}return Task.CompletedTask;}};
});

二、services.AddAuthorization

AddAuthorization用于注册授权服务,允许你根据策略和要求控制访问。授权是指确定用户是否可以访问某些资源或操作的过程。在此配置中,通常定义不同的策略,以控制对特定资源或控制器的访问。

使用方法:

services.AddAuthorization(options =>  
{  // 添加声明options.AddPolicy("RequireEmail", policy =>  policy.RequireClaim(ClaimTypes.Email)); // 添加角色options.AddPolicy("RequireAdministratorRole", policy =>  policy.RequireRole("Admin"));  
});  

总结

身份验证和授权是两个互补的过程。先通过AddAuthentication设置身份验证,确保你知道用户是谁;然后通过AddAuthorization定义可用的授权策略,基于用户的身份来控制访问。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com