我正在尝试在wso2is中配置两个身份服务器,一个是google idp,另一个是wso2is本身。我的要求是,如果用户选择wso2 IdP,他们将能够从wso2 idp访问用户信息,如果他们选择谷歌IdP,他们将能够从谷歌帐户访问用户信息。所以我的问题是两个idp都有不同的API来生成访问令牌,那么我如何识别选择哪个IdP用户以便我可以生成访问令牌。
答案 0 :(得分:1)
通过从您的描述中了解您的要求 以下是如何实现自己想做的事情,
创建一个Google OAuth应用并获取它的client_credentials和client_secret。注册一个callback_url,例如" https://localhost/callbackGoogle"
将google idp注册为WSO2 Identity Server中的IDP,在Google身份验证器中填写IDP的联合身份验证器部分,其中包含在Google中创建的OAuth应用的详细信息
在WSO2 IS中创建服务提供商并启用OAuth入站身份验证。注册一个callbackurl" https://localhost/callbackWSO2"
本地&服务提供商的出站验证配置部分选择高级选项
在步骤1中添加本地和联合身份验证器
现在注册两个servlet,一个用于googleIDP的回调网址,另一个用于为WSO2 IS注册的回调
现在您要求服务提供商提供访问令牌,您将被重定向到具有两个选项(本地IS或Google IDP)的登录页面
[1] https://docs.wso2.com/pages/viewpage.action?pageId=49092446