Integration with Active Directory - LDAP

Post any questions you have about using the Verj.io Studio, including client and server-side programming with Javascript or FPL, and integration with databases, web services etc.

Moderators: Jon, Steve, Ian, Dave

Vircos
Ebase User
Posts: 97
Joined: Thu Sep 13, 2007 6:07 am
Location: The Netherlands

Integration with Active Directory - LDAP

#1

Postby Vircos » Thu Sep 13, 2007 10:39 am

It is possible to integrate Ebase with Active Directory if you use Apache Tomcat instead of IIS as webserver.
This is possible by using the JCIFS module made available by the people of samba.

This has been tested with Ebase version 3.4

1. You can download the JCIFS module, which is actually a JAR-file, from: http://jcifs.samba.org/src/docs/ntlmhttpauth.html
Put the file JCIFS.jar in the following directory: ../UfsServer/tomcat/webapps/ufs/WEB-INF/lib

2. The next step is editing the file: ../UfsServer/tomcat/webapps/ufs/WEB-INF/web.xml

Place the following code after <display-name>UFSWebModule</display-name>

Code: Select all

<filter>
    <filter-name>NtlmHttpFilter</filter-name>
    <filter-class>jcifs.http.NtlmHttpFilter</filter-class>
    <init-param>
        <param-name>jcifs.http.domainController</param-name>
        <param-value>%IP-DOMAIN-CONTROLLER%</param-value>
    </init-param>
    <init-param>
        <param-name>jcifs.smb.client.domain</param-name>
        <param-value>%DOMAIN%</param-value>
    </init-param>
    <init-param>
        <param-name>jcifs.smb.client.username</param-name>
        <param-value>%USER%</param-value>
    </init-param>
    <init-param>
         <param-name>jcifs.smb.client.password</param-name>
         <param-value>%PASSWORD%</param-value>
     </init-param>
</filter>
<filter-mapping>
    <filter-name>NtlmHttpFilter</filter-name>
    <url-pattern>/ufsmain</url-pattern>
</filter-mapping>
Replace the following variables:

- %IP-DOMAIN-CONTROLLER% -> The IP-adres of your domaincontroller
- %DOMAIN% -> Your domain
- %USER% -> Username of a valid domain user
- %PASSWORD% -> The password of the domain user

You have to supply a username and password because Ebase needs to pre-authenticate itselfs at the domaincontroller.

In the same file put the following code between <!-- and -->

Code: Select all

<error-page id="ErrorCodeErrorPage_2">
    <error-code>401</error-code>
    <location>/ufs_authentication_error_page.htm</location>
</error-page>
This will disable the authentication error page, but if you leave it enabled Tomcat might crash if authentication fails.
At the moment I do not know why but I did find out that it is a common problem and that the latest version of tomcat should not have this problem.
(see the JCIFS mailing list at http://jcifs.samba.org).

3. Edit the file: ../UfsServer/tomcat/conf/server.xml

Find: <!-- Define a non-SSL HTTP/1.1 Connector on port 3030 -->
Add tomcatAuthentication="false" to this connector.

Find: <!-- Define an AJP 1.3 Connector on port 8009 -->
Add tomcatAuthentication="false" to this connector.


4. The final step is editing the file: ../UfsServer/tomcat/conf/context.xml

Remove the <!-- and --> entry before and after <Manager pathname="" />

5.
Restart Apache Tomcat.

If everything works fine the Ebase variable $USER should supply the NT-username.

You can do a lot more with JCIFS.
For more information please see http://jcifs.samba.org/src/docs/ntlmhttpauth.html
0 x
What's the meaning of Justice...

User avatar
Andy McMaster
Ebase User
Posts: 33
Joined: Fri Feb 29, 2008 12:08 pm
Location: Newcastle upon Tyne
Contact:

#2

Postby Andy McMaster » Thu Apr 03, 2008 6:50 am

Vircos wrote:It is also possible to integrate Ebase with Active Directory if you use Apache Tomcat instead of IIS as webserver.
Hi,

Been trying to set this up and not having much success. Followed the instructions in your post.

I'm trying to setup pulling in the current user logon id when running a form. However, when I run the form (I'm just using a local install at the moment) $USER always returns 'ebaseuser'

