WSO2 Identity Server:编辑/ repository / conf / identity / service-providers文件夹中的服务提供商

时间:2019-01-14 20:15:39

标签: wso2 wso2is

我在previous post中问过类似的问题,但是我认为这应该是自己的帖子。

在WSO2 Identity Server中,我了解如果将服务提供者放置在文件夹/repository/conf/identity/service-providers中,则可以对其进行配置(仅在首次启动时)。我还了解到,如果是在首次启动时配置的,则无法通过管理控制台ui看到它们。

但是您如何编辑它们?假设我要编辑现有服务提供商的声明?更改允许的OAuth授权类型?甚至删除服务提供商?

如果在控制台中看不到服务提供商,该如何编辑或删除它?

一个后续但相关的问题:WSO2提供“一劳永逸”的服务提供商设置背后的原因是什么?我希望在WSO2实施的整个生命周期中都添加服务提供商,如果我仅将文件放在一个文件夹(repository/conf/identity/service-providers文件夹,该文件夹仅在启动)并重新启动服务器,而不是进入UI并单击多次以手动配置服务提供商或通过文件手动上传。

编辑:@sajith指出,即使服务器根据本文中的信息启动一次,您也应该应该进行配置:{{3 }}。但是,我还没有看到它能成功工作。我知道发生了什么事,因为如果我尝试通过控制台上传服务提供商(带有文件上传),则会收到错误消息:

https://docs.wso2.com/display/IS570/Configuring+a+SP+and+IdP+Using+Configuration+Files

控制台输出:

Caused by: org.wso2.carbon.identity.application.common.IdentityApplicationManagementException: Application with the same name loaded from the file system.

因此,看起来WSO2服务器正在识别并加载新的服务提供商(即使在第一次启动后),但我无法对其进行身份验证。尝试针对新服务提供商进行身份验证时的示例响应:

{
    "error_description": "A valid OAuth client could not be found for client_id: test",
    "error": "invalid_client"
}

1 个答案:

答案 0 :(得分:1)

  

如果在控制台中看不到服务提供商,该如何编辑或   删除它? WSO2提供“一劳永逸”的服务提供商设置背后的原因是什么?

This document说,您可以重新启动WSO2 Identity Server,以将基于文件的服务提供者和身份提供者配置(放置在document中的配置)应用到系统。

我认为您已经将有关claim configurations的以下注意事项混在一起。

  

在/repository/conf/claim-config.xml中配置的声明   该文件仅在您首次启动产品时应用,   或任何新创建的租户。第一次创业时,声称   方言和声明将从文件中加载并保留在   数据库。该文件的任何连续更新都不会被提取   并从数据库中加载声明方言和声明。

编辑:

  

{       “ error_description”:“找不到用于client_id:test的有效OAuth客户端”,       “ error”:“ invalid_client”}

这已经在您的previous question中得到了回答。 <IS_HOME>/repository/conf/identity/的出现是因为您在sp config文件中设置了客户端ID,但是身份服务器不支持通过此文件配置InboundAuthenticationConfig。

  

当前,   不支持已部署文件中的InboundAuthenticationConfig。   但是,您可以在   WSO2_HOME / repository / conf / identity / sso-idp-config.xml文件。

因此,您可以为此目的使用SOAP管理服务。