Dashboard > Penrose > ... > CA eTrust Directory > eTrust Directory Integration - Penrose Configuration
eTrust Directory Integration - Penrose Configuration
Added by Jim Yang, last edited by Jim Yang on Apr 27, 2006
Labels: 
(None)


Configure Connections

Add a connection to eTrust Directory. Edit PENROSE_SERVER_HOME\conf\connections.xml:

<connections>

  <connection name="Example">
    <adapter-name>JDBC</adapter-name>
    <parameter>
      <param-name>driver</param-name>
      <param-value>com.mysql.jdbc.Driver</param-value>
    </parameter>
    <parameter>
      <param-name>password</param-name>
      <param-value>penrose</param-value>
    </parameter>
    <parameter>
      <param-name>url</param-name>
      <param-value>jdbc:mysql://localhost:3306/example?autoReconnect=true</param-value>
    </parameter>
    <parameter>
      <param-name>user</param-name>
      <param-value>penrose</param-value>
    </parameter>
  </connection>

  <connection name="Penrose">
    <adapter-name>JDBC</adapter-name>
    <parameter>
      <param-name>driver</param-name>
      <param-value>com.mysql.jdbc.Driver</param-value>
    </parameter>
    <parameter>
      <param-name>password</param-name>
      <param-value>penrose</param-value>
    </parameter>
    <parameter>
      <param-name>url</param-name>
      <param-value>jdbc:mysql://localhost:3306/penrose?autoReconnect=true</param-value>
    </parameter>
    <parameter>
      <param-name>user</param-name>
      <param-value>penrose</param-value>
    </parameter>
  </connection>

  <connection name="EDS">
    <adapter-name>JNDI</adapter-name>
    <parameter>
      <param-name>java.naming.factory.initial</param-name>
      <param-value>com.sun.jndi.ldap.LdapCtxFactory</param-value>
    </parameter>
    <parameter>
      <param-name>java.naming.provider.url</param-name>
      <param-value>ldap://hostname:19589/dc=Example,dc=com</param-value>
    </parameter>
    <parameter>
      <param-name>java.naming.security.credentials</param-name>
      <param-value>penrose</param-value>
    </parameter>
    <parameter>
      <param-name>java.naming.security.principal</param-name>
      <param-value>uid=penrose,ou=Users,dc=Example,dc=com</param-value>
    </parameter>
  </connection>

</connections>

See also Connections.

Create Sources

The complete source configuration can be found in PENROSE_SERVER_HOME/samples/conf/sources.xml. For simplicity, we will only use the following sources:

<sources>

  <source name="categories">
    <connection-name>Example</connection-name>
    <field name="description"/>
    <field name="id" primaryKey="true" type="INTEGER"/>
    <field name="name"/>
    <parameter>
      <param-name>tableName</param-name>
      <param-value>categories</param-value>
    </parameter>
  </source>

  <source name="products">
    <connection-name>Example</connection-name>
    <field name="categoryId" type="INTEGER"/>
    <field name="id" primaryKey="true" type="INTEGER"/>
    <field name="name"/>
    <field name="price" type="DOUBLE"/>
    <parameter>
      <param-name>tableName</param-name>
      <param-value>products</param-value>
    </parameter>
  </source>

</sources>

See also Sources.

Create Mapping

The complete mapping configuration can be found in PENROSE_SERVER_HOME/samples/conf/mapping.xml. For simplicity, we will only use the following mappings:

<mapping>

  <entry dn="ou=Categories,dc=Example,dc=com">
    <oc>organizationalUnit</oc>
    <oc>top</oc>
    <at name="ou" rdn="true">
      <constant>Categories</constant>
    </at>
  </entry>

  <entry dn="cn=...,ou=Categories,dc=Example,dc=com">
    <oc>category</oc>
    <oc>top</oc>
    <at name="description">
      <variable>categories.id</variable>
    </at>
    <at name="cn" rdn="true">
      <variable>categories.name</variable>
    </at>
    <source name="categories">
      <source-name>categories</source-name>
      <field name="id">
        <variable>description</variable>
      </field>
      <field name="name">
        <variable>cn</variable>
      </field>
    </source>
  </entry>

  <entry dn="cn=...,cn=...,ou=Categories,dc=Example,dc=com">
    <oc>product</oc>
    <oc>top</oc>
    <at name="description">
      <variable>products.id</variable>
    </at>
    <at name="cn" rdn="true">
      <variable>products.name</variable>
    </at>
    <source name="products">
      <source-name>products</source-name>
      <field name="id">
        <variable>description</variable>
      </field>
      <field name="name">
        <variable>cn</variable>
      </field>
    </source>
    <relationship>
      <expression>products.categoryId = categories.id</expression>
    </relationship>
  </entry>

