1

G-Reg を使用して WSO2 製品間でレジストリを共有する方法については、このガイドに従いました。しかし問題は、ユーザー管理テーブルが共有されていないことです。

たとえば、G-Reg で新しいユーザー「test」を作成しましたが、WSO2 ESB 製品では有効ではありません (ネイティブ ユーザー「admin」のみが可能です)。

G-Regに保存されているユーザーを共有することは可能ですか? それとも、ローカルの H2 データベースに保存されていますか?

4

2 に答える 2

2

では、G-Red に保存されているユーザーを共有することは可能ですか? それとも、ローカルの H2 データベースに保存されていますか?

はい、すべての WSO2 製品間でユーザーを共有できます。デフォルトでは、すべての製品に同梱されている H2 が使用されます。

複数の製品間でユーザーを共有する場合は、mysql、postgresql などの本番対応データベースを使用する必要があります。

  1. という名前のデータベースを作成します。userdb

  2. 以下のエントリを追加します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>
    

  3. repository/conf/user-mgt.xmlG-REG と ESB の両方で、次のようにファイル内のデータソース JNDI 名を変更します。

    <Property name="dataSource">jdbc/WSO2CarbonDB_User</Property>
    
  4. -Dset up オプションを指定して G-REG または ESB を起動し、必要なデータベースを作成します。これは初回のみ必要です。

于 2015-10-09T06:08:24.703 に答える