I'm not currently using AD/LDAP for authentication for ebase login. I just want to check the user details at runtime.

Am I missing something here or is the setup more involved?


Additional Info:

Server startup log says:

Code: Select all

LDAP Registry Properties&#58;-
Attributes File Name&#58; ../../tomcat/webapps/ufs/preferences/ldap_attrib
utes.xml
Host&#58; null
Port&#58; 389
Base Distinguished Name&#58; null
Bind Distinguished Name&#58; null
User Key Attribute Name&#58; cn
Cache refresh period&#58; 0
Not sure why host is null.

When I try to load a form that access say $USER_EMAIL I get:

Code: Select all

* Script SETLOGONID&#58; Invalid SET expression set loginid = $USER_EMAIL - No LDAP registry host specified&#58; UFSSetup.properties parameter ldap.registryHost *
And in UFSSetup.properties I have:

Code: Select all

#
# LDAP attributes &#58; attributes to be made available from LDAP directory
#
ldap.registryHost=10.100.11.145
Any suggestions would be much appreciated, if only on ways to pin down the problem.

Andy
0 x
<b>Do not despise the snake for having no horns for who is to say it will not become a dragon</b>

Vircos
Ebase User
Posts: 97
Joined: Thu Sep 13, 2007 6:07 am
Location: The Netherlands

#3

Postby Vircos » Thu Apr 03, 2008 7:02 am

JCIFS uses the NTLM protocol to retrieve the windows user id. It actually does the same as described by Sarah. So it is not really an integration with the Active Directory using LDAP. The NTLM protocol is only supported by Internet Explorer and FireFox.

If you follow the steps as described by me the Ebase $USER variable should return the windows user id. Do you get any errors regarding JCIFS or NTLM in the server log?
0 x
What's the meaning of Justice...

ehmd
Ebase User
Posts: 53
Joined: Thu Sep 13, 2007 9:02 am
Contact:

#4

Postby ehmd » Thu Apr 03, 2008 7:28 am

Andy,

You will also need additional entries in your UFSSetup.properties file for AD Authentication.

Code: Select all

Ufs.ldapAttributesFileName=C&#58;/ufs/server/tomcat/webapps/ufs/preferences/ldap_attributes.xml
ldap.registryHost=xxx.xxx.xxx.xxx
ldap.registryPort=389
ldap.baseDistinguishedName=DC=MY,DC=DOMAIN
ldap.userKeyAttributeName=samAccountName
ldap.userRoleAttributeName=memberOf
ldap.bindDistinguishedName=<AD User>@MY.DOMAIN
ldap.bindPassword=<User Password>
ldap.cacheRefreshPeriod=30
ldap.debug=true
The above specifies which Domain to connect to and also an AD User to logon with. This user only need minimum privileges to connect to the Domain to read from AD. You may need to talk to your AD Administrator to get the correct 'internal' domain name as the domain you see on your Windows login prompt does not always match the 'internal domain name'.

Also you need to configure you ldap_attributes.xml file to map various $USER_xxxx variables onto AD attributes. Sample I use here is :-

Code: Select all


