3

認証に LDAP を使用する BAM への ESB 接続に成功した人がいるかどうか、およびその方法を知りたいです。つまり、BAM サーバーでイベントを発行するために必要なアクセス許可は何ですか?

ESB 4.6.0 と BAM 2.2.0 をインストールしました。どちらもユーザー管理に LDAP (Active Directory) を使用するように構成されています。

このドキュメントに可能な限り従いました (ただし、いくつかの古い/間違った指示があります) http://docs.wso2.org/wiki/display/ESB450/Configuring+External+User+Stores

ESB はイベントを BAM に送信するため、BAM サーバーに接続するには有効なユーザーとパスワードが必要な BAM プロファイルが作成されます。したがって、そのために特定のユーザーを作成しました。これらのユーザーは、デフォルトの管理者ロール (以下に示す user-mgt.xml ファイルで指定されたもの) に追加することで管理者グループに属するように構成されていますが、ESB と BAM 間の接続は次のように失敗します。

TID: [0] [BAM] [2013-05-07 12:50:58,802]  INFO {org.wso2.carbon.databridge.core.DataBridge} -  wso2_dev_server connected {org.wso2.carbon.databridge.core.DataBridge}
TID: [0] [BAM] [2013-05-07 12:50:58,847] ERROR {org.wso2.carbon.databridge.core.internal.authentication.Authenticator} -  wrong userName or password {org.wso2.carbon.databridge.core.internal.authentication.Authenticator}

管理コンソールへの直接ログイン (同じ資格情報) が機能する間:

TID: [0] [BAM] [2013-05-07 14:10:48,570]  INFO {org.wso2.carbon.core.services.util.CarbonAuthenticationUtil} -  'wso2_dev_server@carbon.super [-1234]' logged in at [2013-05-07 14:10:48,570+1200] from IP address 172.26.34.38 {org.wso2.carbon.core.services.util.CarbonAuthenticationUtil}

さらに面白くするために、代わりにMY資格情報を使用すると、ESB と BAM 間の通信が機能します。

前もって感謝します。

これは、user-mgt.xml ファイルです。

<UserManager>
    <Realm>
    <Configuration>
            <AdminRole>wso2_admin</AdminRole>
            <AdminUser>
                 <UserName>gherrera</UserName>
                 <Password></Password>
            </AdminUser>
        <EveryOneRoleName></EveryOneRoleName> <!-- By default users in this role sees the registry root -->
        <Property name="dataSource">jdbc/WSO2CarbonDB</Property>
        <Property name="MultiTenantRealmConfigBuilder">org.wso2.carbon.user.core.config.multitenancy.SimpleRealmConfigBuilder</Property>
    </Configuration>

    <UserStoreManager class="org.wso2.carbon.user.core.ldap.ReadOnlyLDAPUserStoreManager">
        <Property name="ReadOnly">true</Property>
        <Property name="MaxUserNameListLength">100</Property>
        <Property name="ConnectionURL">ldap://activedirectoryserver:389</Property>
        <Property name="ConnectionName">CN=someadminuser,OU=Service Accounts,OU=mycompany Users,DC=mycompany,DC=co,DC=nz</Property>
        <Property name="ConnectionPassword">someadminuserpassword</Property>
        <Property name="passwordHashMethod">PLAIN_TEXT</Property>
        <Property name="UserSearchBase">DC=mycompany,DC=co,DC=nz</Property>
        <Property name="UserNameListFilter">(objectClass=person)</Property>
        <Property name="UserNameAttribute">sAMAccountName</Property>
        <Property name="ReadLDAPGroups">true</Property>
        <Property name="GroupSearchBase">OU=mycompany Groups,DC=mycompany,DC=co,DC=nz</Property>
        <Property name="GroupNameListFilter">(objectClass=group)</Property>
        <Property name="GroupNameAttribute">cn</Property>
        <Property name="MembershipAttribute">member</Property>
        <Property name="UserRolesCacheEnabled">true</Property>
        <Property name="ReplaceEscapeCharactersAtUserLogin">true</Property>
        <Property name="maxFailedLoginAttempt">3</Property> 
    </UserStoreManager>

    <AuthorizationManager
        class="org.wso2.carbon.user.core.authorization.JDBCAuthorizationManager">
        <Property name="AdminRoleManagementPermissions">/permission</Property>
        <Property name="AuthorizationCacheEnabled">true</Property>
    </AuthorizationManager>
    </Realm>
</UserManager>
4

0 に答える 0