opauth/opauth

PHP 多提供者身份验证框架

安装数量: 700,398

依赖者: 91

建议者: 2

安全: 0

星标: 1,650

关注者: 112

分支: 242

开放问题: 34

1.0.0-alpha.1 2014-04-07 17:00 UTC

This package is auto-updated.

Last update: 2024-09-13 10:18:14 UTC


README

Opauth 是一个 PHP 多提供者身份验证框架,灵感来源于 OmniAuth for Ruby

Opauth 使 PHP 应用程序能够轻松进行用户身份验证。

http://opauth.org 尝试 Opauth

Build Status

什么是 Opauth?

Opauth 为 PHP 应用程序提供了一种标准化的方法来与身份验证提供者进行接口。

作为一个框架,Opauth 提供了一组 API,允许开发者创建在 PHP 框架和应用程序中按预期工作的 策略

Opauth 与其他 PHP 应用程序和框架配合良好。目前支持以下内容

如果你的 PHP 框架还没有列出,你仍然可以像使用正常的 PHP 组件(类)一样使用 Opauth。

快速入门

如何运行捆绑示例的指南。

  1. 将你的 Web 服务器的 DocumentRoot 设置为 example/。(Opauth 可以在你的 PHP 应用程序中实例化,但我们将在此快速入门指南中省略这一点)

  2. 配置 Opauth。

    首先,通过复制或重命名 opauth.conf.php.defaultopauth.conf.php 来复制 opauth 配置文件。

    打开 opauth.conf.php 并进行必要的更改。

  3. 安装一些 Opauth 策略。将策略文件放置在 lib/Opauth/Strategy/ 中。

    对于此示例,我们建议您从 Opauth-Facebook 开始。

    i. 下载策略文件并将它们放置在lib/Opauth/Strategy/Facebook/

    ii. 按照以下步骤在Opauth-Facebook的README中进行操作以设置您的Facebook应用。

    iii. 在opauth.conf.php下的Strategy中添加以下内容

<?php
'Strategy' => array(
    // Define strategies here.

    'Facebook' => array(
        'app_id' => 'YOUR APP ID',
        'app_secret' => 'YOUR APP SECRET'
    ),
);

最后,将用户发送到http://localhost/facebook进行身份验证。

有关更详细的信息,特别是如何将Opauth与您的PHP应用程序结合使用,请查看Wiki

可用策略

策略是一组指令,它与相应的身份验证提供者接口,并将它们回传到Opauth。

特定提供者

通用策略:OAuth

请参阅策略列表以获取Opauth策略的最新列表或进行请求。如果您想贡献一个策略,请参阅策略贡献指南

要求

PHP 5 (>= 5.2) 且启用了allow_url_fopen

贡献

Opauth需要您的贡献,特别是以下内容

  • 更多策略 请参阅Wiki以获取贡献指南,并在您的工作准备好时通知我们。

  • 更多PHP框架和CMS的插件,例如Symfony、Laravel、WordPress、Drupal等。

  • 指南和教程 如何在CakePHP应用程序上实现Opauth等。

问题与疑问

在您的项目中使用了Opauth?让我们知道!

变更日志

####v0.4.5 (25 Feb 2018)

  • 修复了不安全的序列化/反序列化安全问题。(感谢 @YuzuruS #124)

####v0.4.4 (10 May 2013)

  • 添加了HTTP User-Agent头部。(感谢 @rkaldung #41)

####v0.4.3 (10 January 2013)

  • 修复了serverPost()中的错误,其中用户提供的选项未正确应用。(感谢 @ritou #26)

####v0.4.2 (28 August 2012)

  • 修复了会话问题,现在检查session_id()而不是$_SESSION (感谢 @sirikkoster #20)

####v0.4.1 (22 July 2012)

  • 如果会话已经开始,则不启动会话。(感谢 @Claymm)
  • 修复了错误信息不正确的问题。(感谢 @Claymm)
  • 移除了@符号用于file_get_contents(感谢 @Takehiro-Adachi)

####v0.4.0 (10 June 2012)

  • OpauthStrategy类中的mapProfile()clientGet()

####v0.3.0 (30 May 2012)

  • 一些单元测试
  • 策略内部属性的命名更一致
  • 更智能地加载策略,能够对类文件可能的位置做出一些猜测。

####v0.2.0 (23 May 2012)

  • Opauth现在是Composer兼容的,并在Packagist上列出。
    • Opauth现在支持自动加载器
    • 如果策略没有自动加载,Opauth将回退并搜索配置中定义的strategy_dir
  • 策略Foo的类名现在应该是FooStrategy而不是Foo。
    • 这是为了减少由于Opauth不需要使用命名空间而导致类名冲突的可能性。
    • 类似v0.1.0-type的类名,即Foo,仍然可以使用,但现在已弃用。

####v0.1.0 (2012年5月22日)

  • 初始版本

许可

MIT许可证 版权所有 © 2012-2013 U-Zyn Chua (http://uzyn.com)

咨询

U-Zyn Chua是Zynesis咨询的首席顾问。