无法验证WSO2 IS 5.2.0群集模式中的授权代码

时间:2016-10-30 19:28:42

标签: wso2 wso2is wso2carbon

我最近将我的环境从WSO2 IS 5.0.0更新为WSO2 IS 5.2.0。我的环境由2台正在创建集群的计算机组成(使用WKA成员资格方案和Load Balancer(AW​​S ELB)并启用了粘性会话)。我正在使用MySQL(不是默认的H2数据库)。部署IS的计算机是Windows Server 2012 R2(EC2 AWS计算机)。

我确保" IS_HOME \ repository \ conf \ datasources \ master-datasources.xml"在两台机器上配置相同,并且它们使用完全相同的MySQL数据源。此外,我确信在user-mgt.xml和identity.xml中引用了正确的数据库 如上所述,我在AWS ELB下有两个工作节点。配置群集时,使用以下说明:
https://docs.wso2.com/display/CLUSTER44x/Clustering+Identity+Server+5.1.0

我有一个应用程序正在使用其中一个服务提供者的clientID和clientSecret。我正在使用authorization_code授权类型。当我尝试登录我的应用程序并且我被重定向到NODE1时,我收到了授权码,我试图通过调用https://URL/oauth2/token?client_id=CLIENT_ID&redirect_uri=REDIRECT_URId&client_secret=CLIENT_SECRET&grant_type=authorization_code&code=AUTH_CODE来获取访问令牌。
如果NODE1处理此请求,我会收到访问令牌,一切都很好。但是,如果上述请求由NODE2处理,我会收到以下内容:
{
  "错误":" invalid_grant",
  " error_description":"验证授权码时出错"
}
我能够在IDN_OAUTH2_AUTHORIZATION_CODE表中看到生成的授权代码。我仔细检查了机器时钟是否同步并使用NTP,但是我无法验证NODE1通过NODE2生成的授权代码,反之亦然。
如果我正在运行单节点配置,则不会再现此类问题 关于这个问题,我没有在wso2carbon.log中看到任何错误 我已将patch0481应用于我的系统。

这可能是某种配置问题吗?如果是这样,我应该在哪些配置文件中查看?

提前致谢。

0 个答案:

没有答案