<rdf:Description rdf:about="http://snarfed.org/space/pyblosxom%20openid%20server">
  <dc:title> pyblosxom openid server </dc:title>
  <dc:creator> Ryan Barrett &lt;snarfed at ryanb dot org&gt; </dc:creator>
  <dc:date> 2006-12-20T17:57:00Z </dc:date>
  <dc:language> en </dc:language>
  <dc:format> text/html </dc:format>
  <dc:rights> Copyright 2002-2009 Ryan Barrett </dc:rights>

  <content>
    <p><a href="http://openid.net/"><img src="/space/openid-logo.png" alt="openid" title="" /></a>
<a href="http://pyblosxom.sf.net/"><img src="/space/pyblosxom.jpg" alt="pyblosxom" title="" /></a></p>

<p>For the impatient: <br />
&nbsp; Download <a href="/space/openid_server.py">openid_server.py</a> or
<a href="/space/openid_server-0.4.tar.gz">openid_server-0.4.tar.gz</a> <br />
&nbsp; <a href="http://openid.net/">OpenID home page</a> <br />
&nbsp; <a href="http://pyblosxom.sf.net/">PyBlosxom home page</a></p>

<p><em>Updated 2007-09-23.</em></p>

<p><a href="/space/openid_server.py">openid_server.py</a> is a
<a href="http://pyblosxom.sf.net/">PyBlosxom</a> plugin that implements
<a href="http://openid.net/">OpenID</a> 1.x and 2.0. OpenID is a distributed authentication
protocol, ie a single sign on platform, that uses URLs as identifiers. If you
have a PyBlosxom site, this plugin allows you to login anywhere that accepts
OpenID.</p>

<p>This plugin also implements the
<a href="http://www.openidenabled.com/openid/simple-registration-extension">Simple Registration
Extension</a>,
which lets you optionally provide your name, email address, and other
information automatically to sites that you log into with OpenID.</p>

<p>In OpenID terminology, this plugin acts as an an 
<a href="http://openid.net/specs/openid-authentication-1_1.html#anchor2">Identifer</a> and
<a href="http://openid.net/specs/openid-authentication-1_1.html#anchor2">Identity Provider</a>.
It provides an
<a href="http://openid.net/specs/openid-authentication-1_1.html#anchor2">endpoint URL</a>,
handles OpenID requests on that endpoint, allows
<a href="http://openid.net/specs/openid-authentication-1_1.html#mode_associate">associations</a>,
and authenticates the user with an HTML form.</p>

<p>To use it, first download and install the
<a href="http://www.openidenabled.com/python-openid/">Python OpenID libraries</a>.
Then, download <a href="/space/openid_server.py">openid_server.py</a> and
place it in your plugins directory. Finally, add this line to your flavour's
head template:</p>

<div class='p-shadow'><pre><code>&lt;link rel="openid.server"
      href="$base_url$openid_trigger"&gt;
</code></pre></div>

<p><br class='clearing' />If you want to use SSL, hard-code your base url, like so:</p>

<div class='p-shadow'><pre><code>&lt;link rel="openid.server"
      href="https://snarfed.org$openid_trigger"&gt;
</code></pre></div>

<p><br class='clearing' />Finally, add the <code>openid_password</code> (required) and <code>openid_trigger</code> (optional)
config variables to your <code>config.py</code>:</p>

<div class='p-shadow'><pre><code>py['openid_password'] = 'topsecret!'
py['openid_trigger'] = '/openid'
</code></pre></div>

<p><br class='clearing' />Et voila! You should be good to go. Try it out on a friendly neighborhood
OpenID-enabled blog near you, like maybe
<a href="http://kveton.com/blog/">Scott Kveton</a>'s.</p>

<p>You can also provide your name, email address, and other information to sites
that you log into with OpenID, using the
<a href="http://www.openidenabled.com/openid/simple-registration-extension">Simple Registration
Extension</a>.
Just fill in any of these config variables in <code>config.py</code>:</p>

<div class='p-shadow'><pre><code>py['openid_nickname'] = 'ryan'
py['openid_email'] = 'ryan'
py['openid_fullname'] = 'Ryan Barrett'
py['openid_dob'] = '1901-01-01'
py['openid_gender'] = 'M'
py['openid_postcode'] = '90001'
py['openid_country'] = 'US'
py['openid_language'] = 'EN-us'
py['openid_timezone'] = 'America/Los_Angeles'
</code></pre></div>

<p><br class='clearing' />Default HTML is included for the endpoint, login, and error pages. For your
CSS styling pleasure, it uses divs with the classes <code>openid-info</code>,
<code>openid-login</code>, and <code>openid-error</code>.</p>

<p>You can override the default HTML by adding <code>openid-info</code>, <code>openid-login</code>, and
<code>openid-error</code> templates for your flavour of choice. Example templates for the
html flavour are included in
<a href="/space/openid_server-0.3.tar.gz">openid_server-0.3.tar.gz</a>.</p>

<p>openid_server.py is copyright 2006 <a href="/space/about">Ryan Barrett</a>, and is
distributed under the <a href="http://www.gnu.org/licenses/gpl.html">GPL</a>.</p>

<p>See also:</p>

