directory-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Alex Karasulu <aok...@bellsouth.net>
Subject Re: No Schema published?
Date Fri, 03 Dec 2004 20:09:01 GMT
Mark Swanson wrote:

>Hello,
>
>I'm trying to add a user with JXplorer and receive:
>"Because there is no schema currently published by the directory, adding a new 
>entry is unavailable.".
>
>  
>
Ahhhh right now there is very minimal schema support.  I have not added 
anything for the schemaSubentry.  Actually this would be really easy to 
do.  All the schema objects exist within the system in memory within 
registries.  I just need to have a subschemaSubentry attribute in the 
RootDSE pointing to something like cn=schema or something which 
dynamically creates an entry by doing a toString on all objects in the 
registry.  Yeah this is like a 3-8 hour task.  It should be done for 
0.8.0 for sure to make anything useful.  We may not enable schema 
checking at this point but we sure do need to have a subschemaSubentry. 

Lots of clients need it to create forms for adding new entries.  That's 
how they figure out the attributes needed.  Ok Mark can you file this in 
JIRA too and I'll get to it.  I'll try to get to this one soon as well.

>I can try to add entries via ldapadd but that doesn't work as I don't know 
>what the bindDN/password is. Does anyone know what that would be?
>  
>
Ahhh this is where documentation would really help eh :-).  Ok lemme 
tell ya how this works.  When you start Eve for the very first time she 
creates the system database off of ou=system with users and stuff under 
it.  Basically this bundled LDIF is imported on the first time the 
server starts and creates the system partition.  Here's the LDIF if you 
like to look at it:

https://svn.apache.org/viewcvs.cgi/incubator/directory/eve/trunk/jndi-provider/src/java/org/apache/eve/jndi/system.ldif?rev=56199&view=auto

So right now its very minimal.  I got a test user in there; me and the 
users and groups ou's etc.  Besides importing this LDIF a very special 
uid=admin,ou=system user is created.  No users other then the admin can 
even browse this by default.  This is hard coded purposefully into the 
server. 

The idea for using Eve is this.  If you fire it up without password info 
in the env Hashtable then on the first start the password for this admin 
user becomes the empty string and you operate as the admin all the 
time.  Meaning you don't care about security and are just using an LDAP 
namespace store.  If you do provide credentials for the admin user as 
the principal (Context.SECURITY_PRINCIPAL) in the properties file then 
this is set as the admin password when creating the entry on the first 
start.

I have a meeting to go to right now but I will continue this thread soon. 

>(I tried uid=admin,ou=system password=secret but that didn't work)
>
>When I try to start eve by specifying the eve/eve.properties that fails too 
>(and I can no longer connect if I do this)
>
>eve.properties:
>java.naming.factory.initial=org.apache.eve.jndi.EveContextFactory
>java.naming.security.authentication=simple
>java.naming.security.principal=uid=admin,ou=system
>java.naming.security.credentials=secret
>
>
>#
># LDAP Provider Properties
>#
>
>#java.naming.ldap.attributes.binary=
>
>
>#
># Eve Provider Properties
>#
>
>eve.wkdir=eve
>eve.enable.anonymous=true
>
>eve.net.ldap.port=10389
>eve.net.ldaps.port=10636
>
>Start eve via:java -jar eve/target/eve-SNAPSHOT.jar eve/eve.properties
>
>Error: (no client causes this - eve prints this every 30 seconds or so. I am 
>unable to connect at all)
>
>Eve: loading properties from eve/eve.properties
>org.apache.ldap.common.exception.LdapAuthenticationException
>        at 
>org.apache.eve.jndi.AuthenticationService.invoke(AuthenticationService.java:139)
>        at 
>org.apache.eve.jndi.FailFastPipeline.invoke(FailFastPipeline.java:62)
>        at 
>org.apache.eve.jndi.EveJndiProvider.invoke(EveJndiProvider.java:180)
>        at $Proxy0.hasEntry(Unknown Source)
>        at org.apache.eve.jndi.EveContext.<init>(EveContext.java:103)
>        at org.apache.eve.jndi.EveDirContext.<init>(EveDirContext.java:72)
>        at org.apache.eve.jndi.EveLdapContext.<init>(EveLdapContext.java:58)
>        at 
>org.apache.eve.jndi.EveJndiProvider.getLdapContext(EveJndiProvider.java:125)
>        at 
>org.apache.eve.jndi.EveContextFactory.getInitialContext(EveContextFactory.java:278)
>        at 
>javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:667)
>        at 
>javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:247)
>        at javax.naming.InitialContext.init(InitialContext.java:223)
>        at javax.naming.InitialContext.<init>(InitialContext.java:197)
>        at 
>javax.naming.directory.InitialDirContext.<init>(InitialDirContext.java:82)
>        at org.apache.eve.EveMain.main(EveMain.java:84)
>Eve: started in 1224 milliseconds
>
>
>Thank you for any suggestions.
>
>Cheers.
>
>
>  
>


Mime
View raw message