</mapping>

See also Entry Mappings.

Configure Schema

Copy the following files from PENROSE_SERVER_HOME/samples/schema:

  • example.schema
  • example.jar

into PENROSE_SERVER_HOME/schema/ext.

Edit PENROSE_SERVER_HOME/conf/server.xml:

<server>

  <schema name="example" path="schema/ext/example.schema"/>

</server>

See also Schema.

Configure Persistent Cache

Enable the Persistent Cache. Edit PENROSE_SERVER_HOME/conf/server.xml:

<server>

  <entry-cache>
    <cache-class>org.safehaus.penrose.cache.PersistentEntryCache</cache-class>
    <parameter>
      <param-name>connection</param-name>
      <param-value>Penrose</param-value>
    </parameter>
  </entry-cache>

  <source-cache>
    <cache-class>org.safehaus.penrose.cache.PersistentSourceCache</cache-class>
    <parameter>
      <param-name>connection</param-name>
      <param-value>Penrose</param-value>
    </parameter>
  </source-cache>

</server>

See also Persistent Cache.

Configure Polling Connector Module

Enable the Polling Connector Module. Edit PENROSE_SERVER_HOME/conf/modules.xml:

<modules>

  <module name="Polling Connector" enabled="true">
    <module-class>org.safehaus.penrose.connector.PollingConnectorModule</module-class>
    <parameter>
      <param-name>interval</param-name>
      <param-value>5</param-value>
    </parameter>
  </module>

</modules>

See also Polling Connector Module.

Configure LDAP Sync Module

Enable the LDAP Sync Module. Edit PENROSE_SERVER_HOME/conf/modules.xml:

<modules>

  <module name="LDAP Sync" enabled="true">
    <module-class>org.safehaus.penrose.ldap.LDAPSyncModule</module-class>
    <parameter>
      <param-name>connection</param-name>
      <param-value>EDS</param-value>
    </parameter>
  </module>

</modules>

See also LDAP Sync Module.

Configure eTrust Directory Module

Configure eTrust Directory module. Edit PENROSE_SERVER_HOME\conf\modules.xml:

<modules>

  <module name="eTrust Directory Service">
    <module-class>com.identyx.penrose.etrust.ETrustDirectoryModule</service-module>
    <parameter>
      <param-name>connection</param-name>
      <param-value>...</param-value>
    </parameter>
    <parameter>
      <param-name>home</param-name>
      <param-value>...</param-value>
    </parameter>
    <parameter>
      <param-name>interval</param-name>
      <param-value>...</param-value>
    </parameter>
    <parameter>
      <param-name>server</param-name>
      <param-value>...</param-value>
    </parameter>
  </module>

</modules>

This module will check the update log in eTrust Directory based on the following parameters:

Parameter Description Example
connection Name of connection to eTrust Directory as defined in connections.xml EDS
home Home directory of eTrust Directory c:\Program Files\CA\eTrust Directory
interval Interval for checking the update log, in seconds. (default: 5). 5
server eTrust Directory DSA name democorp

See also Modules.

Initialize Cache

In PENROSE_SERVER_HOME/bin, execute:

cache.bat create
cache.bat load

This will take a while to execute. See also Persistent Cache.

Start Penrose

In PENROSE_SERVER_HOME/bin, execute:

penrose.bat

Site running on a free Atlassian Confluence Open Source Project License granted to Safehaus. Evaluate Confluence today.
Powered by Atlassian Confluence, the Enterprise Wiki. (Version: 2.5.4 Build:#809 Jun 12, 2007) - Bug/feature request - Contact Administrators