如何使用外部身份提供程序对API进行身份验证?

问题描述 投票:1回答:1

我在同一台机器上进行了以下设置:

  • WSO2-AM
  • WSO2-IM-KM(身份管理员作为主要经理)

身份管理器将身份验证联合到外部OpenID身份提供程序。

到目前为止我做了什么:

  • 在两个组件之间共享数据库
  • 使WSO2-AM将身份验证委派给WSO2-IM-KM
  • 将外部提供程序配置为生成的服务提供程序(在WSO2-AM存储中创建应用程序时在WSO2-IM-KM中生成)

目前的行为:

我的问题:

  • 我怎么能自动化之前描述的手动步骤?我是否负责创建一个专用端点来执行此操作,以便保持authorization_code从客户端进行模糊处理,或者在WSO2中是否有内置端点?如果合适,这个端点是什么?
  • 是否有生成oauth2/authorize URL的端点?

经过进一步研究:

我发现以下文档https://docs.wso2.com/display/IS540/Authorization+Code+Grant似乎表明我需要一个“客户端”,但我没有,我只需要我的API通过外部身份提供程序进行身份验证。

wso2 wso2is wso2-am openid-connect
1个回答
0
投票

回答问题01

如果您想使用授权代码授予类型来获取访问令牌,那么应该有一个回调URL来获取授权代码。如果您的回调URL是真实的,则无需执行任何手动步骤,只需从发送到回调URL的请求查询参数中检索授权代码即可。您可以在playground2示例应用程序[1]中检查此行为,其中回调URL为http://localhost:8080/playground2/oauth2client

回答问题02

请检查identity.xml中的OAuth2AuthzEPUrl标记

[1] https://docs.wso2.com/display/IS570/Setting+Up+the+Sample+Webapp

© www.soinside.com 2019 - 2024. All rights reserved.