artefactual / artefactual/atom-docs

Problem: Ubuntu directions has 2.8.0 tarball, which doesn't have start tls, but User Authentication for LDAP for 2.8 mentions it as default.

Open
#278 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
21
Forks
31
PR merge metrics
No merged PRs in 30d

Description

I'm not sure if this is the right place to put this. We set up a server by followed the steps at....

https://www.accesstomemory.org/en/docs/2.8/admin-manual/installation/ubuntu/#installation-ubuntu

To setup a server, in particular, using the following to get a tarball...

> wget https://storage.accesstomemory.org/releases/atom-2.8.0.tar.gz

Then we were setting up LDAP Auth following https://www.accesstomemory.org/en/docs/2.8/admin-manual/customization/authentication/#customization-authentication

It didn't work. In the process of adding some debugging statements to try to figure out what was happening, I found that our AD was refusing the connection based on the encryption level. Looking at the code, I didn't find any ldap_start_tls call like I expect and added it and things were suddenly working...

On the 2.8 docs at https://www.accesstomemory.org/en/docs/2.8/admin-manual/customization/authentication/#customization-authentication, it says...

> LDAP authentication in AtoM, by default, uses StartTLS for encryption.

But...I'm guessing this is only true for some more recent version of AtoM than the tarball mentioned in the 2.8 docs? Or there's something else going wrong.

I might try to experiment with a newer version pulled from git, but for now at least I resolved this by

modified line 127 of lib/ldapUser.class.php

`$this->ldapBound = @ldap_bind($conn, $dn, $password);`

to
```

if( ldap_start_tls( $conn ) ) {

// The @ suppresses a warning if the auth fails
$bind_result = @ldap_bind($conn, $dn, $password);

if($bind_result == false ) {
$this->logger->debug( ldap_error( $conn ) ) ;
}
$this->ldapBound = $bind_result ;
return $this->ldapBound;
}
else {
$this->logger->debug( "couldn't start tls for ldap" );
$this->logger->debug( ldap_error( $conn ) ) ;
return false;
}

```

Contributor guide

No contributing guide indexed for this repository

Research direction

Compare the 2.8 Ubuntu installation instructions and LDAP authentication page with the referenced atom-2.8.0.tar.gz release. Inspect lib/ldapUser.class.php to verify whether StartTLS is present in that release and determine whether the documentation or release behavior is inconsistent. Done means the 2.8 documentation accurately describes the tarball's LDAP encryption behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
php
Domain
authentication, documentation
Issue type
Documentation
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.