gabel / opauth
PHP的多认证提供者框架
Requires
- php: >=5.3.0
Suggests
- opauth/facebook: Allows Facebook authentication
- opauth/google: Allows Google authentication
- opauth/twitter: Allows Twitter authentication
This package is auto-updated.
Last update: 2024-09-08 19:53:30 UTC
README
Opauth是一个PHP的多认证提供者框架,受到OmniAuth for Ruby的启发。
Opauth让PHP应用程序能够轻松实现用户认证。
在http://opauth.org上尝试Opauth。
什么是Opauth?
Opauth为PHP应用程序提供了一种标准化的方法来与认证提供者进行接口。
作为框架的Opauth提供了一套API,允许开发者创建在PHP框架和应用程序中按预期工作的策略。
Opauth与其他PHP应用程序和框架配合良好。目前支持以下环境:
- 纯PHP应用程序
- CakePHP(由uzyn维护)
- CodeIgniter(由destinomultimedia维护)
- CodeIgniter(由mcatm维护)
- FuelPHP(由andreoav维护)
- Laravel(由FakeHeal维护)
- PrestaShop(由Onasusweb维护)
- Silex(由icehero维护)
- SilverStripe(由Better Brief维护)
- Zend Framework 2(由lorenzoferrarajr维护)
- 以及更多。
如果你的PHP框架尚未列出,你仍然可以将Opauth当作一个正常的PHP组件(类)来使用。
快速入门
如何运行捆绑示例的指南。
-
将你的Web服务器的
DocumentRoot设置为example/。(Opauth可以在你自己的PHP应用程序中实例化,但我们将在此快速入门指南中省略这一点) -
配置Opauth。
首先,通过复制或重命名
opauth.conf.php.default到opauth.conf.php来复制opauth配置文件。打开
opauth.conf.php并进行必要的更改。 -
安装一些Opauth策略。将策略文件放置在
lib/Opauth/Strategy/。对于此示例,我们建议您从Opauth-Facebook开始。
1. 下载策略文件,并将它们放置在
lib/Opauth/Strategy/Facebook/目录下。2. 按照以下步骤操作:Opauth-Facebook的README来设置您的Facebook应用程序。
3. 在
opauth.conf.php中的Strategy部分添加以下内容
<?php 'Strategy' => array( // Define strategies here. 'Facebook' => array( 'app_id' => 'YOUR APP ID', 'app_secret' => 'YOUR APP SECRET' ), );
最后,将用户发送到https:///facebook进行身份验证。
有关更深入的信息,请参阅Wiki,特别是如何使用Opauth与您的PHP应用程序。
可用策略
策略是一组与相应的身份验证提供者接口并将结果传回Opauth的指令。
特定提供者
通用策略:OAuth
请参阅Wiki的策略列表获取Opauth策略的更新列表或进行请求。如果您想贡献策略,请参考策略贡献指南。
要求
PHP 5(>= 5.2)并启用allow_url_fopen
贡献
Opauth需要您的贡献,特别是以下内容
-
更多策略 参考Wiki获取贡献指南,并在您的工作准备就绪时通知我们。
-
更多PHP框架和CMS的插件,例如Symfony、Laravel、WordPress、Drupal等。
-
指南和教程 如何在CakePHP应用程序上实现Opauth等。
问题和疑问
- 讨论组:Google Groups 支持的主要渠道,尤其是使用问题。
- 问题:Github Issues
- Twitter:@uzyn
- 给我发邮件:chua@uzyn.com
- IRC:#opauth在Freenode
在您的项目中使用了Opauth?让我们知道!
变更日志
####v0.4.4 (2013年5月10日)
- 添加了HTTP User-Agent头部。(感谢 @rkaldung #41)
####v0.4.3 (2013年1月10日)
- 修复了
serverPost()中的错误,用户提供的选项未正确应用。(感谢 @ritou #26)
####v0.4.2 (2012年8月28日)
- 修复了会话问题,现在检查
session_id()而不是$_SESSION(感谢 @sirikkoster #20)
####v0.4.1 (2012年7月22日)
- 如果会话已经开始,则不会启动会话。(感谢 @Claymm)
- 修复了错误信息不正确的问题。(感谢 @Claymm)
- 移除了
@用于file_get_contents。(感谢 @Takehiro-Adachi)
####v0.4.0 (2012年6月10日)
- 为OpauthStrategy类添加了
mapProfile()和clientGet()。
####v0.3.0 (2012年5月30日)
- 一些单元测试
- Strategy的内部属性命名更一致
- 策略加载更智能,能够猜测类文件可能的位置。
####v0.2.0 (2012年5月23日)
- Opauth现在是Composer兼容的,并在Packagist上列出
- Opauth现在支持自动加载器
- 如果策略未自动加载,Opauth将回退并在配置中定义的
strategy_dir中搜索它
- 策略Foo的类名现在应该是FooStrategy而不是Foo。
- 这是为了减少由于Opauth不需要使用命名空间而导致的类名冲突的可能性。
- 0.1.0类型的类名,即Foo,仍然有效,但现在已弃用。
####v0.1.0 (2012年5月22日)
- 初始发布
许可证
MIT许可证 版权所有 © 2012-2013 U-Zyn Chua (http://uzyn.com)
咨询
U-Zyn Chua 是 Zynesis Consulting 的首席顾问。