[dokuwiki] trustExternal, existing cookies

  • From: Brett Fountain <email@xxxxxxxxxxxxxxxxx>
  • To: dokuwiki@xxxxxxxxxxxxx
  • Date: Tue, 25 Sep 2007 23:09:20 -0500

Hello ~

Firstly, I want to thank Andi very much, and anyone else who has been involved in development -- this looks like a great tool! I got the 2007-06-26b version and it looks quite useful.

I have been all over your site and read all the documentation I can find, and I'm embarrassed to say that I have been tweaking settings for several days (!); yet I cannot seem to get this one simple thing accomplished thus far:

**

I want to DokuWiki to use external cookie authentication: considering someone "authenticated" if they have certain cookies (name, email, groups) already set when they come to the wiki. If they don't yet have those cookies set, I want the wiki to bump them to a URL where they'll be authenticated. Seems easy enough, eh?

I don't want to manage wiki users, I don't want to create/delete users (or have the wiki doing it), I don't want there to be any usernames or passwords to deal with -- nothing. If a user comes to the wiki with a cookie that says they're in the editors group, then fine, they are. DokuWiki lets them have those editing permissions, and stamps their name/email on whatever they edit, again, based on what their cookie said for their name/email.

**

I've created the groups and permissions within DokuWiki, and I've tweaked everything I can think of. I can't find much documentation, but here is what I've done... or at least how it stands right now:

        in /inc/auth/xcookies.class.php (made a copy of basic.class.php),
                renamed the class and the function from _basic to _xcookies
                set 'external' and 'logoff' => true; everything else false
                in trustExternal, uncommented the 7 lines with variables,
                        and set those 3 USERINFO variables from my cookies
                in checkPass, commented out the msg() and changed return to true
        in /conf/local.php,
                $conf['authtype']='xcookies';

When I visit the wiki start page, it should treat me as logged in, since I have the cookies set... but instead, it provides me the Login button... and when I click it, all it does is the normal asking for my username and password... and even if I put in the superuser info, it doesn't login. No error messages, it just comes back to the start page and the Login button is still there.

**

I would appreciate any help... either pointing out what is missing or wrong with my code tweaks, or giving me a URL with pertinent details... something. (I haven't been able to find any good, detailed official documentation so far, but I have found a few helpful bits of info from various places online.)

Thank you! ~

Brett



PS - That loginredirector plugin looks handy, but I can't get that to work either. It keeps saying it doesn't have sufficient rights to include that file referenced by the 'url' variable, and *everything* dies. It's on an XP box, so I don't have chmod or anything like that. (Every file has the same permissions.) I tried putting DokuWiki+loginredirector into a hosted Linux environment, just out of curiosity... but had so many problems with authentication (above) that I don't know where all the weirdness is even coming from. Right now I'm running without loginredirector, until I can get this external auth bit working.

Other related posts: