You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@directory.apache.org by Ike Ikonne <ii...@us.ibm.com> on 2017/01/04 07:07:57 UTC

How to configure pwdPolicySubentry

Hi all,

I am trying to configure a per user pwdPolicy in APACHE Directory 
programmatically,
but I am getting a stacktrace. I would appreciate a hint on how to get 
this configured
successfully.

Thanks,

Ike

- javax.naming.directory.SchemaViolationException: [LDAP: error code 65 - 
OBJECT_CLASS_VIOLATION: failed for MessageType : ADD_REQUEST
Message ID : 58
    Add Request :
Entry
    dn[n]: cn=ceu_user11,ou=OCE,o=ABC,dc=example,dc=com

    cn: ceu_user11
    pwdPolicySubentry: 
ads-pwdId=default,ou=passwordPolicies,ads-interceptorId=authenticationInterceptor,ou=interceptors,ads-directoryServiceId=default,ou=config
: ERR_60 Entry cn=ceu_user11,ou=OCE,o=ABC,dc=example,dc=com does not 
contain a STRUCTURAL ObjectClass]; remaining name 
'cn=ceu_user11,ou=OCE,o=ABC,dc=example,dc=com'
        at com.sun.jndi.ldap.LdapCtx.mapErrorCode(LdapCtx.java:3133)
        at com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:3048)
        at com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:2854)
        at com.sun.jndi.ldap.LdapCtx.c_createSubcontext(LdapCtx.java:825)
        at 
com.sun.jndi.toolkit.ctx.ComponentDirContext.p_createSubcontext(ComponentDirContext.java:350)
        at 
com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.createSubcontext(PartialCompositeDirContext.java:279)
        at 