<ul>
<li><a href="/space/pyblosxom+openid+comments">pyblosxom openid comments</a></li>
<li><a href="/space/pyblosxom+ajax+comments">pyblosxom ajax comments</a></li>
<li><a href="/space/windows+p2p">windows p2p</a></li>
<li><a href="/space/pyblosxom+index">pyblosxom index</a></li>
<li><a href="/space/pyblosxom+history">pyblosxom history</a></li>
<li><a href="/space/photogallery">photogallery</a></li>
<li><a href="/space/hardcodedates">hardcodedates</a></li>
<li><a href="/space/filekicker">filekicker</a></li>
</ul>

  </content>

  <rdf:Seq>

<rdf:li>
<rdf:Description rdf:about="#1197287572.89">
  <dc:source> http://snarfed.org/ </dc:source>
  <dc:title> pyblosxom openid server </dc:title>
  <dc:creator> http://theli.is-a-geek.org/blog/ </dc:creator>
  <dc:date> cmt_pubDate </dc:date>
  <dc:format> text/html </dc:format>

  <content>
    i don't know why but neither your comments nor server openid plugins are not working for me with registration extension ... so i've slightly modified them and have such setup working with <br />
python-openid-2.0.1
  </content>
</rdf:Description>
</rdf:li>

<rdf:li>
<rdf:Description rdf:about="#1197507946.21">
  <dc:source> http://snarfed.org/ </dc:source>
  <dc:title> pyblosxom openid server </dc:title>
  <dc:creator> hdh </dc:creator>
  <dc:date> cmt_pubDate </dc:date>
  <dc:format> text/html </dc:format>

  <content>
    test my setup
  </content>
</rdf:Description>
</rdf:li>

<rdf:li>
<rdf:Description rdf:about="#1205106641.62">
  <dc:source> http://snarfed.org/ </dc:source>
  <dc:title> pyblosxom openid server </dc:title>
  <dc:creator> lance </dc:creator>
  <dc:date> cmt_pubDate </dc:date>
  <dc:format> text/html </dc:format>

  <content>
    Testing mine too.
  </content>
</rdf:Description>
</rdf:li>

<rdf:li>
<rdf:Description rdf:about="#1208129519.89">
  <dc:source> http://snarfed.org/ </dc:source>
  <dc:title> pyblosxom openid server </dc:title>
  <dc:creator> http://pmeerw.dyndns.org/blog </dc:creator>
  <dc:date> cmt_pubDate </dc:date>
  <dc:format> text/html </dc:format>

  <content>
    test
  </content>
</rdf:Description>
</rdf:li>

<rdf:li>
<rdf:Description rdf:about="#1213127285.1">
  <dc:source> http://snarfed.org/ </dc:source>
  <dc:title> pyblosxom openid server </dc:title>
  <dc:creator> Fotios </dc:creator>
  <dc:date> cmt_pubDate </dc:date>
  <dc:format> text/html </dc:format>

  <content>
    test
  </content>
</rdf:Description>
</rdf:li>

<rdf:li>
<rdf:Description rdf:about="#1222025623.8">
  <dc:source> http://snarfed.org/ </dc:source>
  <dc:title> pyblosxom openid server </dc:title>
  <dc:creator> AndCycle </dc:creator>
  <dc:date> cmt_pubDate </dc:date>
  <dc:format> text/html </dc:format>

  <content>
    test
  </content>
</rdf:Description>
</rdf:li>

<rdf:li>
<rdf:Description rdf:about="#1222026039.93">
  <dc:source> http://snarfed.org/ </dc:source>
  <dc:title> pyblosxom openid server </dc:title>
  <dc:creator> AndCycle </dc:creator>
  <dc:date> cmt_pubDate </dc:date>
  <dc:format> text/html </dc:format>

  <content>
    test
  </content>
</rdf:Description>
</rdf:li>

<rdf:li>
<rdf:Description rdf:about="#1233211709.63">
  <dc:source> http://snarfed.org/ </dc:source>
  <dc:title> pyblosxom openid server </dc:title>
  <dc:creator> Busby </dc:creator>
  <dc:date> cmt_pubDate </dc:date>
  <dc:format> text/html </dc:format>

  <content>
    Testing my site<br />
<a href="http://tobablog.com">Busby @ seo test</a>
  </content>
</rdf:Description>
</rdf:li>

<rdf:li>
<rdf:Description rdf:about="#1245136935.36">
  <dc:source> http://snarfed.org/ </dc:source>
  <dc:title> pyblosxom openid server </dc:title>
  <dc:creator> internet faxes </dc:creator>
  <dc:date> cmt_pubDate </dc:date>
  <dc:format> text/html </dc:format>

  <content>
    I think it's work for me. Thanks
  </content>
</rdf:Description>
</rdf:li>

<rdf:li>
<rdf:Description rdf:about="#1258128295.83">
  <dc:source> http://snarfed.org/ </dc:source>
  <dc:title> pyblosxom openid server </dc:title>
  <dc:creator> mbt shoes </dc:creator>
  <dc:date> cmt_pubDate </dc:date>
  <dc:format> text/html </dc:format>

  <content>
    The <a rel="nofollow" href="http://www.flyonsale.com/">MBT Shoes</a> which I bought in <a rel="nofollow" href="http://www.flyonsale.com/">MBT Shoes Sale</a> online,<br />
<br />
<br />
<br />
<br />
I really like this pair of <a rel="nofollow" href="http://www.flyonsale.com/">MBT 2009</a> shoes and <a rel="nofollow" href="http://www.flyonsale.com/">Discount MBT Shoes</a>.
  </content>
</rdf:Description>
</rdf:li>

  </rdf:Seq>
</rdf:Description>
</rdf:RDF>
