dothem1337/lightopenid

轻量级的PHP5库,用于简单的OpenID身份验证。

1.3.1 2016-03-04 09:10 UTC

This package is auto-updated.

Last update: 2024-09-28 00:44:23 UTC


README

NOTICE

我不能再支持或维护这个项目了 - 如果你希望接管这个项目,请给我发邮件。

LightOpenID

轻量级的PHP5库,用于简单的OpenID身份验证。

快速入门

添加到composer.json

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

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

通过OpenID进行登录只需两步

  1. 与提供者进行身份验证

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

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

支持AX和SREG扩展

要使用AX和SREG扩展,在调用$openid->authUrl()之前指定$openid->required和/或$openid->optional。这些是数组,值是AX架构路径(URL的'path'部分)。例如

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

注意,如果服务器只支持SREG或OpenID 1.1,这些将自动映射到SREG名称。要获取值,请使用

$openid->getAttributes();

更多信息请参阅 USAGE.md

要求

此库需要PHP >= 5.1.2,并启用cURL或HTTP/HTTPS流包装器。

特性

  • 易于使用 - 您可以用不到十行代码编写一个功能性的客户端。
  • 如果可用,则使用cURL,否则使用PHP流。
  • 支持OpenID 1.1和2.0。
  • 支持Yadis发现。
  • 仅支持无状态/哑协议。
  • 与PHP >= 5兼容。
  • error_reporting(E_ALL | E_STRICT)下不会产生错误。

链接

许可

LightOpenID 是一个开源软件,可在 MIT许可 下使用。