首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Identity Server 3和identity server 4创建的令牌保护API

使用Identity Server 3和identity server 4创建的令牌保护API
EN

Stack Overflow用户
提问于 2019-10-30 15:05:28
回答 1查看 74关注 0票数 1

我使用Identity Server 4来验证客户端并生成令牌。该网站是使用.Net核心在Angular中创建的,但已经开发的应用编程接口仍在不支持Identity Server4的.NET framework 4.7.1中。

因此,为了保护应用程序接口,我使用支持.NET框架4.7.1的Identity Server3配置了应用程序接口,但问题是它没有验证Identity Server4生成的令牌。

代码语言:javascript
复制
app.UseIdentityServerBearerTokenAuthentication(new IdentityServerBearerTokenAuthenticationOptions
            {
                Authority = "http://localhost:5000",
                AuthenticationType = "Bearer",
                RequiredScopes = new[] { "api_to_be_protected" }
            });

我们是否可以验证令牌并保护API不受未经授权的未知客户端的影响,同时还可以验证Identity Server 4创建的令牌

EN

回答 1

Stack Overflow用户

发布于 2020-10-08 17:30:19

在标识服务器上,应将EmitLegacyResourceAudienceClaim选项设置为true

代码语言:javascript
复制
var identityServerBuilder = services.AddIdentityServer(opt =>
            {
                opt.EmitLegacyResourceAudienceClaim = true;
            });

有关此属性的更多信息可在此处找到:https://identityserver4.readthedocs.io/en/latest/reference/options.html

我还发现nuget包IdentityServer3.Contrib.AccessTokenValidation有一个支持IDSrv 4的最新更新,我建议您使用它而不是IdentityServer3.AccessTokenValidation

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58620132

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档