[Cdash] [Fwd: Re: CDash LDAP problem]
Marcel Loose
loose at astron.nl
Wed Feb 17 15:57:54 UTC 2010
Hi Julien,
I think I finally found the culprit. It was an LDAP configuration
problem after all. For some reason, retrieval of the 'cn' was disallowed
for the mere mortals. After changing that setting I could successfully
login as first-timer to CDash.
Thanks for your time and effort.
Marcel.
On Wed, 2010-02-17 at 10:26 -0500, Julien Jomier wrote:
> Hi Marcel,
>
> Could you try to change the
>
> $CDASH_LDAP_BASEDN='ou=people,dc=astron,dc=nl';
>
> to
>
> $CDASH_LDAP_BASEDN='cn=Manager,dc=astron,dc=nl';
>
> and see if that helps?
>
> Julien
>
> On 2/17/2010 10:24 AM, Marcel Loose wrote:
> > Hi Julien,
> >
> > I guess you mean $CDASH_LDAP_BASEDN, instead of $CDASH_LDAP_BIND_DN?
I
> > couldn't find any occurrence of the latter.
> >
> >> From the configuration file /etc/openldap/slapd.conf:
> > suffix "dc=astron,dc=nl"
> > rootdn "cn=Manager,dc=astron,dc=nl"
> >
> >> From the CDash configuration file
/srv/CDash/cdash/config.local.php:
> > $CDASH_LDAP_BASEDN='ou=people,dc=astron,dc=nl';
> >
> > Looks to me they're the same.
> >
> > Changing 'cn' to 'gecos' in login.php indeed solves the problem. I
don't
> > know, though, if 'gecos' is just as "standard" as 'cn' is.
> >
> > Best regards,
> > Marcel Loose.
> >
> > On Wed, 2010-02-17 at 07:44 -0500, Julien Jomier wrote:
> >> Hi Marcel,
> >>
> >> This is strange. Could you check the value of the
$CDASH_LDAP_BIND_DN
> > in
> >> your config.local.php and see if it's the same as the one you are
> >> passing to slapcat?
> >>
> >> One thing you can do is replace 'cn' by 'gecos' in the login.php
file
> >> and it should work (since it looks like the same value).
> >>
> >> Let me know,
> >> Julien
> >>
> >> On 2/17/2010 3:59 AM, Marcel Loose wrote:
> >>> Hi Julien,
> >>>
> >>> So, it should be possible to authenticate users against an
existing
> > LDAP
> >>> database. However, when I try to login to CDash as
loose at astron.nl,
> > I
> >>> get the error:
> >>>
> >>> No givenname (cn) set in LDAP, cannot register user into MIDAS
> >>>
> >>> That user is present in the LDAP database, though. Here's the
record
> >>> from the LDAP database, retrieved with 'slapcat'. As you can see,
> > the
> >>> 'cn' field is also present.
> >>>
> >>> dn: uid=loose,ou=people,dc=astron,dc=nl
> >>> objectClass: shadowAccount
> >>> objectClass: posixAccount
> >>> objectClass: inetOrgPerson
> >>> gecos: Marcel Loose
> >>> uid: loose
> >>> sn: Loose
> >>> givenName: Marcel
> >>> structuralObjectClass: inetOrgPerson
> >>> entryUUID: 2375bf08-e435-102b-8b97-3952138d3cf7
> >>> creatorsName: cn=Manager,dc=astron,dc=nl
> >>> createTimestamp: 20070821132115Z
> >>> uidNumber: 511
> >>> mail: loose at astron.nl
> >>> gidNumber: 1000
> >>> shadowLastChange: 14127
> >>> cn: Marcel Loose
> >>> userPassword:: ########
> >>> homeDirectory: /home/loose
> >>> loginShell: /bin/bash
> >>> entryCSN: 20100104140045Z#000000#00#000000
> >>> modifiersName: cn=Manager,dc=astron,dc=nl
> >>> modifyTimestamp: 20100104140045Z
> >>>
> >>> I'm baffled. Any ideas?
> >>>
> >>> Best regards,
> >>> Marcel Loose.
> >>>
> >>> On Tue, 2010-02-16 at 07:31 -0500, Julien Jomier wrote:
> >>>> Hi Marcel,
> >>>>
> >>>> You can use a LDAP database to authenticate users in CDash,
others
> >>> have
> >>>> done it. The only thing is that you need to configure either
CDash
> > or
> >>>> your LDAP to fill the 'cn' field, this is how CDash gets the
> >>> information
> >>>> to create the authenticated user automatically.
> >>>>
> >>>> Julien
> >>>>
> >>>> On 2/15/2010 3:30 AM, Marcel Loose wrote:
> >>>>> Hi Julien,
> >>>>>
> >>>>> Sorry for the late reply, I had a long weekend off.
> >>>>> Do I understand correctly, from your answer, that it is not
> > possible
> >>> to
> >>>>> use an existing LDAP database to authenticate users? Is it
really
> >>>>> necessary to register them from within CDash? If so, is there a
> > way
> >>> to
> >>>>> import users from an LDAP database into CDash?
> >>>>>
> >>>>> Best regards,
> >>>>> Marcel Loose.
> >>>>>
> >>>>>
> >>>>> On Thu, 2010-02-11 at 10:40 -0500, Julien Jomier wrote:
> >>>>>> Marcel,
> >>>>>>
> >>>>>> I'm wondering if the CDASH_LDAP options are defined correctly
and
> >>> that
> >>>>>
> >>>>>> might be the reason why 'cn' doesn't show up.
> >>>>>>
> >>>>>> CDash requires the user to be registered in CDash when using
> > LDAP.
> >>> The
> >>>>>
> >>>>>> authentication is done by LDAP. One option is to login as
> >>>>> administrator
> >>>>>> into CDash and register the user before trying to login into
> > LDAP.
> >>>>>>
> >>>>>> Let us know,
> >>>>>> Julien
> >>>>>>
> >>>>>> Marcel Loose wrote:
> >>>>>> > Hi all,
> >>>>>> >
> >>>>>> > I'm experiencing an LDAP problem with CDash. When I
try to
> > log
> >>> into
> >>>>>> > CDash for the first time as a valid LDAP user, I get
the
> >>> message:
> >>>>>> >
> >>>>>> > No givenname (cn) set in LDAP, cannot register user
into
> > MIDAS
> >>>>>> >
> >>>>>> > Now I've been digging in the PHP-code a bit, but I
know
> > little
> >>> PHP.
> >>>>>> > The problem seems to be in the function
ldapAuthenticate()
> > in
> >>>>> login.php.
> >>>>>> > For reasons I don't understand, the return value of
> >>>>>> ldap_search($ldap,$CDASH_LDAP_BASEDN, 'mail='.$email,
> >>>>> array('dn','cn'))
> >>>>>> > contains an empty 'cn' field, though it does contain a
> > valid
> >>> 'dn'
> >>>>> field.
> >>>>>> >
> >>>>>> > For debugging purposes, I've removed the attributes
> >>> specification
> >>>>> in the
> >>>>>> > ldap_search() call, thus returning all attributes.
This
> > gives
> >>> me:
> >>>>>> >
> >>>>>> > var_dump($entries);
> >>>>>> > array(2) { ["count"]=> int(1) [0]=> array(24)
{
> >>> ["objectclass"]=>
> >>>>>> > array(4) { ["count"]=> int(3) [0]=> string(13)
> >>> "shadowAccount"
> >>>>> [1]=>
> >>>>>> > string(12) "posixAccount" [2]=> string(13)
> > "inetOrgPerson" }
> >>> [0]=>
> >>>>>> > string(11) "objectclass" ["gecos"]=> array(2) {
> > ["count"]=>
> >>>>> int(1)
> >>>>>> > [0]=> string(12) "Marcel Loose" } [1]=>
string(5)
> > "gecos"
> >>>>> ["uid"]=>
> >>>>>> > array(2) { ["count"]=> int(1) [0]=> string(5)
> > "loose" }
> >>> [2]=>
> >>>>>> > string(3) "uid" ["sn"]=> array(2) { ["count"]=>
> > int(1)
> >>> [0]=>
> >>>>>> > string(5) "Loose" } [3]=> string(2) "sn"
> > ["givenname"]=>
> >>> array(2)
> >>>>>> > { ["count"]=> int(1) [0]=> string(6) "Marcel"
}
> > [4]=>
> >>> string(9)
> >>>>>> > "givenname" ["uidnumber"]=> array(2) { ["count"]=>
> > int(1)
> >>> [0]=>
> >>>>>> > string(3) "511" } [5]=> string(9) "uidnumber"
> > ["mail"]=>
> >>> array(2)
> >>>>>> > { ["count"]=> int(1) [0]=> string(15)
> > "loose at astron.nl" }
> >>> [6]=>
> >>>>>> > string(4) "mail" ["gidnumber"]=> array(2) {
["count"]=>
> >>> int(1)
> >>>>> [0]=>
> >>>>>> > string(4) "1000" } [7]=> string(9) "gidnumber"
> >>>>> ["shadowlastchange"]=>
> >>>>>> > array(2) { ["count"]=> int(1) [0]=> string(5)
> > "14127" }
> >>> [8]=>
> >>>>>> > string(16) "shadowlastchange" ["homedirectory"]=>
> > array(2)
> >>>>>> > { ["count"]=> int(1) [0]=> string(11)
"/home/loose"
> > }
> >>> [9]=>
> >>>>>> > string(13) "homedirectory" ["loginshell"]=>
array(2) {
> >>> ["count"]=>
> >>>>>> > int(1) [0]=> string(9) "/bin/bash" } [10]=>
> > string(10)
> >>>>>> > "loginshell" ["count"]=> int(11) ["dn"]=>
string(35)
> >>>>>> > "uid=loose,ou=people,dc=astron,dc=nl" } }
> >>>>>> >
> >>>>>> > Indeed, 'cn' is missing here. It is, however, present
in
> > the
> >>> LDAP
> >>>>>> > database. Here's a snippet of the output of 'slapcat',
for
> > the
> >>>>> given
> >>>>>> > user:
> >>>>>> >
> >>>>>> > dn: uid=loose,ou=people,dc=astron,dc=nl
> >>>>>> > objectClass: shadowAccount
> >>>>>> > objectClass: posixAccount
> >>>>>> > objectClass: inetOrgPerson
> >>>>>> > gecos: Marcel Loose
> >>>>>> > uid: loose
> >>>>>> > sn: Loose
> >>>>>> > givenName: Marcel
> >>>>>> > structuralObjectClass: inetOrgPerson
> >>>>>> > entryUUID: 2375bf08-e435-102b-8b97-3952138d3cf7
> >>>>>> > creatorsName: cn=Manager,dc=astron,dc=nl
> >>>>>> > createTimestamp: 20070821132115Z
> >>>>>> > uidNumber: 511
> >>>>>> > mail: loose at astron.nl
> >>>>>> > gidNumber: 1000
> >>>>>> > shadowLastChange: 14127
> >>>>>> > cn: Marcel Loose
> >>>>>> > userPassword::<########>
> >>>>>> > homeDirectory: /home/loose
> >>>>>> > loginShell: /bin/bash
> >>>>>> > entryCSN: 20100104140045Z#000000#00#000000
> >>>>>> > modifiersName: cn=Manager,dc=astron,dc=nl
> >>>>>> > modifyTimestamp: 20100104140045Z
> >>>>>> >
> >>>>>> > I don't know if this is a CDash problem -- e.g. it
should
> > use
> >>> a
> >>>>>> > different ldap-function; or if it's a problem with the
> >>> PHP-LDAP
> >>>>> module;
> >>>>>> > or if it's an LDAP database/configuration problem.
Could
> >>> someone
> >>>>> please
> >>>>>> > shed a light on this?
> >>>>>> >
> >>>>>> > Best regards,
> >>>>>> > Marcel Loose.
> >>>>>
> >>>>>
> >>>>>
> >>>
> >>>
> >>>
> >
> >
> >
More information about the CDash
mailing list