PHP OpenID consumer
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Chris Smith 6991d67763 Fixed incorrect method calls when handling a revocation пре 12 година
examples Release 0.6 пре 14 година
test Improve parsehtml test пре 14 година
tests Unit tests for vox and myopenid. Issue #12. пре 15 година
.gitignore Ensure trust_root is always below return_to URL пре 15 година
README.mkdn Update README for 0.6 пре 14 година
ax.ext.php Release 0.6 пре 14 година
bigmath.inc.php Work properly without dl() function пре 14 година
discoverer.inc.php Handle array/object arguments in logging calls пре 13 година
keycache.php Initial import пре 15 година
keymanager.inc.php Add more logging to aid debugging пре 13 година
logging.inc.php Handle array/object arguments in logging calls пре 13 година
openid.gif Initial import пре 15 година
poster.inc.php Release 0.6 пре 14 година
processor.php Fixed incorrect method calls when handling a revocation пре 12 година
sreg.ext.php Release 0.6 пре 14 година
test.php Release 0.6 пре 14 година
urlbuilder.inc.php Add more logging to aid debugging пре 13 година

README.mkdn

# Welcome to Poidsy 0.6 ########################################################

Poidsy is a PHP OpenID consumer (or *relaying party* in OpenID 2.0 parlance). It
is designed to be extremely simple for developers to use, hiding as much of the
OpenID logic as possible.

## Prerequisites ###############################################################

Poidsy requires:

* PHP 5.2.10 or above, and
* `allow_url_fopen` set to `true` in PHP's configuration

To associate with identity providers (as opposed to using "dumb"
authentication), it needs:

* The `hash_hmac` function (available by default in PHP 5.2.0 unless explicitly
disabled), and
* The ability to write to the `keycache.php` file in the Poidsy directory

Finally, to enable Diffie-Hellman key exchange, it also needs:

* The `gmp` library (preferred), or
* The `bcmath` library.

You can check all of these at a glance by extracting the Poidsy distribution (or
checking out the source code) and viewing the bundled `test.php` page in your
browser.

## Installation ################################################################

Poidsy requires no explicit installation. Simple extract all of the files and
you're ready to go. If you extract the files to a directory accessible via your
webserver (you don't need to, if you don't want), the included demo consumers
should work out of the box.

## Using Poidsy ################################################################

Instructions for using Poidsy and integrating it into an existing authentication
solution are available on the website:

http://apps.md87.co.uk/openid/instructions.php

In short, you need to include Poidsy's `processor.php` script whenever an OpenID
action needs to be performed. Usually, this will be when the user first gives
you their identity and you want to verify it, and when the user's identity
provider sends them back to you with results.

Poidsy uses PHP sessions to store temporary data and to expose relevant
information to you once the identification procedure is complete. You therefore
need to make sure you call `session_start()` before including the processor, and
when you need to use any results.

A concise example of a stand-alone consumer is available in the `examples/basic`
directory.

## Contributing, reporting bugs, etc ###########################################

Poidsy is open source software, released under the MIT license. The latest
source code is available via GitHub: http://github.com/csmith/Poidsy. Bugs and
feature requests are logged on the issue tracker in the GitHub project. If
you've made changes to Poidsy and are willing to share them, please push them
and use the 'Pull Request' functionality in GitHub. Alternatively, feel free to
e-mail me patches.

If you need help with Poidsy, or want to get in touch, I can be found on IRC
in #MDbot on Quakenet (irc.quakenet.org), or can be reached via e-mail at
chris@dmdirc.com.