<document type="LDAP_Attributes">
  <user-attributes>
     <attribute>
      <name>$USER_EMAIL</name>
      <directory-attribute-name>mail</directory-attribute-name>
      <directory-attribute-type>String</directory-attribute-type>
    </attribute>
    <attribute>
      <name>$USER_SURNAME</name>
      <directory-attribute-name>sn</directory-attribute-name>
      <directory-attribute-type>String</directory-attribute-type>
    </attribute>
    <attribute>
      <name>$USER_FORENAME</name>
      <directory-attribute-name>givenName</directory-attribute-name>
      <directory-attribute-type>String</directory-attribute-type>
    </attribute>
    <attribute>
      <name>$USER_JOB_TITLE</name>
      <directory-attribute-name>description</directory-attribute-name>
      <directory-attribute-type>String</directory-attribute-type>
    </attribute>
    <attribute>
      <name>$USER_FULLNAME</name>
      <directory-attribute-name>displayName</directory-attribute-name>
      <directory-attribute-type>String</directory-attribute-type>
    </attribute>
    <attribute>
      <name>$USER_PRINCIPAL_NAME</name>
      <directory-attribute-name>userPrincipalName</directory-attribute-name>
      <directory-attribute-type>String</directory-attribute-type>
    </attribute>
   <attribute>
      <name>$USER_MEMBER_OF</name>
      <directory-attribute-name>memberOf</directory-attribute-name>
      <directory-attribute-type>String</directory-attribute-type>
    </attribute>	
   </user-attributes>
</document>

You also mentioned that $USER was always returning 'ebaseuser'.
Are you running the form from the designer ? If you are, then the form will run as the designer user you are logged in as, not your Windows User.


Hope this helps,


Mark
0 x

User avatar
Andy McMaster
Ebase User
Posts: 33
Joined: Fri Feb 29, 2008 12:08 pm
Location: Newcastle upon Tyne
Contact:

#5

Postby Andy McMaster » Thu Apr 03, 2008 8:37 am

Vircos wrote:JCIFS uses the NTLM protocol to retrieve the windows user id. It actually does the same as described by Sarah. So it is not really an integration with the Active Directory using LDAP. The NTLM protocol is only supported by Internet Explorer and FireFox.

If you follow the steps as described by me the Ebase $USER variable should return the windows user id. Do you get any errors regarding JCIFS or NTLM in the server log?
I'm using a standard setup at the moment and can't see anything in the log files. The only one that had any quantity of info in is log4j.log. ufsserver.log just has minimal startup info.

I'm new to Tomcat and Ebase so not sure exactly which is the relavent log or how best to configure them in the log4j.properties file.

Any suggestions on best practice would be appreciated.

Cheers

Andy
0 x
<b>Do not despise the snake for having no horns for who is to say it will not become a dragon</b>

User avatar
Vanessa
Forum Admin
Forum Admin
Posts: 34
Joined: Thu Sep 06, 2007 4:23 pm
Location: Sandy, UK
Contact:

Split topic

#6

Postby Vanessa » Mon Apr 07, 2008 10:39 am

For information, I have split this topic (AD/LDAP authentication) from the original (windows user authentication) which had a misleading title "Integration with Active Directory - LDAP" because the two topics are not really the same. The original post by Sarah can be found in the new thread "How do I retrieve the Windows username?".
0 x

User avatar
Andy McMaster
Ebase User
Posts: 33
Joined: Fri Feb 29, 2008 12:08 pm
Location: Newcastle upon Tyne
Contact:

#7

Postby Andy McMaster » Tue Apr 08, 2008 10:25 am

Have an account with access to AD now but server now needs IIS installing as I assume this must be used as Web Listener for this to work. Waiting on server team to sort this.

I've tried running the form outside of Designer and get no return value for $USER so I'm assuming once IIS is running it'll work.

Is there a simple way to test this. I've just created a form with a text box whose value is set to $USER. I'm not doing any form of login via AD. Is there away to check that the account is accessing AD successfully?

Cheers

Andy
0 x
<b>Do not despise the snake for having no horns for who is to say it will not become a dragon</b>

Vircos
Ebase User
Posts: 97
Joined: Thu Sep 13, 2007 6:07 am
Location: The Netherlands

Re: Split topic

#8

Postby Vircos » Thu Apr 10, 2008 7:43 am

