Skip to content
Lightweight PHP5 library for easy OpenID authentication.
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
examples
provider
CHANGELOG.md
LICENSE
README.md
USAGE.md
composer.json
openid.php

README.md

NOTICE

I am no longer able to support or maintain this project - if you would like to take over the project, please drop me a line.

LightOpenID

Lightweight PHP5 library for easy OpenID authentication.

Quick start

Add to composer.json

"repositories": [
  {
    "type": "vcs",
    "url": "https://github.com/iignatov/LightOpenID"
  }
],

"require": {	
  "php": ">=5.4.0",
  "iignatov/lightopenid": "*"
}

Sign-on with OpenID in just 2 steps:

  1. Authentication with the provider:

    $openid = new LightOpenID('my-host.example.org');
    
    $openid->identity = 'ID supplied by user';
    
    header('Location: ' . $openid->authUrl());
  2. Verification:

    $openid = new LightOpenID('my-host.example.org');
    
    if ($openid->mode) {
      echo $openid->validate() ? 'Logged in.' : 'Failed!';
    }

Support for AX and SREG extensions:

To use the AX and SREG extensions, specify $openid->required and/or $openid->optional before calling $openid->authUrl(). These are arrays, with values being AX schema paths (the 'path' part of the URL). For example:

$openid->required = array('namePerson/friendly', 'contact/email');
$openid->optional = array('namePerson/first');

Note that if the server supports only SREG or OpenID 1.1, these are automaticaly mapped to SREG names. To get the values use:

$openid->getAttributes();

For more information see USAGE.md.

Requirements

This library requires PHP >= 5.1.2 with cURL or HTTP/HTTPS stream wrappers enabled.

Features

  • Easy to use - you can code a functional client in less than ten lines of code.
  • Uses cURL if avaiable, PHP-streams otherwise.
  • Supports both OpenID 1.1 and 2.0.
  • Supports Yadis discovery.
  • Supports only stateless/dumb protocol.
  • Works with PHP >= 5.
  • Generates no errors with error_reporting(E_ALL | E_STRICT).

Links

License

LightOpenID is an open source software available under the MIT License.

You can’t perform that action at this time.