I use a SSO (shibboleth/SAML) served by a proxy Service Provider that set the HTTP variable HTTP_UID and not REMOTE_USER !
so I changed a bit your code by replacing every occurence of REMOTE_USER by HTTP_UID in auth.php, here's a diff from your distribution (+ add some print/debug prefix "debugjp" )
authremoteuse# diff auth.php auth.php.dist
44d43
< print "<p> is_writable($config_cascade debugjp: " . $config_cascade['plainauth.users']['default'];
51d49
< $this->cando['external'] = true;
75,78c73,75
< if (!empty($_SERVER['HTTP_UID'])) {
< $remoteUser = $this->cleanUser($_SERVER['HTTP_UID']);
< print "<p>debugjp: " . $remoteUser;
< $_SERVER['HTTP_UID'] = $remoteUser;
---
> if (!empty($_SERVER['REMOTE_USER'])) {
> $remoteUser = $this->cleanUser($_SERVER['REMOTE_USER']);
> $_SERVER['REMOTE_USER'] = $remoteUser;
85d81
< print "<p>debugjp getUserData false: " . $userinfo;
92d87
< print "<p>debugjp getUserData true: " . $USERINFO['name'] . $USERINFO['mail'] . $USERINFO['grps'];
438c433
After login (through my proxied SSO) , I do see the debug showing
is_writable(Array debugjp: /procacci/public/dok21/conf/users.auth.php
debugjp: jehan.procaccia_imtbs-tsp.eu
debugjp getUserData true: jehan.procacciaShibjehan.procaccia@imt-bs.euArray
So everything seemed correct, but I am not logged in , if I had the ?do=check at the end of the URL; doku.php?do=check , dokuwiki does says "You are currently not logged in" and the Log In link on the upper right is still there (not Log Out)
How can I further debug this pb ?
thanks .
PS: conf/users.auth.php does contain a line with appropiate value equal to HTTP_UID value .