@Vanessa
Vanessa wrote:For information, I have split this topic (AD/LDAP authentication) from the original (windows user authernitcation) which had a misleading title "Integration with Active Directory - LDAP" because the two topics are not really the same. The original post by Sarah can be found in the new thread "How do I retrieve the Windows username?".
Perhaps it is better to join the topics again. My solution does actually the same as the solution as described by Sarah. Sarah uses IIS as a weblistener where I use Apache as a weblistener. Both solutions uses NTLM to authenticate the Windows user.

It is not really integrating AD/LDAP authentication but more like winows user authentication. Allthough my solution does need an AD-account in order to validate other AD-users against a Domain Controller.

@Andy

My solution works on three servers here, each configured manually by me. It is not clear to me why it doesn't work at your server.

My solution is only able to deliver the $USER variable other AD attributes won't work.
0 x
What's the meaning of Justice...

User avatar
Andy McMaster
Ebase User
Posts: 33
Joined: Fri Feb 29, 2008 12:08 pm
Location: Newcastle upon Tyne
Contact:

#9

Postby Andy McMaster » Thu Apr 10, 2008 8:14 am

Thanks for the response.

I need to access email address etc. as well so it looks like I need the full works.

I've been trying to get the Apache ISAPI redirection working and waiting for feedback from EBase re this. IIS works fine but I can't get it to redirect for some reason. I may disable the three instances of Ebase I have running , install a clean version and try from there to be sure the default settings are OK.

I'll post here if/when I get a solution. Well, let's be optimistic - WHEN I get a solution :D

Cheers

Andy
0 x
<b>Do not despise the snake for having no horns for who is to say it will not become a dragon</b>

User avatar
Andy McMaster
Ebase User
Posts: 33
Joined: Fri Feb 29, 2008 12:08 pm
Location: Newcastle upon Tyne
Contact:

#10

Postby Andy McMaster » Fri Apr 11, 2008 2:25 pm

Hi again,

OK. Latest. Using a VM. Clean install of IIS and Ebase. Installed ISAPI redirector and that seems to work now - most of the time! I get the Ebase forms and documentation coming up without having to specifiy the port 3030.

Added the LDAP details to UFSSetup.properties.

Changed ebaselogin.config to

Code: Select all

Ebase
&#123;
   com.ebasetech.ufs.security.authentication.LDAPLoginModule REQUIRED debug=true userManagerRoles=false;
&#125;;
and added

Code: Select all

Ufs.useUserManagerForDesignerAuthentication=true 
to UFSSetup.properties so it still uses the normal ebase authentication for Designer login.

Now I have added a text box called ldapuser to an existing form and a small script to set ldapuser=$user; in the before page events. When I run this via designer I get 'ebaseuser' for the $USER - as expected - and the log shows:

Code: Select all

LDAP debug list of attributes availabe for user ebaseuser &#58;-
   No attributes found
which seems to suggest that the LDAP settings are correct. However, when I run the form outside of Designer I get nothing set - and this applies whether I use $USER or $USER_EMAIL.

Now, am I missing something in the config setups for this? Can't figure out why it's not picking up my domain login name?

Just to confirm, I don't want to be prompted for a login at runtime. Any users should be logged in to their AD account. All I want is to be able to display their login name, real name and pull the email address so I can email them a confirmation.

Cheers
0 x
<b>Do not despise the snake for having no horns for who is to say it will not become a dragon</b>

User avatar
Andy McMaster
Ebase User
Posts: 33
Joined: Fri Feb 29, 2008 12:08 pm
Location: Newcastle upon Tyne
Contact:

#11

Postby Andy McMaster » Mon Apr 14, 2008 11:37 am

OK. Have user name showing but nothing for attributes. Logs show:

Code: Select all

Ebase Server successfully initialised in 3 seconds
LDAP debug list of attributes availabe for user amcm2309 &#58;-
   No attributes found
LDAP debug list of attributes availabe for user amcm2309 &#58;-
   No attributes found
