WSO2产品之间不共享用户管理表

时间:2015-10-09 05:20:20

标签: wso2 user-management wso2greg

我使用G-Reg跟踪了this guide在WSO2产品之间共享注册表。但问题是用户管理表不是共享的。

例如,我创建了一个新用户" test"在G-Reg中,但它在WSO2 ESB产品中无效(只有本地用户" admin"才有可能)。

那么可以共享存储在G-Reg中的用户吗?或者它们存储在本地H2数据库中?

2 个答案:

答案 0 :(得分:2)

  

那么可以共享存储在G-Red中的用户吗?或者他们存储   在本地H2数据库中?

是的,您可以在所有WSO2产品之间共享用户。默认情况下,使用H2随附所有产品。

如果您要在多个产品中共享用户,您需要使用mysql,postgresql等生产就绪数据库。

  1. 创建名为userdb

  2. 的数据库
  3. repository/conf/datasources/master-datasources.xml

    中添加以下条目
     <datasource>
     <name>WSO2_CARBON_USER</name>
     <description>The datasource used for registry and user manager</description>
     <jndiConfig>
        <name>jdbc/WSO2CarbonDB_User</name>
     </jndiConfig>
     <definition type="RDBMS">
        <configuration>
           <url>jdbc:mysql://localhost:3306/userdb</url>
           <username>wso2carbon</username>
           <password>wso2carbon</password>
           <driverClassName>com.mysql.jdbc.Driver</driverClassName>
           <maxActive>50</maxActive>
           <maxWait>60000</maxWait>
           <testOnBorrow>true</testOnBorrow>
           <validationQuery>SELECT 1</validationQuery>
           <validationInterval>30000</validationInterval>
        </configuration>
     </definition>
    

  4. 更改repository/conf/user-mgt.xml文件中的数据源JNDI名称,如下面的G-REG和ESB

    <Property name="dataSource">jdbc/WSO2CarbonDB_User</Property>
    
  5. 使用-Dset up选项启动G-REG或ESB以创建所需的数据库。这仅在第一次时才需要。

答案 1 :(得分:1)

为此,您需要通过repository/conf/user-mgt.xml配置产品以指向同一用户存储。请查看this doc以了解如何操作。