2012-06-24 12 views
6

Sto tentando di simulare l'attributo memberOf di Active Directory in Apache Directory. Ho aggiunto la seguente voce per memberOf al mio file LDIF:Aggiungi attributo 'memberOf' ad ApacheDS

dn: m-oid=1.3.6.1.4.1.18060.0.4.3.2.1,ou=attributeTypes,cn=other,ou=schema 
m-usage: USER_APPLICATIONS 
m-equality: distinguishedNameMatch 
objectClass: metaAttributeType 
objectClass: metaTop 
objectClass: top 
m-name: memberOf 
m-oid: 1.3.6.1.4.1.18060.0.4.3.2.1 
m-obsolete: FALSE 
m-noUserModification: FALSE 
m-syntax: 1.3.6.1.4.1.1466.115.121.1.27 

Quando inizio ApacheDS il seguente avviso viene registrato:

WARN [ContainerBackgroundProcessor[StandardEngine[Catalina]]] entry.ServerStringValue - Cannot normalize the value :Encountered name based id of memberOf which was not found in the OID registry 

Questo provoca problemi in seguito, perché la mia applicazione tenta di utente il memberOf attributo come filtro di ricerca.

C'è qualcosa di sbagliato nel modo in cui ho specificato la voce LDIF?

risposta

1

Potrebbe essere necessario aggiungere lo schema che contiene 'memberOf' nella configurazione di ApacheDS.

3

Il team di ApacheDS è a conoscenza del desiderio dell'attributo virtuale virtuale. Essi indicano che sarà parte del 2.1.0 release:

Le 5/20/13 17:53, Danielsen, Jay un écrit:

vedo dagli archivi ° gennaio 2013 che memberOf virtuale l'attributo non è ancora supportato. Ci sono piani o work in progress per supportare memberOf in una prossima versione? Morissimo sicuramente in 2.1.0.

Ci sono attualmente occupato la pulizia di 150 questioni in sospeso prima di un rilascio 2.0.0-RC1, quindi penso che questo è qualcosa che possiamo avere nei prossimi 6 mesi.

È possibile creare un JIRA per richiedere tale funzione.

Grazie!

- Saluti, Cordialement, Emmanuel Lécharny www.iktek.com

E here è la richiesta JIRA.

+2

dovrebbe urtare la richiesta – codenamezero

+0

@codenamezero Sì, naturalmente. Ci sono circa 4 anni passati, e non c'è ancora un attributo 'memberOf' in ApacheDS ... – Lion

-2

Non è la risposta alla tua domanda e non è una buona pratica, ma puoi usare un altro attributo esistente per emularlo.

Utilizziamo ApacheDS solo per i test, quindi potrebbe essere a posto. Abbiamo utilizzato l'attributo "title", ma potrebbe essercene un altro che è possibile utilizzare senza rischi.

8

Per i miei casi di test di integrazione in cima incorporato Directory Server Apache ho aggiunto sia memberOf e samAccountName attributi definiti nel server Active Directory di Microsoft.

######################################################### 
# MICROSOFT SCHEMA for sAMAccountName and memberOf 
# these two attributes are not defined in Apache Directory Server 
######################################################### 

dn: cn=microsoft, ou=schema 
objectclass: metaSchema 
objectclass: top 
cn: microsoft 

dn: ou=attributetypes, cn=microsoft, ou=schema 
objectclass: organizationalUnit 
objectclass: top 
ou: attributetypes 

dn: m-oid=1.2.840.113556.1.4.221, ou=attributetypes, cn=microsoft, ou=schema 
objectclass: metaAttributeType 
objectclass: metaTop 
objectclass: top 
m-oid: 1.2.840.113556.1.4.221 
m-name: sAMAccountName 
m-equality: caseIgnoreMatch 
m-syntax: 1.3.6.1.4.1.1466.115.121.1.15 
m-singleValue: TRUE 

dn: m-oid=1.2.840.113556.1.4.222, ou=attributetypes, cn=microsoft, ou=schema 
objectclass: metaAttributeType 
objectclass: metaTop 
objectclass: top 
m-oid: 1.2.840.113556.1.4.222 
m-name: memberOf 
m-equality: caseIgnoreMatch 
m-syntax: 1.3.6.1.4.1.1466.115.121.1.15 
m-singleValue: FALSE 

dn: ou=objectclasses, cn=microsoft, ou=schema 
objectclass: organizationalUnit 
objectclass: top 
ou: objectClasses 

dn: m-oid=1.2.840.113556.1.5.6, ou=objectclasses, cn=microsoft, ou=schema 
objectclass: metaObjectClass 
objectclass: metaTop 
objectclass: top 
m-oid: 1.2.840.113556.1.5.6 
m-name: simulatedMicrosoftSecurityPrincipal 
m-supObjectClass: top 
m-typeObjectClass: AUXILIARY 
m-must: sAMAccountName 
m-may: memberOf 

####################################################### 
# Megacorp employees 
####################################################### 

dn: cn=EmployeeABC,ou=nl_users,DC=corp,DC=megacorp,DC=COM 
objectClass: top 
objectClass: person 
objectClass: organizationalPerson 
objectClass: inetOrgPerson 
objectclass: simulatedMicrosoftSecurityPrincipal 
cn: EmployeeABC 
sn: EmployeeABC 
givenName: EmployeeABC 
mail: [email protected] 
MEMBEROF: CN=just-users,OU=mc_groups,DC=corp,DC=megacorp,DC=com 
MEMBEROF: CN=best-users,OU=mc_groups,DC=corp,DC=megacorp,DC=com 
SAMACCOUNTNAME: employeeabc 
+0

Ho importato la structue come LDIF in Apache Directory Studio. Ma non ho un tipo chiamato 'simulatedMicrosoftSecurityPrincipal', che dovrebbe essere lì, quando capisco il tuo codice giusto. Anche inetOrgPerson non ha attributo 'memberOf'. – Lion

+0

Hai ricevuto errori o avvisi? –

+0

Colpa mia, come principiante non ero a conoscenza del fatto che dovevo riavviare il server. Ora funziona. Ho altre domande, ma penso che siano troppo lunghe per un commento, quindi ne creerò una nuova. – Lion

Problemi correlati