LDAP attributes refreshed for user amcm2205
I'm wondering if it has something to do with what attribute is being used to search AD? It defaults to cn but I'm not sure which attribute is being returned to go into $USER?

Cheers

Andy
0 x
<b>Do not despise the snake for having no horns for who is to say it will not become a dragon</b>

User avatar
Wai
Moderator
Moderator
Posts: 165
Joined: Wed Sep 12, 2007 9:04 am
Location: Sandy, UK
Contact:

#12

Postby Wai » Wed Apr 23, 2008 3:53 pm

Following these instructions and setting up LDAP connection and attributes as per the Ebase instructions, I have managed to get this to work.

Following Vircos' initial post above will give you the Windows id in the $USER variable in Ebase.

To additionally return LDAP attributes you need to do the following:

1. LDAP configuration in Ebase

Add the following in UFSSetup.properties and replace the values:

ldap.registryHost=ebt999
ldap.baseDistinguishedName=dc=ebasetech,dc=com
ldap.registryPort=389
ldap.userKeyAttributeName=sAMAccountName
ldap.bindDistinguishedName=Admin@ebase
ldap.bindPassword=xxxxx
Ufs.ldapAttributesFileName=../webapps/ufs/preferences/ldap_attributes.xml
ldap.cacheRefreshPeriod=60
ldap.debug=true

This is an example for Active Directory. The baseDistinguishedName specifies from where to look in the directory, in this case it is the domain which represents the root of where the users are located.


2. Define attributes in ldap_attributes.xml file located under ..\UfsServer\tomcat\webapps\ufs\preferences

For example:

Code: Select all

<document type="LDAP_Attributes">
  <user-attributes>
    <attribute>
      <name>$USER_NAME</name>
      <directory-attribute-name>name</directory-attribute-name>
      <directory-attribute-type>String</directory-attribute-type>
    </attribute>
    <attribute>
      <name>$USER_EMAIL</name>
      <directory-attribute-name>mail</directory-attribute-name>
      <directory-attribute-type>String</directory-attribute-type>
    </attribute>
    <attribute>
      <name>$USER_ROLE</name>
      <directory-attribute-name>description</directory-attribute-name>
      <directory-attribute-type>String</directory-attribute-type>
    </attribute>
  </user-attributes>
</document>
This should be all that is required.


3. Debug

You can view all the LDAP attributes which are returnable to Ebase by switching on the Debug option in UFSSetup.properties file:

ldap.debug=true

and then performing a command like:

SET USER = $USER

will result in execution log:

Execution Log:

Mon Apr 14 15:30:34: Info : executing SET USER = waich
LDAP debug list of attributes availabe for user waich :-
Attribute: objectCategory
Attribute: userParameters
Attribute: whenCreated
Attribute: badPwdCount
Attribute: codePage
Attribute: mail
Attribute: objectGUID
Attribute: adminCount
Attribute: memberOf
..........

Only user attributes in LDAP that have values will be displayed.


4. In IE and Firefox, when you first try to access the Ebase form, you will be prompted for a login. To prevent this you have to configure the browsers. In IE, simply add the domain to IE's security trusted sites. To allow integrated authentication in Firefox follow the instructions on: http://www.mozilla.org/projects/netlib/ ... -auth.html
0 x

User avatar
Andy McMaster
Ebase User
Posts: 33
Joined: Fri Feb 29, 2008 12:08 pm
Location: Newcastle upon Tyne
Contact:

Accessing MemberOf

#13

Postby Andy McMaster » Fri May 02, 2008 9:20 am

Hi,

I've got AD access working OK but get an error when trying to access the memberOf attribute. I've defined it in ldap_attributes.xml but when I try to pull this value out I get an error in the log:

Code: Select all

Fri May 02 09&#58;29&#58;41&#58; Unexpected error occurred - see server log
java.lang.NullPointerException
	at com.ebasetech.ufs.utility.Utility.getFieldValue&#40;Utility.java&#58;673&#41;
	at com.ebasetech.ufs.utility.Utility.evalExpression&#40;Utility.java&#58;224&#41;
	at com.ebasetech.ufs.utility.Utility.evalExpression&#40;Utility.java&#58;53&#41;
	at com.ebasetech.ufs.validation.CommandProcessor.isSetFieldValue&#40;CommandProcessor.java&#58;2568&#41;
	at com.ebasetech.ufs.validation.CommandProcessor.process&#40;CommandProcessor.java&#58;3439&#41;
	at com.ebasetech.ufs.validation.Node.execute&#40;Node.java&#58;261&#41;
	at com.ebasetech.ufs.validation.ActionScript.execute&#40;ActionScript.java&#58;148&#41;
	at com.ebasetech.ufs.validation.Event.execute&#40;Event.java&#58;474&#41;
	at com.ebasetech.ufs.kernel.Page.runBeforePageEvent&#40;Page.java&#58;3221&#41;
	at com.ebasetech.ufs.kernel.FormsProcessor.startPage&#40;FormsProcessor.java&#58;1569&#41;
	at com.ebasetech.ufs.kernel.FormsProcessor.runForm&#40;FormsProcessor.java&#58;1146&#41;
	at formservlets.FormClient.runForm&#40;FormClient.java&#58;827&#41;
	at formservlets.FormClient.process&#40;FormClient.java&#58;571&#41;
	at formservlets.FormClient.doGet&#40;FormClient.java&#58;287&#41;
	at javax.servlet.http.HttpServlet.service&#40;HttpServlet.java&#58;690&#41;
	at javax.servlet.http.HttpServlet.service&#40;HttpServlet.java&#58;803&#41;
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter&#40;ApplicationFilterChain.java&#58;269&#41;
	at org.apache.catalina.core.ApplicationFilterChain.doFilter&#40;ApplicationFilterChain.java&#58;188&#41;
	at formservlets.EbaseFilter.doFilter&#40;EbaseFilter.java&#58;209&#41;
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter&#40;ApplicationFilterChain.java&#58;215&#41;
	at org.apache.catalina.core.ApplicationFilterChain.doFilter&#40;ApplicationFilterChain.java&#58;188&#41;
	at org.apache.catalina.core.StandardWrapperValve.invoke&#40;StandardWrapperValve.java&#58;210&#41;
	at org.apache.catalina.core.StandardContextValve.invoke&#40;StandardContextValve.java&#58;174&#41;
	at org.apache.catalina.core.StandardHostValve.invoke&#40;StandardHostValve.java&#58;127&#41;
	at org.apache.catalina.valves.ErrorReportValve.invoke&#40;ErrorReportValve.java&#58;117&#41;
	at org.apache.catalina.core.StandardEngineValve.invoke&#40;StandardEngineValve.java&#58;108&#41;
	at org.apache.catalina.connector.CoyoteAdapter.service&#40;CoyoteAdapter.java&#58;151&#41;
	at org.apache.jk.server.JkCoyoteHandler.invoke&#40;JkCoyoteHandler.java&#58;200&#41;
	at org.apache.jk.common.HandlerRequest.invoke&#40;HandlerRequest.java&#58;283&#41;
	at org.apache.jk.common.ChannelSocket.invoke&#40;ChannelSocket.java&#58;773&#41;
	at org.apache.jk.common.ChannelSocket.processConnection&#40;ChannelSocket.java&#58;703&#41;
	at org.apache.jk.common.ChannelSocket$SocketConnection.runIt&#40;ChannelSocket.java&#58;895&#41;
	at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run&#40;ThreadPool.java&#58;685&#41;
	at java.lang.Thread.run&#40;Unknown Source&#41;
I'm assuming memberOf returns a list of groups user is a member of but I'm not sure in what format and how EBase should handle this?

Cheers

