简体   繁体   English

WSO2 Identity Server 5.3.0-如何获取联合身份验证器ID

[英]WSO2 Identity Server 5.3.0 - How to get federated authenticator ID

With some federated authenticator, let's say Facebook, after redirect back to Service Provider, how can I determine which federated authenticator got invoked? 假设有一些联合身份验证器,例如Facebook,在重定向回服务提供商后,如何确定调用了哪个联合身份验证器?

I see that commonauth is invoked with https://localhost:9443/commonauth?idp= facebook &authenticator= FacebookAuthenticator &sessionDataKey=faaad26e-8bde-4a14-a865-c40546c4e22f, but what I should do next to forward those variables to my service provider? 我看到commonauth是通过https:// localhost:9443 / commonauth?idp = facebook &authenticator = FacebookAuthenticator &sessionDataKey = faaad26e-8bde-4a14-a865-c40546c4e22f调用的,但是接下来我该怎么做才能将这些变量转发给服务提供商?

Enable "Always send back the authenticated list of identity providers" in "Local & Outbound Authentication Configuration" of the service provider configuration in WSO2 Identity Server. 在WSO2 Identity Server的服务提供者配置的“本地和出站身份验证配置”中启用“始终发送回身份提供者的身份验证列表”。

在此处输入图片说明

When you enable this option, you will receive a parameter called "AuthenticatedIdPs" with the login response. 启用此选项后,您将在登录响应中收到一个名为“ AuthenticatedIdPs”的参数。 Base64 decode the received value to get list of authenticated idps. Base64解码接收到的值以获取经过身份验证的IDPS的列表。 Below is a base64 decoded sample value. 以下是base64解码后的样本值。

{
   "typ":"JWT",
   "alg":"none"
}{
   "iss":"wso2",
   "exp":15119303538293000,
   "iat":1511930353829,
   "idps":[
      {
         "idp":"LOCAL",
         "authenticator":"BasicAuthenticator"
      }
   ]
}

Refer https://docs.wso2.com/display/IS530/Configuring+Local+and+Outbound+Authentication+for+a+Service+Provider for more information. 有关更多信息,请参阅https://docs.wso2.com/display/IS530/Configuring+Local+and+Outbound+Authentication+for+a+Service+Provider

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM