Java CAPS での LDAP の使用

Procedureリポジトリを設定する

  1. JavaCAPS-install-dir/repository/repository/server/conf ディレクトリにある server.xml ファイルを開きます。

  2. デフォルトの <Realm> 要素を削除するかコメントアウトします。

  3. Sun Java System Directory Server を使用している場合は、次の <Realm> 要素を <Engine> タグの内側に追加します。必要に応じて、デフォルト値を変更します。属性については前述の表で説明されています。


    <Realm className="org.apache.catalina.realm.JNDIRealm"
        connectionURL="ldap://localhost:489"
        userBase="cn=People,dc=sun,dc=com"
        userSearch="(uid={0})"
        userSubtree="true"
        userRoleName="nsroledn"
        userRoleNamePattern="cn={0},dc=sun,dc=com"
        roleSubtree="true"
    />
  4. Active Directory を使用している場合は、次の <Realm> 要素を <Engine> タグの内側に追加します。必要に応じて、デフォルト値を変更します。属性については前述の表で説明されています。


    <Realm className="org.apache.catalina.realm.JNDIRealm"
        connectionURL="ldap://localhost:389"
        userBase="cn=Users,dc=sun,dc=com"
        userSearch="(cn={0})"
        userSubtree="true"
        roleBase="ou=CAPSRoles,dc=sun,dc=com"
        roleName="cn"
        roleSearch="(member={0})"
        roleSubtree="true"
    />
  5. OpenLDAP Directory Server を使用している場合は、次の <Realm> 要素を <Engine> タグの内側に追加します。必要に応じて、デフォルト値を変更します。属性については前述の表で説明されています。


    <Realm className="org.apache.catalina.realm.JNDIRealm"
        connectionURL="ldap://localhost:389"
        userBase="ou=People,dc=sun,dc=com"
        userSearch="(uid={0})"
        userSubtree="true"
        roleBase="ou=CAPSRoles,dc=sun,dc=com"
        roleName="cn"
        roleSearch="(uniquemember={0})"
        roleSubtree="true"
    />
  6. LDAP サーバーが匿名の読み取りアクセスに対応するよう設定されていない場合は、connectionName 属性と connectionPassword 属性を <Realm> 要素に追加します。最初の属性は、Administrator ユーザーの DN に設定します。2 番目の属性は、ユーザーの暗号化されたパスワードに設定します。次の例を参照してください。

    Sun Java System Directory Server:


    connectionName="cn=Directory Manager"
    connectionPassword="E451KDVb0OPcH+GN46OZcg=="

    Active Directory:


    connectionName="Administrator@sun.com"
    connectionPassword="geEiVIbtO+DcH+GN46OZcg=="

    OpenLDAP Directory Server:


    connectionName="cn=Manager,dc=sun,dc=com"
    connectionPassword="l/ZRt1cfNKc="

    パスワードを暗号化するには、JavaCAPS-install-dir/repository/repository/util ディレクトリにある encrypt ユーティリティーを使用します。このユーティリティーのファイル拡張子は、プラットフォームによって異なります。このユーティリティーは、暗号化されていないパスワードを引数として受け取ります。次に例を示します。


    C:\JavaCAPS6\repository\repository\util>encrypt mypwd
    LCUApSkYpuE
  7. server.xml ファイルを保存して閉じます。

  8. LDAP サーバーを起動します。

  9. リポジトリをシャットダウンし、再起動します。