使用API​​ Manager将WSO2 Identity Server配置为密钥管理器

时间:2015-09-23 11:21:44

标签: wso2 wso2is adfs wso2-am

我正在寻找关于两个特定WSO2产品,API Manager和Identity Server的一些指导,以及解决我将在下面解释的问题的最佳解决方案。

在我的公司,我们在我们的应用程序中使用ADFS 3.0进行单点登录支持。但是,我们现在正在构建需要OpenID Connect规范(SPA的+ Rest API)的应用程序,并且ADFS不支持开箱即用,因此我们决定将WSO2产品用于此目的。

我已经设法安装WSO2 Identity Server 5.0.0 SP1并将ADFS配置为联合身份提供程序(新应用程序仍需要使用ADFS对用户进行身份验证)。我还安装了WSO2 API Manager 1.9.1并将其配置为使用WSO2 Identity Server作为密钥管理器(Configuration tutorial)。

现在出现问题:

使用WSO2 Identity Server 5.0.0 SP1由于报告的问题here,我无法使用Logout功能。似乎这个问题已经在版本5.1.0M4中得到解决,所以我尝试安装版本5.1.0-alpha并设法使注销与ADFS一起工作(我通过为碳管理启用SSO来测试它)。但是,由于不兼容,现在我无法通过碳储存库安装密钥管理器功能。

结果,使用第一个组合(wso2is 5.0.0 SP1 / wso2am 1.9.1)我有ADFS和第二个组合(wso2is 5.1.0-alpha / wso2am 1.9.1)的注销问题,我'无法在Identity Server中安装密钥管理器功能。

有没有办法在第一个组合中应用补丁来解决退出问题?有没有办法在WSO2IS 5.1.0-alpha上安装密钥管理器功能?或者有人能指出我另一种解决方案来解决这个问题吗?

1 个答案:

答案 0 :(得分:1)

您在上面指出的issue,标记为“Patch”。通常这意味着WSO2已针对早期版本修复了此问题,并为其客户提供了补丁。最简单的事情是,如果您已经是WSO2的客户,请直接向他们的支持部门索取补丁。

如果您不是WSO2的付费客户,那么您有点麻烦。根据{{​​3}}问题,Service Pack的来源也不公开。

但幸运的是,在您的情况下,需要此修复的组件不是核心组件。因此,如果更改验证器代码位,则不会遇到麻烦。但警告是,它会丢失对Service Pack中org.wso2.carbon.identity.application.authenticator.samlsso_4.2.1.jar所做的任何修复。

无论如何,这些是你应该遵循的步骤。

  1. 查看来源。懒惰路径将从this结帐整个来源。这是您尝试构建源代码时遇到的麻烦最简单的方法,但其缺点是,需要一些时间来结账。如果您知道如何从WSO2源构建特定组件,则可以直接签出需要更改的here
  2. 尝试构建组件而不进行任何更改,只是为了确保此时没有任何问题。
  3. 转到课程component并在DefaultSAML2SSOManager中完成相同的更改。
  4. 再次构建组件。
  5. <IS_HOME>/repository/components/patches/文件夹中创建名为“patch9000”的文件夹。
  6. 将步骤4中的构建jar(org.wso2.carbon.identity.application.authenticator.samlsso-4.2.1.jar)从target文件夹复制到<IS_HOME>/repository/components/patches/patch9000文件夹。
  7. 重新启动服务器。如果您已经完成了所有工作,那么在服务器启动时,它将打印一个类似org.wso2.carbon.server.extensions.PatchInstaller - Patch changes detected
  8. 的日志

    现在重试您的流程,它会按预期工作。

    如果你懒得上面所做的一切,你可以等到Identity Server Service Pack 2,这将有你的修复。