今天就跟大家聊聊有关IdentityServer4中怎样入门与API添加客户端凭据,可能很多人都 香港云主机不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。 下面将要讲述如何使用IdentityServer4对API授权保护以及如何携带Token进行访问受保护的API,通过HttpClient或Http请求中的body这些我们都可以达到。那么废话不多说,开始吧~ 首先我们一定要知道,我们访问要访问一个受安全限制的API的锁子是在一个专门的IdentityServer4验证服务器。所以呢,我们需要创建一个认证服务器。首先我们创建一个API项目。创建完成之后,我们再创建一个Config.cs,当然这个名字你随意,但你需要在DI注入的时候与其对应。在GetSoluction中定义了我们的API,也就是受保护的锁子,第一个参数是name,也就是Api的名称,那么后面是显示的名字,也就是DisplayName。在GetClients当中我们定义了受信任的客户端,其中有客户端的ID,授权方式,客户端加密方式,通过AllowedScopes 还定义了这个客户端可以访问的API。 我们现在已经写好了关于IdentityServer4服务器的配置文件,那么我们还需要去依赖注入到.NET Core管道中,现在我们看一下定义。 就是这样 – 如果您运行服务器并浏览浏览器http://localhost:您的端口/.well-known/openid-configuration,您应该会看到所谓的发现文档。客户端和API将使用它来下载必要的配置数据。首次启动时,IdentityServer将为您创建一个开发人员签名密钥,它是一个名为的文件tempkey.rsa
。您不必将该文件检入源代码管理中,如果该文件不存在,将重新创建该文件。 以下是用PostMan进行的测试,以HttpPost方式进行请求,并在Http Body中进行编辑请求体上下文,测试结果如下。如果三个参数没有问题就返回token,如果其中三个参数有一个写错,那么就会返回400错误(error:invalid_client)。下面在API项目中添加控制器: 稍后将使用此控制器来测试授权要求,以及通过API的眼睛可视化声明身份。现在我们将身份验证服务添加到DI和身份验证中间价到管道中,验证传入令牌以确保它来自受信任的颁发者。将Startup更新为如下所示:IdentityModel包括用于发现端点的客户端库。这样您只需要知道IdentityServer的基地址 – 可以从元数据中读取实际的端点地址:接下来,您可以使用发现文档中的信息来请求令牌:
要将访问令牌发送到API,通常使用HTTP Authorization标头。这是使用SetBearerToken扩展方法完成的:
就这样,我们启动结果如下,启动顺序,应先启动身份认证平台,然后再启动API,在启动控制台调试工具。 就这样一个简单的IdentityServer4身份认证平台就OK了,现在是不是想要迫切的试一下呢?哈哈,关于源代码,我放到我的Coding中了,地址是:https://coding.net/u/zaranet/p/IdentitySERVER,当然不要看着简单,还是自己敲一下吧,如果你一点都没有碰过IdentityServer的话。下面我们在回顾一下。 我们在IdentityServerSoluction中定义了Config文件,用于Id4的配置,主要功能是为了认证模型,其中还设置了Client请求文中的ClientId这些参数等等。那么IdentItyAPI就是我们的项目服务,其中通过Authorize标记的都是具有安全保护的API控制器,那么我们就需要去获取我们的IdentityServerSoluction中的验证,这样我们才可以访问,那么我们就用了.NET Core控制台程序去模拟了这个过程,其中涉及了HttpClient相关知识。那么最后返回了我们的相关token,这样,我们可以根据token去获取我们想要的API服务了!看完上述内容,你们对IdentityServer4中怎样入门与API添加客户端凭据有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注开发云行业资讯频道,感谢大家的支持。
今天就跟大家聊聊有关大数据中常见的网站反爬策略与解决方案是什么,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。大家在采集数据的过程中经常会遇到网站反爬的情况,不同网站反爬策略也不尽相同。今天为大家总结了我…
免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。