首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过Azure API管理公开受OAUTH保护的API并执行委派

通过Azure API管理公开受OAUTH保护的API并执行委派
EN

Stack Overflow用户
提问于 2019-11-18 22:51:20
回答 1查看 460关注 0票数 0

我们有一个在.NET中作为AppService运行的Azure应用程序接口。此接口要求您提供有效的OAUTH访问令牌。还有一个使用API的内部网站。没有什么特别事情。令牌是使用Identity Server4创建的,Identity Server4通过WS-Federation将身份验证外部化到ADFS。

现在,我们希望将API公开给外部消费者。这些外部实体是AD域的成员,应使用相同的Identity Server + ADFS组合进行身份验证。但是,我们也希望允许一些管理,节流,订阅密钥,诸如此类的事情。

我们正在研究Azure API管理来做到这一点,但在安全性方面遇到了一些困难。大多数情况下,Azure API管理允许您配置的端点本身就是实际的服务。它们的客户端ID与我们的应用程序接口使用的ClientID不同,至少我们认为应该如此。

因此,Api Management服务收到一个带有令牌的调用,但是该令牌不能用于调用我们想要管理的下游API。我们认为应该使用OAUTH代表流。

API Management是否支持该流?我们看到了许多示例,在这些示例中,您通过API管理公开的实际API基本上允许匿名调用。

如何正常配置Azure API管理来做到这一点?显然,我们不愿意从API本身中删除任何安全配置。

谢谢!期待能学到更多!

EN

回答 1

Stack Overflow用户

发布于 2019-12-04 17:42:11

开发者门户在OAuth实例上测试API时,会使用该实例上可用的API 2.0设置。

令牌的实际(预)验证由validate-jwt policy执行,其对颁发者、所需声明、受众等的配置应与您的令牌要求相匹配。

在没有apim头的情况下,您只需将用户重定向到登录页面(并相应地将重定向url设置回Authorization )。

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

https://stackoverflow.com/questions/58917229

复制
相关文章

相似问题

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