====== OpenID plugin ====== ---- plugin ---- description: Allow users to authenticate with OpenID. (previous author: Andreas Gohr) author : François Hodierne email : francois@hodierne.net type : action lastupdate : 2009-03-15 compatible : 2009-02-14 depends : conflicts : similar : tags : authentication, embed ---- {{ plugin:openid.png?300|The OpenID login form}} This plugin allows users to log in through the [[http://openid.net|OpenID]] protocol. ===== Incompatibility with the current version of DokuWiki ===== * Tried to run the 2009-03-15 version of the plugin on DokuWiki version 2009-12-25c "Lemming". When logging in, it would redirect to title page but won't actually log in. --- //lolmaus 2010/02/17 18:11// * Same thing for me. 2010/02/19 * Having the same problem here too. Posted in the forums but no reply so far (http://forum.dokuwiki.org/post/17688). --- //ty 2010.03.01// * Same problem for me. It worked with an older version. I upgraded to DokuWiki 2009-12-25c and despite successful authentication with openID I'm not logged onto my wiki. * Following works for me. Open /lib/plugins/openid/action.php, find lines 469-470 and change: $cookie = base64_encode("$user|$sticky|openid"); if($sticky) $time = time()+60*60*24*365; //one year to: $cookie = base64_encode($user).'|'.((int) $sticky).'|'.base64_encode('openid'); $time = $sticky ? (time()+60*60*24*365) : 0; //one year The plugin's code is derived from auth_setCookie() in /inc/auth.php, so I basically ported the changes between DokuWiki-2009-02-14b and DokuWiki-2009-12-25c. Although it seems to work fine, there may be possibly other problems related to other changes in DokuWiki. I'm no DokuWiki expert, so be warned. ;) --- //Sob 2010-03-10// ===== Download and Install ===== Use the following URL to download or install the plugin through the plugin manager: * {{http://h6e.net/releases/dokuwiki-openid-plugin-latest.tar.gz}} ===== Changes ===== ==== Version 2 ==== Website: http://h6e.net/dokuwiki/plugins/openid * [[http://github.com/znarf/dokuwiki-openid/tree/03604432d23ffafa629eecfe7ad932af366ab61f|18 Mai 2009: beta3]] * change session/cookie handling * don't warn to register if registration is off * support for user openids from auth backend * better redirects, don't loose current page in the authentication process * add a php4 compatibility fix * [[http://github.com/znarf/dokuwiki-openid/tree/7174820fa3c91f72f6ad446824e28c2ceef55d87|23 Mar 2009: beta2]] * fix an issue preventing authenticating with clean URLs activated * [[http://github.com/znarf/dokuwiki-openid/tree/bf6ac4814b82d31e2f36fbb24d5002821b323de2|15 Mar 2009: beta1]] * now use JainRain PHP OpenID Library * now compatible with OpenID 2.0 * new workflow, openID identities are now associated with traditional DokuWiki accounts ===== Notes ===== * The plugin doesn't currently play well with DokuWiki 'auth_security_timeout' configuration. So, for now, you have to set this option to an high value, like '60*60*24', the user being disconnected one day after initial authentication. ===== Feature Requests ===== * Allow an administrator to specify that **ONLY** a specific openID provider would be allowed. This would allow a wiki to be restricted to an already defined body of users. * Ability to assign OpenID users to additional groups. * Option to completely disable non-OpenID logins. * Attribute Exchange support (AX) to allow groups to be assigned ===== Localization ===== ==== Portuguese-Brazilian ==== To add pt-br support, create a folder in /lib/plugins/openid/lang/ and make these two files: intro.txt ====== OpenID Login ====== Você pode usar sua [[http://openid.net/|OpenID]] para entrar neste site. Entre com o identificador de sua OpenID (URL) no campo de login. lang.php entra com sua OpenID.'; $lang['manage_link'] = 'Você também pode gerenciar suas identidades OpenID'; $lang['add_openid_title'] = 'Adicionar uma OpenID'; $lang['openid_identities_title'] = 'Suas identidades OpenID'; $lang['complete_registration_notice'] = 'Você está conectado temporariamente usando sua OpenID. Termine seu registro para ser um usuário permanente.'; $lang['openid_already_user_error'] = 'Essa identidade OpenID já está sendo usada'; $lang['enter_valid_openid_error'] = 'Entre com um identificador OpenID válido.'; $lang['openid_identity_added'] = 'Identidade OpenID adicionada com sucesso'; $lang['openid_authentication_failed'] = 'A autenticação OpenID falhou'; $lang['openid_authentication_canceled'] = 'Autenticação OpenID cancelada.'; $lang['openid_complete_text'] = 'Por favor verifique e/ou complete as informações da sua conta para terminar o registro.'; $lang['openid_complete_disabled_text'] = 'Você está corretamente autenticado, mas registros não são possíveis nesta wiki. Continue aqui.'; $lang['none'] = 'Nenhum.';