9-客户端集成IdentityServer
2024-09-18 01:41:53
1-创建客户端的webapi项目
E:\coding\netcore\IdentityServerSample>dotnet new webapi --name IdentityCredentialApi
2-在需要启用授权的方法上增加Authorize标签
3-使用nuget工具安装 IdentityServer4.AccessTokenValidation
4-启用客户端授权, 需要配置连接的授权的服务器等
Startup.cs
public void ConfigureServices(IServiceCollection services)
{
services.AddAuthentication("Bearer")
.AddIdentityServerAuthentication(options=>{
options.Authority="http://localhost:5000";
options.RequireHttpsMetadata=false;
options.ApiName="api"; }); services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1);
}
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
else
{
app.UseHsts();
}
app.UseAuthentication(); //新加
app.UseMvc();
}
5-修改启动的url, 为了在测试时与服务器的不冲突, 在Program.cs修改
public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.UseStartup<Startup>().UseUrls("http://localhost:5001");
6-进行测试,启用服务端和客户端,
如果默认访问需要授权的网页,会报401未授权错误
要想获得授权,第一步通过服务器获得token, http://localhost:5000/connect/token
参数 client_id:client client_secret:secret grant_type:client_credentials
第二步,通过返回的token再调用客户端的http://localhost:5001/api/values 地址
最新文章
- gdbsever 使用说明
- python des ecb 加密 demo
- 关于DSP的boot mode / boot loader /上电顺序 /在线升级等问题的总结
- win7配置SMTP服务
- 烂泥:高负载均衡学习haproxy之关键词介绍
- 使用 trash-cli 逃出 rm 命令误删除重要文件的阴影
- GBDT基本理论及利用GBDT组合特征的具体方法(收集的资料)
- TestLink学习四:TestLink1.9.13使用说明
- int转多进制
- MySQL查询本周、上周、本月、上个月份数据的sql代码(转)
- Spring框架——IOC依赖注入
- Acrobat 转换pdf到png的另一种方法
- ognl版本错误
- 七牛云音频转码准备工作之如何创建音视频处理私有队列pipeline
- [Swift]LeetCode186. 翻转字符串中的单词 II $ Reverse Words in a String II
- 从HTTL模板引擎看软件设计原则
- Hadoop生态圈-zookeeper完全分布式部署
- Idea 问题记录
- [Spark][Python][Application]非交互式运行Spark Application 的例子
- UML和模式应用2: 迭代、进化和敏捷