satariall/lightopenid

轻量级PHP库,用于轻松实现OpenID身份验证。

1.3.4 2020-04-20 10:48 UTC

This package is auto-updated.

Last update: 2024-09-20 20:57:35 UTC


README

轻量级PHP库,用于轻松实现OpenID身份验证。

快速开始

添加到composer.json

composer require satariall/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的'路径'部分)。例如

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

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

$openid->getAttributes();

更多信息请参阅 USAGE.md

需求

此库需要PHP >= 7.0,并且已启用cURL或HTTP/HTTPS流封装器。

功能

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

链接

许可协议

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