2016-06-20 7 views
0

ログインのためにLDAP認証を行う必要があります。それは、単一のADサーバーでチェックするために正常に動作します。1つ以上のldapProviderUrl URLを持つWorklight LDAP認証

<loginModules> 
    <loginModule name="LDAPLoginModule"> 
     <className>com.worklight.core.auth.ext.LdapLoginModule</className> 
     <parameter name="ldapProviderUrl" value="${ldap.security.dom1.url}"/> 
     <parameter name="ldapTimeoutMs" value="2000"/> 
     <parameter name="ldapSecurityAuthentication" value="simple"/> 
     <parameter name="validationType" value="exists"/> 
     <parameter name="ldapSecurityPrincipalPattern" value="{username}"/> 

    </loginModule> 

ldapprovider URLに単一のURLを使用するとうまくいきます。私は2つのLDAP URLを追加したいと思っていました.1つはプライマリ&をセカンダリとして追加しました。カンマ区切りのURLを追加しようとしました。プライマリが失敗した場合、セカンダリURLをチェックする必要があります。 URLは

ldap.security.dom1.url = LDAP://10.40.88.10/DC=10.40.88.10 
ldap.security.dom2.url = LDAP://10.30.88.10/DC=10.30.88.10 

以下のようworklight.propertiesに設定されているコードは

<parameter name="ldapProviderUrl" value="${ldap.security.dom1.url},${ldap.security.dom2.url}"/> 

以下のようである。しかし、それは以下のエラー

LdapLoginModule authentication failed. Reason 'javax.naming.InvalidNameException: Invalid name: DC=10.30.28.10,LDAP://10.40.88.10/DC=10.40.88.10 
at javax.naming.ldap.Rfc2253Parser.doParse(Rfc2253Parser.java:111) 
at javax.naming.ldap.Rfc2253Parser.parseDn(Rfc2253Parser.java:74) 
at javax.naming.ldap.LdapName.parse(LdapName.java:789) 
at javax.naming.ldap.LdapName.<init>(LdapName.java:125) 
at com.sun.jndi.ldap.LdapNameParser.parse(LdapNameParser.java:39) 
at com.sun.jndi.ldap.LdapCtx.<init>(LdapCtx.java:299) 

親切にアドバイスをスローします。

答えて

0

文書found hereによると、ldapProviderUrlは、単一の、RFC-2253の解析可能なURLまたはIPアドレスであると予想されます。モジュールにはこの値のための区切られた "リスト"の概念がないので、あなたはこのエラーを受けています。

+0

Okありがとうございました。しかし、このタイプの要件があるかどうかを達成する方法。 – Reej