acedude/lightopenid

轻量级的PHP5库,用于简单的OpenID认证。

1.3.3 2021-02-16 00:28 UTC

This package is not auto-updated.

Last update: 2024-09-25 15:28:31 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进行身份验证只需2步

  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-streams。
  • 支持OpenID 1.1和2.0。
  • 支持Yadis发现。
  • 仅支持无状态/愚昧协议。
  • 与PHP >= 5兼容。
  • error_reporting(E_ALL | E_STRICT) 下不产生错误。

链接

许可证

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