com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.createSubcontext(PartialCompositeDirContext.java:267




Re: How to configure pwdPolicySubentry

Posted by Emmanuel Lécharny <el...@gmail.com>.

Le 05/01/2017 à 02:57, Ike Ikonne a écrit :
> Hi Emmanuel,
>
> Yes, in fact, the sshPublicKey is an attribute of ldapPublicKey.

That was not my qestion. What is the schema you are importing that
contains the ldapPublicKey ObjectClass and sshPublicKey attributeType ?
Is that :

#
# LDAP Public Key Patch schema for use with openssh-ldappubkey
#                              useful with PKA-LDAP also
#
# Author: Eric AUGE <ea...@phear.org>
#
# Based on the proposal of : Mark Ruijter
#


# octetString SYNTAX
attributetype ( 1.3.6.1.4.1.24552.500.1.1.1.13 NAME 'sshPublicKey'
    DESC 'MANDATORY: OpenSSH Public key'
    EQUALITY octetStringMatch
    SYNTAX 1.3.6.1.4.1.1466.115.121.1.40 )

# printableString SYNTAX yes|no
objectclass ( 1.3.6.1.4.1.24552.500.1.1.2.0 NAME 'ldapPublicKey' SUP top
AUXILIARY
    DESC 'MANDATORY: OpenSSH LPK objectclass'
    MUST ( sshPublicKey $ uid )
)


Otherwise, which ApacheDS version are you using ?

Last, not least, can you past the piece of code where you get the
exception ?

Side note : the piece of code producing such an error is pretty smple :

        //
--------------------------------------------------------------------
        // Extract all structural objectClasses within the entry
        //
--------------------------------------------------------------------
        for ( ObjectClass oc : ocs )
        {
            if ( oc.isStructural() )
            {
                structuralObjectClasses.add( oc );
            }
        }

        //
--------------------------------------------------------------------
        // Throw an error if no STRUCTURAL objectClass are found.
        //
--------------------------------------------------------------------

        if ( structuralObjectClasses.isEmpty() )
        {
            String message = I18n.err( I18n.ERR_60, dn );
            LOG.error( message );
            throw new LdapSchemaViolationException(
ResultCodeEnum.OBJECT_CLASS_VIOLATION, message );
        }

with :

    ERR_60=Entry {0} does not contain a STRUCTURAL ObjectClass

so bottom line, we parse the entry's ObjectClass, check for each which
is STRUCTURAL, and if we have none, then we generate the error.

I suspect the entry you inject does not contain any STRUCTURAL
ObjectClass, or that the Structural ObjectClass have been stripped out
the entry before it has been sent to the server.

Is it working when you inject the entry using Directory Studio ?

-- 
Emmanuel Lecharny

Symas.com
directory.apache.org


Re: How to configure pwdPolicySubentry

Posted by Ike Ikonne <ii...@us.ibm.com>.
Hi Emmanuel,

Yes, in fact, the sshPublicKey is an attribute of ldapPublicKey.

Thanks,

Ike



From:   Emmanuel Lécharny <el...@gmail.com>
To:     users@directory.apache.org
Date:   01/04/2017 04:42 PM
Subject:        Re: How to configure pwdPolicySubentry



Weird...


The cn=iikon1,ou=OCE,o=ABC,dc=example,dc=com entry contains a Structural
ObjectClass : organizationalPerson.


Have you correctly added the schema that contains the ldapPublicKey
ObjectClass ?



Le 04/01/2017 à 21:13, Ike Ikonne a écrit :
> Hi Emmanuel,
>
> Thanks for the reply. Here is the LDIF information that you had
> requested, the first one is the password policy container, the
> second is actually the user where the pwdPolicySubentry attribute
> is being updated.
>
> ************** pwdPolicy container *******************
> dn: ou=sspPwdPolicy,o=ABC,dc=example,dc=com
> objectClass: top
> objectClass: organizationalUnit
> objectClass: pwdPolicy
> ou: sspPwdPolicy
> pwdAttribute: userPassword
>
>
> *********** user container *************************
> dn: cn=iikon1,ou=OCE,o=ABC,dc=example,dc=com
> objectClass: ldapPublicKey
> objectClass: pkiUser
> objectClass: organizationalPerson
> objectClass: person
> objectClass: top
> cn: iikon1
> sn: Ikonne
> sshPublicKey:: 
> QUFBQUIzTnphQzF5YzJFQUFBQURBUUFCQUFBQWdRQ2NlK0FEeVFXRy9IcU1WV
> 
> 
XRiRFdEUytEK2syMVYwVWxyTDhna0J4S0VuazgyU1krbUl0cjNIL0U0VGdFZWp3OGsybGtyc2E0
> 
> 
dHZNY3ZMNDNiK0psd21ob2h2S3NpVSs5ZzhkSFBLNFBwejk5QWpwZUVIVnI1cW1LYmFWcnpQSE5
> 
> 
vMk5KRSs3bkdpeW8vTEVPVEd2QkxKTmo2YlJzdmo2SVhBcW1qcG9NMEkxdz09ICAgICAgICAgIC
>  AgICAgICAgICAgICAgICAgICAgICAg
> userPassword:: 
> e1NTSEF9TkcwNGxWdllnWXdWQjVYTHJxdjNCdmtMQU1aRHFhczQ2c1IwdHc9P
>  Q==
>
> *************** stacktrace from trying to set the pwdPolicySubentry with 

> dn: ou=sspPwdPolicy,o=ABC,dc=example,dc=com **********
>
> javax.naming.directory.SchemaViolationException: [LDAP: error code 65 - 
> OBJECT_CLASS_VIOLATION: failed for MessageType : ADD_REQUEST
> Message ID : 58
>     Add Request :
> Entry
>     dn[n]: cn=iikon1,ou=OCE,o=ABC,dc=example,dc=com
>
>     cn: iikon1
>     pwdPolicySubentry: ou=sspPwdPolicy,o=ABC,dc=example,dc=com
> : ERR_60 Entry cn=iikon1,ou=OCE,o=ABC,dc=example,dc=com does not contain 
a 
> STRUCTURAL ObjectClass]; remaining name 
> 'iikon1,ou=OCE,o=ABC,dc=example,dc=com'
>         at com.sun.jndi.ldap.LdapCtx.mapErrorCode(LdapCtx.java:3133)
>         at 
com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:3048)
>         at 
com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:2854)
>         at 
com.sun.jndi.ldap.LdapCtx.c_createSubcontext(LdapCtx.java:825)
>         at 
> 
com.sun.jndi.toolkit.ctx.ComponentDirContext.p_createSubcontext(ComponentDirContext.java:350)
>         at 
> 
com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.createSubcontext(PartialCompositeDirContext.java:279)
>         at 
> 
com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.createSubcontext(PartialCompositeDirContext.java:267)
>         at 
> 
javax.naming.directory.InitialDirContext.createSubcontext(InitialDirContext.java:209)
>
>
>
> From:   Emmanuel Lécharny <el...@gmail.com>
> To:     users@directory.apache.org
> Date:   01/04/2017 02:25 AM
> Subject:        Re: How to configure pwdPolicySubentry
>
>
>
> Hi,
>
>
> can you past the entry you are injecting ? You may be missing a needed
> ObjectClass beside the 'pwdPolicy', which is Auxiliary. A Structural
> ObjectClass is needed, 'subentry' in this case.
>
>
> Le 04/01/2017 à 08:07, Ike Ikonne a écrit :
>> Hi all,
>>
>> I am trying to configure a per user pwdPolicy in APACHE Directory 
>> programmatically,
>> but I am getting a stacktrace. I would appreciate a hint on how to get 
>> this configured
>> successfully.
>>
>> Thanks,
>>
>> Ike
>>
>> - javax.naming.directory.SchemaViolationException: [LDAP: error code 65 

> - 
>> OBJECT_CLASS_VIOLATION: failed for MessageType : ADD_REQUEST
>> Message ID : 58
>>     Add Request :
>> Entry
>>     dn[n]: cn=ceu_user11,ou=OCE,o=ABC,dc=example,dc=com
>>
>>     cn: ceu_user11
>>     pwdPolicySubentry: 
>>
> 
ads-pwdId=default,ou=passwordPolicies,ads-interceptorId=authenticationInterceptor,ou=interceptors,ads-directoryServiceId=default,ou=config
>> : ERR_60 Entry cn=ceu_user11,ou=OCE,o=ABC,dc=example,dc=com does not 
>> contain a STRUCTURAL ObjectClass]; remaining name 
>> 'cn=ceu_user11,ou=OCE,o=ABC,dc=example,dc=com'
>>         at com.sun.jndi.ldap.LdapCtx.mapErrorCode(LdapCtx.java:3133)
>>         at 
> com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:3048)
>>         at 
> com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:2854)
>>         at 
> com.sun.jndi.ldap.LdapCtx.c_createSubcontext(LdapCtx.java:825)
>>         at 
>>
> 
com.sun.jndi.toolkit.ctx.ComponentDirContext.p_createSubcontext(ComponentDirContext.java:350)
>>         at 
>>
> 
com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.createSubcontext(PartialCompositeDirContext.java:279)
>>         at 
>>
> 
com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.createSubcontext(PartialCompositeDirContext.java:267
>>
>>
>>

-- 
Emmanuel Lecharny

Symas.com
directory.apache.org






Re: How to configure pwdPolicySubentry

Posted by Emmanuel Lécharny <el...@gmail.com>.
Weird...


The cn=iikon1,ou=OCE,o=ABC,dc=example,dc=com entry contains a Structural
ObjectClass : organizationalPerson.


Have you correctly added the schema that contains the ldapPublicKey
ObjectClass ?



Le 04/01/2017 à 21:13, Ike Ikonne a écrit :
> Hi Emmanuel,
>
> Thanks for the reply. Here is the LDIF information that you had
> requested, the first one is the password policy container, the
> second is actually the user where the pwdPolicySubentry attribute
> is being updated.
>
> ************** pwdPolicy container *******************
> dn: ou=sspPwdPolicy,o=ABC,dc=example,dc=com
> objectClass: top
> objectClass: organizationalUnit
> objectClass: pwdPolicy
> ou: sspPwdPolicy
> pwdAttribute: userPassword
>
>
> *********** user container *************************
> dn: cn=iikon1,ou=OCE,o=ABC,dc=example,dc=com
> objectClass: ldapPublicKey
> objectClass: pkiUser
> objectClass: organizationalPerson
> objectClass: person
> objectClass: top
> cn: iikon1
> sn: Ikonne
> sshPublicKey:: 
> QUFBQUIzTnphQzF5YzJFQUFBQURBUUFCQUFBQWdRQ2NlK0FEeVFXRy9IcU1WV
>  
> XRiRFdEUytEK2syMVYwVWxyTDhna0J4S0VuazgyU1krbUl0cjNIL0U0VGdFZWp3OGsybGtyc2E0
>  
> dHZNY3ZMNDNiK0psd21ob2h2S3NpVSs5ZzhkSFBLNFBwejk5QWpwZUVIVnI1cW1LYmFWcnpQSE5
>  
> vMk5KRSs3bkdpeW8vTEVPVEd2QkxKTmo2YlJzdmo2SVhBcW1qcG9NMEkxdz09ICAgICAgICAgIC
>  AgICAgICAgICAgICAgICAgICAgICAg
> userPassword:: 
> e1NTSEF9TkcwNGxWdllnWXdWQjVYTHJxdjNCdmtMQU1aRHFhczQ2c1IwdHc9P
>  Q==
>
> *************** stacktrace from trying to set the pwdPolicySubentry with 
> dn: ou=sspPwdPolicy,o=ABC,dc=example,dc=com **********
>
> javax.naming.directory.SchemaViolationException: [LDAP: error code 65 - 
> OBJECT_CLASS_VIOLATION: failed for MessageType : ADD_REQUEST
> Message ID : 58
>     Add Request :
> Entry
>     dn[n]: cn=iikon1,ou=OCE,o=ABC,dc=example,dc=com
>
>     cn: iikon1
>     pwdPolicySubentry: ou=sspPwdPolicy,o=ABC,dc=example,dc=com
> : ERR_60 Entry cn=iikon1,ou=OCE,o=ABC,dc=example,dc=com does not contain a 
> STRUCTURAL ObjectClass]; remaining name 
> 'iikon1,ou=OCE,o=ABC,dc=example,dc=com'
>         at com.sun.jndi.ldap.LdapCtx.mapErrorCode(LdapCtx.java:3133)
>         at com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:3048)
>         at com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:2854)
>         at com.sun.jndi.ldap.LdapCtx.c_createSubcontext(LdapCtx.java:825)
>         at 
> com.sun.jndi.toolkit.ctx.ComponentDirContext.p_createSubcontext(ComponentDirContext.java:350)
>         at 
> com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.createSubcontext(PartialCompositeDirContext.java:279)
>         at 
> com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.createSubcontext(PartialCompositeDirContext.java:267)
>         at 
> javax.naming.directory.InitialDirContext.createSubcontext(InitialDirContext.java:209)
>
>
>
> From:   Emmanuel Lécharny <el...@gmail.com>
> To:     users@directory.apache.org
> Date:   01/04/2017 02:25 AM
> Subject:        Re: How to configure pwdPolicySubentry
>
>
>
> Hi,
>
>
> can you past the entry you are injecting ? You may be missing a needed
> ObjectClass beside the 'pwdPolicy', which is Auxiliary. A Structural
> ObjectClass is needed, 'subentry' in this case.
>
>
> Le 04/01/2017 à 08:07, Ike Ikonne a écrit :
>> Hi all,
>>
>> I am trying to configure a per user pwdPolicy in APACHE Directory 
>> programmatically,
>> but I am getting a stacktrace. I would appreciate a hint on how to get 
>> this configured
>> successfully.
>>
>> Thanks,
>>
>> Ike
>>
>> - javax.naming.directory.SchemaViolationException: [LDAP: error code 65 
> - 
>> OBJECT_CLASS_VIOLATION: failed for MessageType : ADD_REQUEST
>> Message ID : 58
>>     Add Request :
>> Entry
>>     dn[n]: cn=ceu_user11,ou=OCE,o=ABC,dc=example,dc=com
>>
>>     cn: ceu_user11
>>     pwdPolicySubentry: 
>>
> ads-pwdId=default,ou=passwordPolicies,ads-interceptorId=authenticationInterceptor,ou=interceptors,ads-directoryServiceId=default,ou=config
>> : ERR_60 Entry cn=ceu_user11,ou=OCE,o=ABC,dc=example,dc=com does not 
>> contain a STRUCTURAL ObjectClass]; remaining name 
>> 'cn=ceu_user11,ou=OCE,o=ABC,dc=example,dc=com'
>>         at com.sun.jndi.ldap.LdapCtx.mapErrorCode(LdapCtx.java:3133)
>>         at 
> com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:3048)
>>         at 
> com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:2854)
>>         at 
> com.sun.jndi.ldap.LdapCtx.c_createSubcontext(LdapCtx.java:825)
>>         at 
>>
> com.sun.jndi.toolkit.ctx.ComponentDirContext.p_createSubcontext(ComponentDirContext.java:350)
>>         at 
>>
> com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.createSubcontext(PartialCompositeDirContext.java:279)
>>         at 
>>
> com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.createSubcontext(PartialCompositeDirContext.java:267
>>
>>
>>

-- 
Emmanuel Lecharny

Symas.com
directory.apache.org


Re: How to configure pwdPolicySubentry

Posted by Ike Ikonne <ii...@us.ibm.com>.
Hi Emmanuel,

Thanks for the reply. Here is the LDIF information that you had
requested, the first one is the password policy container, the
second is actually the user where the pwdPolicySubentry attribute
is being updated.

************** pwdPolicy container *******************
dn: ou=sspPwdPolicy,o=ABC,dc=example,dc=com
objectClass: top
objectClass: organizationalUnit
objectClass: pwdPolicy
ou: sspPwdPolicy
pwdAttribute: userPassword


*********** user container *************************
dn: cn=iikon1,ou=OCE,o=ABC,dc=example,dc=com
objectClass: ldapPublicKey
objectClass: pkiUser
objectClass: organizationalPerson
objectClass: person
objectClass: top
cn: iikon1
sn: Ikonne
sshPublicKey:: 
QUFBQUIzTnphQzF5YzJFQUFBQURBUUFCQUFBQWdRQ2NlK0FEeVFXRy9IcU1WV
 
XRiRFdEUytEK2syMVYwVWxyTDhna0J4S0VuazgyU1krbUl0cjNIL0U0VGdFZWp3OGsybGtyc2E0
 
dHZNY3ZMNDNiK0psd21ob2h2S3NpVSs5ZzhkSFBLNFBwejk5QWpwZUVIVnI1cW1LYmFWcnpQSE5
 
vMk5KRSs3bkdpeW8vTEVPVEd2QkxKTmo2YlJzdmo2SVhBcW1qcG9NMEkxdz09ICAgICAgICAgIC
 AgICAgICAgICAgICAgICAgICAgICAg
userPassword:: 
e1NTSEF9TkcwNGxWdllnWXdWQjVYTHJxdjNCdmtMQU1aRHFhczQ2c1IwdHc9P
 Q==

*************** stacktrace from trying to set the pwdPolicySubentry with 
dn: ou=sspPwdPolicy,o=ABC,dc=example,dc=com **********

javax.naming.directory.SchemaViolationException: [LDAP: error code 65 - 
OBJECT_CLASS_VIOLATION: failed for MessageType : ADD_REQUEST
Message ID : 58
    Add Request :
Entry
    dn[n]: cn=iikon1,ou=OCE,o=ABC,dc=example,dc=com

    cn: iikon1
    pwdPolicySubentry: ou=sspPwdPolicy,o=ABC,dc=example,dc=com
: ERR_60 Entry cn=iikon1,ou=OCE,o=ABC,dc=example,dc=com does not contain a 
STRUCTURAL ObjectClass]; remaining name 
'iikon1,ou=OCE,o=ABC,dc=example,dc=com'
        at com.sun.jndi.ldap.LdapCtx.mapErrorCode(LdapCtx.java:3133)
        at com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:3048)
        at com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:2854)
        at com.sun.jndi.ldap.LdapCtx.c_createSubcontext(LdapCtx.java:825)
        at 