Andy
0 x
<b>Do not despise the snake for having no horns for who is to say it will not become a dragon</b>

User avatar
Wai
Moderator
Moderator
Posts: 165
Joined: Wed Sep 12, 2007 9:04 am
Location: Sandy, UK
Contact:

#14

Postby Wai » Fri May 02, 2008 2:24 pm

The case in FPL is important.

Change $user_group to $USER_GROUP. At least the $USER_ part needs to match the case of the property name in the ldap_attributes.xml file.
0 x

User avatar
Andy McMaster
Ebase User
Posts: 33
Joined: Fri Feb 29, 2008 12:08 pm
Location: Newcastle upon Tyne
Contact:

#15

Postby Andy McMaster » Fri May 02, 2008 2:28 pm

Sorted. Thanks.
0 x
<b>Do not despise the snake for having no horns for who is to say it will not become a dragon</b>

Vircos
Ebase User
Posts: 97
Joined: Thu Sep 13, 2007 6:07 am
Location: The Netherlands

#16

Postby Vircos » Mon May 19, 2008 9:04 am

When I enable LDAP I get the following error.
I cannot figure out why. Any suggestions?


Never mind, got it working already.
0 x
What's the meaning of Justice...

Vircos
Ebase User
Posts: 97
Joined: Thu Sep 13, 2007 6:07 am
Location: The Netherlands

#17

Postby Vircos » Wed Oct 20, 2010 1:07 pm

I have noticed that Ebase is not able to retrieve all entries of the "memberOf" attribute, it only retrieves the last entry. Is it somehow possible to retrieve all entries?
0 x
What's the meaning of Justice...

User avatar
Wai
Moderator
Moderator
Posts: 165
Joined: Wed Sep 12, 2007 9:04 am
Location: Sandy, UK
Contact:

#18

Postby Wai » Wed Oct 20, 2010 1:45 pm

It should return all entries into a single string, for example, mine returns something like:

Memberof CN=TEST_CC Live,OU=Client Groups,OU=Security Groups,OU=Ebase Users and Groups

ETC.

Each member of group is separated by a comma.

Then I guess you can process the string in Ebase.
0 x

ehmd
Ebase User
Posts: 53
Joined: Thu Sep 13, 2007 9:02 am
Contact:

#19

Postby ehmd » Thu Oct 21, 2010 7:50 am

Using the memberOf attribute only returns the first entry in the list and always has done, as far back as I can remember.

The string that is returned is the full hierarchic name of the attribute.

There are other attributes within AD which can have multiple entries, so I would expect Ebase to return the whole list as a string.

Perhaps this this a bug ?
0 x

Vircos
Ebase User
Posts: 97
Joined: Thu Sep 13, 2007 6:07 am
Location: The Netherlands

#20

Postby Vircos » Thu Oct 21, 2010 8:20 am

Code: Select all

CN=TEST_CC Live,OU=Client Groups,OU=Security Groups,OU=Ebase Users and Groups 
This is a distinguished Name and a single entry of the memberOf attribute. It shows how the object is positioned within the Active Directory just like ehmd said.

Like this:

Code: Select all

Ebase Users
    |- Security Groups
           |- Client Groups
                   |- TEST_CC Live
It would be nice to get all memberOf entries.
0 x
What's the meaning of Justice...

Vircos
Ebase User
Posts: 97
Joined: Thu Sep 13, 2007 6:07 am
Location: The Netherlands

#21

Postby Vircos » Fri Oct 29, 2010 6:32 am

Vircos wrote:

Code: Select all

CN=TEST_CC Live,OU=Client Groups,OU=Security Groups,OU=Ebase Users and Groups 
This is a distinguished Name and a single entry of the memberOf attribute. It shows how the object is positioned within the Active Directory just like ehmd said.

Like this:

Code: Select all

Ebase Users
    |- Security Groups
           |- Client Groups
                   |- TEST_CC Live
