使用上游JWT身份验证进行OAuth 2授权所需的配置是什么?

时间:2018-03-15 12:13:51

标签: apiconnect

我想设计一个带有IBM connect的微服务架构,外部客户端需要在授权头(OAuth 2)中传递承载访问令牌,网关将传递存储的JWT(在授权调用期间生成和存储) )授权用户对内部API的声明。

是否有这样的内置配置?

(作为参考,WSO2提供了这种确切的行为:https://docs.wso2.com/display/AM210/Passing+Enduser+Attributes+to+the+Backend+Using+JWT

1 个答案:

答案 0 :(得分:1)

IBM API Connect中没有这样的内置功能。 您在IBM API Connect中提到的方案的可能实现可能是:

  • 包含OAuth流的授权和令牌端点的OAuth提供程序API(IBM API Connect具有内置OAuth服务器)Implement an OAuth API Provider

  • 作为后端微服务代理的API,由之前创建的OAuth提供程序API保护(这样,访问令牌就需要向此API发送请求)。在此API中,实现jwt-generate策略(IBM API Connect中的内置策略)以生成JWT令牌。 jwt-generate built-in policy

在此实现中,您可以将自定义信息添加到OAuth提供程序API生成的访问令牌(例如应用程序中的登录用户,设备ID ....),并在生成JWT时将这些值用作声明(oauth.resource-owner,发送请求的消费者应用程序的客户端ID。)