Adattamento del file di conversione LDAP

Descrive il modo in cui adattare il file di conversione LDAP per lo schema LDAP.

Il file LDAPTransformation.xsl predefinito mappa i verbi di staff predefiniti alle query LDAP, che utilizzano gli elementi dello schema LDAP predefinito presunto da WebSphere. Questo schema presuppone quanto segue:
Se lo schema LDAP caratterizza diversi nomi di attributi e classe di oggetti, è necessario modificare le impostazioni nei file di conversione LDAP utilizzati. Per il file LDAPTransformation.xsl predefinito, la modifica dell'impostazione può essere effettuata nella parte della dichiarazione della variabile del file:
  <xsl:variable name="DefaultGroupClass">groupOfNames</xsl:variable>
  <xsl:variable name="DefaultGroupClassMemberAttribute">member</xsl:variable>
  
  <xsl:variable name="DefaultPersonClass">inetOrgPerson</xsl:variable>
  <xsl:variable name="DefaultUserIDAttribute">uid</xsl:variable>
  <xsl:variable name="DefaultMailAttribute">mail</xsl:variable>  
  <xsl:variable name="DefaultManagerAttribute">manager</xsl:variable>

E' possibile applicare le modifiche all'interno delle maschere XSL che trasformano i verbi di staff singoli, come illustrato nei seguenti esempi:

Esempio: DepartmentMembers

Modificando la classe dell'oggetto per le voci di un utente in ePerson e l'attributo dell'ID di collegamento su cn:
<sldap:StaffQueries>
  <xsl:attribute name="threshold">
    <xsl:value-of select="$Threshold">
  </xsl:attribute> 

  <sldap:search>
...
    <sldap:attribute>
      <xsl:attribute name="name">cn</xsl:attribute>
      <xsl:attribute name="objectclass">ePerson</xsl:attribute>
      <xsl:attribute name="usage">simple</xsl:attribute>
    </sldap:attribute>

  </sldap:search>
</sldap:StaffQueries>

Esempio: GroupMembers

Se si modifica la classe di oggetti per le voci del gruppo su groupOfUniqueNames, l'attributo delle voci del gruppo contiene l'elenco DN del membro su uniqueMember e l'attributo della voce utente contiene la registrazione in cn:
<sldap:usersOfGroup>
...

  <sldap:attribute>
    <xsl:attribute name="name">uniqueMember</xsl:attribute>
    <xsl:attribute name="objectclass">groupOfUniqueNames</xsl:attribute>
    <xsl:attribute name="usage">recursive</xsl:attribute>
  </sldap:attribute> 

  ...
  <sldap:attribute>
    <xsl:attribute name="name">cn</xsl:attribute>
    <xsl:attribute name="objectclass">inetOrgPerson</xsl:attribute>
    <xsl:attribute name="usage">simple</xsl:attribute>
  </sldap:attribute>

</sldap:usersOfGroup>

Esempio: GroupMembersWithoutFilteredUsers

Se si modifica l'operatore del filtro LDAP su >=.
<sldap:StaffQueries>
  <sldap:usersOfGroup>
    ...
  </sldap:usersOfGroup>

  <sldap:intermediateResult> 
    <xsl:attribute name="name">filteredusers</xsl:attribute>
    <sldap:search>
      <xsl:attribute name="filter">
        <xsl:value-of select="staff:parameter[@id='FilterAttribute']"/>
         >=
        <xsl:value-of select="staff:parameter[@id='FilterValue']"/>
      </xsl:attribute> 
     ...
    <sldap:search>
     ...
    
  </sldap:intermediateResult>
   ...
</sldap:StaffQueries>

Esempio: GroupSearch

Se si modifica l'attributo di ricerca su MyType, la classe degli oggetti su mypersonclass e l'attributo contenente l'ID di collegamento su myuid.
<sldap:StaffQueries>
 ...
  <sldap:search>
    <xsl:attribute name="filter">
      (&amp;
       ...
      <xsl:if test="staff:parameter[@id='MyType']!="">
       (<xsl:value-of select="$GS_Type"/>=
        <xsl:value-of select=staff:parameter[@id='Type']"/>)
      </xsl:if>
      )
       ...
    </xsl:attribute>

    <sldap:attribute> 
      <xsl:attribute name="name">myuid</xsl:attribute>
      <xsl:attribute name="objectclass">mypersonclass</xsl:attribute>
      <xsl:attribute name="usage">simple</xsl:attribute>
    </sldap:attribute> 
     ...
  <sldap:search>
</sldap:StaffQueries>

Esempio: Dirigente degli impiegati

Se si modifica l'attributo contenente il DN del dirigente su managerentry e l'origine dell'attributo dell'ID di collegamento del dirigente su name.
<sldap:StaffQueries>
 
  <sldap:intermediateResult>
   ...
    <sldap:user>
     ...
      <xsl:attribute name="name">managerentry</xsl:attribute>
       ...
     </sldap:user>
   </sldap:intermediateResult>

  <sldap:user>
   ...
    <xsl:attribute name="name">name</xsl:attribute>
     ...
  </sldap:user>
</sldap:StaffQueries>

Esempio: PersonSearch

Se si modifica l'attributo di ricerca su MyAttribute, l'oggetto della classe su mypersonclasse l'origine dell'attributo di restituzione su myuid.
<sldap:StaffQueries>
 ...
  <sldap:search>
    <xsl:attribute name="filter">
      (&amp;
       ...
      <xsl:if test="staff:parameter[@id='MyAttribute']!="">
       (<xsl:value-of select="$PS_UserID"/>=
        <xsl:value-of select=staff:parameter[@id='UserID']"/>)
      )
      </xsl:if>
       ...
    </xsl:attribute>

    <sldap:attribute> 
      <xsl:attribute name="name">myuid</xsl:attribute>
      <xsl:attribute name="objectclass">mypersonclass</xsl:attribute>
      <xsl:attribute name="usage">simple</xsl:attribute>
    </sldap:attribute> 
     ...
  </sldap:search>
</sldap:StaffQueries>

Esempio: Users

Se si modifica l'origine dell'attributo di restituzione su myuid e la classe dell'oggetto su mypersonclass.
<sldap:user>
 ...
  <xsl:attribute name="attribute">myuid</xsl:attribute>
  <xsl:attribute name="objectclass">mypersonclass</xsl:attribute>
</sldap:user>

Terms of use |

Last updated: Thu Mar 30 14:34:14 2006

(c) Copyright IBM Corporation 2005, 2006.
This information center is powered by Eclipse technology (http://www.eclipse.org)