It would be nice to get all memberOf entries.
Please Ebase will you take a look at this?
I would really appreciate it.
0 x
What's the meaning of Justice...

User avatar
Wai
Moderator
Moderator
Posts: 165
Joined: Wed Sep 12, 2007 9:04 am
Location: Sandy, UK
Contact:

#22

Postby Wai » Fri Oct 29, 2010 4:07 pm

Hi Vircos,

One of my colleagues have recently been working on an LDAP plugin which will effectively allow you to retrieve all the values in the memberOf attribute back into an Ebase table. Each memberOf value will be a separate record in the database.

It is being packaged up with instructions, so we should be able to send you something sometime next week.

Kind regards,

Wai
0 x

ehmd
Ebase User
Posts: 53
Joined: Thu Sep 13, 2007 9:02 am
Contact:

#23

Postby ehmd » Mon Nov 01, 2010 8:20 am

Could I also have a copy of the LDAP plugin when it becomes available ?


Thanks,


Mark
0 x

Vircos
Ebase User
Posts: 97
Joined: Thu Sep 13, 2007 6:07 am
Location: The Netherlands

#24

Postby Vircos » Mon Nov 01, 2010 8:55 am

Wai wrote:Hi Vircos,

One of my colleagues have recently been working on an LDAP plugin which will effectively allow you to retrieve all the values in the memberOf attribute back into an Ebase table. Each memberOf value will be a separate record in the database.

It is being packaged up with instructions, so we should be able to send you something sometime next week.

Kind regards,

Wai
That's great news. This will make autorisations based on Active Directory much easier. Many thanks for this great effort.
0 x
What's the meaning of Justice...

Vircos
Ebase User
Posts: 97
Joined: Thu Sep 13, 2007 6:07 am
Location: The Netherlands

#25

Postby Vircos » Tue Nov 23, 2010 2:34 pm

Wai wrote:Hi Vircos,

One of my colleagues have recently been working on an LDAP plugin which will effectively allow you to retrieve all the values in the memberOf attribute back into an Ebase table. Each memberOf value will be a separate record in the database.

It is being packaged up with instructions, so we should be able to send you something sometime next week.

Kind regards,

Wai
Hi Wai,

Do have any news regarding your post?
0 x
What's the meaning of Justice...

User avatar
Wai
Moderator
Moderator
Posts: 165
Joined: Wed Sep 12, 2007 9:04 am
Location: Sandy, UK
Contact:

#26

Postby Wai » Tue Nov 23, 2010 4:38 pm

Hi Vircos,

Just spoken with my manager Ian and the code is done but we just need to write up some instructions.

Regards,
0 x

Vircos
Ebase User
Posts: 97
Joined: Thu Sep 13, 2007 6:07 am
Location: The Netherlands

#27

Postby Vircos » Mon Dec 06, 2010 2:39 pm

Wai wrote:Hi Vircos,

Just spoken with my manager Ian and the code is done but we just need to write up some instructions.

Regards,
Haha, that's good news. Well I guess we have to wait a little bit longer :P
0 x
What's the meaning of Justice...

Vircos
Ebase User
Posts: 97
Joined: Thu Sep 13, 2007 6:07 am
Location: The Netherlands

#28

Postby Vircos » Thu Jan 06, 2011 3:08 pm

Any news? :roll:
0 x
What's the meaning of Justice...

andyhinds
Forum Admin
Forum Admin
Posts: 55
Joined: Thu Oct 15, 2009 9:18 am

NTLM authentication issue with Upload function

#29

Postby andyhinds » Tue Jan 25, 2011 10:40 am

The upload function may fail after you have configured NTLM authentication.

It could be resolved with this code:

Adding the following filter-mapping resolve sthe issue:

***
<filter>
<filter>NtlmHttpFilter</filter>
<url>/Uploader</url>
</filter>
***

See log 333613 for more detail.
0 x


Who is online

Users browsing this forum: No registered users and 124 guests