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 地址

最新文章

  1. gdbsever 使用说明
  2. python des ecb 加密 demo
  3. 关于DSP的boot mode / boot loader /上电顺序 /在线升级等问题的总结
  4. win7配置SMTP服务
  5. 烂泥:高负载均衡学习haproxy之关键词介绍
  6. 使用 trash-cli 逃出 rm 命令误删除重要文件的阴影
  7. GBDT基本理论及利用GBDT组合特征的具体方法(收集的资料)
  8. TestLink学习四:TestLink1.9.13使用说明
  9. int转多进制
  10. MySQL查询本周、上周、本月、上个月份数据的sql代码(转)
  11. Spring框架——IOC依赖注入
  12. Acrobat 转换pdf到png的另一种方法
  13. ognl版本错误
  14. 七牛云音频转码准备工作之如何创建音视频处理私有队列pipeline
  15. [Swift]LeetCode186. 翻转字符串中的单词 II $ Reverse Words in a String II
  16. 从HTTL模板引擎看软件设计原则
  17. Hadoop生态圈-zookeeper完全分布式部署
  18. Idea 问题记录
  19. [Spark][Python][Application]非交互式运行Spark Application 的例子
  20. UML和模式应用2: 迭代、进化和敏捷

热门文章

  1. TortoiseGit基本操作
  2. VS2010 调试启动特别慢
  3. 记录两篇关于linux设置ssh登录 和NAT网络模式下访问
  4. EOF及相关函数
  5. iOS - CocoaPods 和 Carthage 的比较
  6. HDU 1166 【线段树 || 树状数组,单点修改 维护区间和】
  7. oracle 通配符及regexp_count函数说明
  8. redis安装和简介(2)
  9. 【转】Spring Boot Profile使用
  10. jenkins没安装git报错