com.sun.jndi.toolkit.ctx.ComponentDirContext.p_createSubcontext(ComponentDirContext.java:350)
        at 
com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.createSubcontext(PartialCompositeDirContext.java:279)
        at 
com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.createSubcontext(PartialCompositeDirContext.java:267)
        at 
javax.naming.directory.InitialDirContext.createSubcontext(InitialDirContext.java:209)



From:   Emmanuel Lécharny <el...@gmail.com>
To:     users@directory.apache.org
Date:   01/04/2017 02:25 AM
Subject:        Re: How to configure pwdPolicySubentry



Hi,


can you past the entry you are injecting ? You may be missing a needed
ObjectClass beside the 'pwdPolicy', which is Auxiliary. A Structural
ObjectClass is needed, 'subentry' in this case.


Le 04/01/2017 à 08:07, Ike Ikonne a écrit :
> Hi all,
>
> I am trying to configure a per user pwdPolicy in APACHE Directory 
> programmatically,
> but I am getting a stacktrace. I would appreciate a hint on how to get 
> this configured
> successfully.
>
> Thanks,
>
> Ike
>
> - javax.naming.directory.SchemaViolationException: [LDAP: error code 65 
- 
> OBJECT_CLASS_VIOLATION: failed for MessageType : ADD_REQUEST
> Message ID : 58
>     Add Request :
> Entry
>     dn[n]: cn=ceu_user11,ou=OCE,o=ABC,dc=example,dc=com
>
>     cn: ceu_user11
>     pwdPolicySubentry: 
> 
ads-pwdId=default,ou=passwordPolicies,ads-interceptorId=authenticationInterceptor,ou=interceptors,ads-directoryServiceId=default,ou=config
> : ERR_60 Entry cn=ceu_user11,ou=OCE,o=ABC,dc=example,dc=com does not 
> contain a STRUCTURAL ObjectClass]; remaining name 
> 'cn=ceu_user11,ou=OCE,o=ABC,dc=example,dc=com'
>         at com.sun.jndi.ldap.LdapCtx.mapErrorCode(LdapCtx.java:3133)
>         at 
com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:3048)
>         at 
com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:2854)
>         at 
com.sun.jndi.ldap.LdapCtx.c_createSubcontext(LdapCtx.java:825)
>         at 
> 
com.sun.jndi.toolkit.ctx.ComponentDirContext.p_createSubcontext(ComponentDirContext.java:350)
>         at 
> 
com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.createSubcontext(PartialCompositeDirContext.java:279)
>         at 
> 
com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.createSubcontext(PartialCompositeDirContext.java:267
>
>
>
>

-- 
Emmanuel Lecharny

Symas.com
directory.apache.org






Re: How to configure pwdPolicySubentry

Posted by Emmanuel Lécharny <el...@gmail.com>.
Hi,


can you past the entry you are injecting ? You may be missing a needed
ObjectClass beside the 'pwdPolicy', which is Auxiliary. A Structural
ObjectClass is needed, 'subentry' in this case.


Le 04/01/2017 à 08:07, Ike Ikonne a écrit :
> Hi all,
>
> I am trying to configure a per user pwdPolicy in APACHE Directory 
> programmatically,
> but I am getting a stacktrace. I would appreciate a hint on how to get 
> this configured
> successfully.
>
> Thanks,
>
> Ike
>
> - javax.naming.directory.SchemaViolationException: [LDAP: error code 65 - 
> OBJECT_CLASS_VIOLATION: failed for MessageType : ADD_REQUEST
> Message ID : 58
>     Add Request :
> Entry
>     dn[n]: cn=ceu_user11,ou=OCE,o=ABC,dc=example,dc=com
>
>     cn: ceu_user11
>     pwdPolicySubentry: 
> ads-pwdId=default,ou=passwordPolicies,ads-interceptorId=authenticationInterceptor,ou=interceptors,ads-directoryServiceId=default,ou=config
> : ERR_60 Entry cn=ceu_user11,ou=OCE,o=ABC,dc=example,dc=com does not 
> contain a STRUCTURAL ObjectClass]; remaining name 
> 'cn=ceu_user11,ou=OCE,o=ABC,dc=example,dc=com'
>         at com.sun.jndi.ldap.LdapCtx.mapErrorCode(LdapCtx.java:3133)
>         at com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:3048)
>         at com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:2854)
>         at com.sun.jndi.ldap.LdapCtx.c_createSubcontext(LdapCtx.java:825)
>         at 
> com.sun.jndi.toolkit.ctx.ComponentDirContext.p_createSubcontext(ComponentDirContext.java:350)
>         at 
> com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.createSubcontext(PartialCompositeDirContext.java:279)
>         at 
> com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.createSubcontext(PartialCompositeDirContext.java:267
>
>
>
>

-- 
Emmanuel Lecharny

Symas.com
directory.apache.org