使用WSO2和自定义令牌端点来实现OAuth 2.0

时间:2019-08-23 18:16:45

标签: wso2

是否可以使用WSO2实现以下方案:

我有一个需要保护的现有API实现(以Spring Boot应用程序的形式)。对API的所有访问都应通过令牌端点发出的OAuth 2承载令牌进行授权。不记名令牌应基于两种不同的授权类型发行:

1)将OpenID连接授权代码流连接到我提供的IdP实现。 2)由第三方系统生成的定制身份验证令牌(我将根据此身份验证该令牌并确定范围等代码)

因此,对于这两种情况,我都需要一个可以发出OAuth 2不记名令牌的令牌终结点-分别基于OpenID Connect身份验证代码或定制令牌(提供了合适的代码“挂钩”)。可以是WSO2身份服务器吗?

尤其是我不确定的最后一部分-据我所知,WSO2 Identity Server提供了令牌端点。也许这可以处理#1。但是我可以扩展它以使其支持方案2吗?我将为此使用哪种WSO2产品?

1 个答案:

答案 0 :(得分:0)

WSO2 API管理器提供#1 OOTB。密钥生成和验证。

对于#2,您需要使用一些自定义代码进行密钥生成和验证。

验证:您可以编写一个自定义处理程序。有关详细信息,请参见this

Keygen:我可以想到两种方法。

1)公开您自己的服务,并根据令牌请求中的内容更改_TokenAPI_.xml以路由到正确的令牌服务。也许是标题?

2)用自定义类介体在Java中编写密钥生成器,并将其嵌入_TokenAPI_.xml中。有关详细信息,请参见this