NAME Jifty::Plugin::OpenID - Provides OpenID authentication for your jifty app DESCRIPTION Provides OpenID authentication for your app USAGE Config please provide "OpenIDSecret" in your etc/config.yml , the "OpenIDUA" is optional , OpenID Plugin will use LWPx::ParanoidAgent by default. --- application: OpenIDSecret: 1234 OpenIDUA: LWP::UserAgent or you can set "OpenIDUserAgent" environment var in command-line: OpenIDUserAgent=LWP::UserAgent bin/jifty server if you are using LWPx::ParanoidAgent as your openid agent. you will need to provide "JIFTY_OPENID_WHITELIST_HOST" for your own OpenID server. export JIFTY_OPENID_WHITELIST_HOST=123.123.123.123 User Model Create your user model , and let it uses Jifty::Plugin::OpenID::Mixin::Model::User to mixin "openid" column. and a "name" method. use TestApp::Record schema { column email => type is 'varchar'; }; use Jifty::Plugin::OpenID::Mixin::Model::User; sub name { my $self = shift; return $self->email; } Note: you might need to declare a "name" method. because the OpenID CreateOpenIDUser action and SkeletonApp needs current_user->username to show welcome message and success message , which calls "brief_description" method. See Jifty::Record for "brief_description" method. View OpenID plugin provides AuthenticateOpenID Action. so that you can render an AuthenticateOpenID in your template: form { my $openid = new_action( class => 'AuthenticateOpenID', moniker => 'authenticateopenid' ); render_action( $openid ); }; this action renders a form which provides openid url field. and you will need to provide a submit button in your form. form { my $openid = new_action( class => 'AuthenticateOpenID', moniker => 'authenticateopenid' ); # .... render_action( $openid ); outs_raw( Jifty->web->return( to => '/openid_verify_done', label => _("Login with OpenID"), submit => $openid )); }; the "to" field is for verified user to redirect to. so that you will need to implement a template called "/openid_verify_done": template '/openid_verify_done' => page { h1 { "Done" }; }; AUTHORS Alex Vandiver, Cornelius LICENSE Copyright 2005-2009 Best Practical Solutions, LLC. This program is free software and may be modified and distributed under the same terms as Perl itself.