ogogo / social-auth
使用 HybridAuth PHP 库,为 ZfcUser ZF2 模块启用通过 Google、Facebook、Twitter、Yahoo! 等进行认证。
Requires
- php: >=5.3.3
- hybridauth/hybridauth: *
- zendframework/zendframework: 2.*
- zf-commons/zfc-base: 0.1.*
- zf-commons/zfc-user: *
Requires (Dev)
- mockery/mockery: 0.8.0
This package is not auto-updated.
Last update: 2024-09-24 16:16:24 UTC
README
使用 HybridAuth PHP 库,为 ZfcUser ZF2 模块启用通过 Google、Facebook、Twitter、Yahoo! 等进行认证。
需求
- Zend Framework 2 (最新master)
- ZfcBase (最新master)
- ZfcUser (最新master)
- HybridAuth (最新master)
- 在 php.ini 中启用扩展 php_curl
功能
- 通过 AOL 登录 [不再支持]
- 通过 Facebook 登录 [完成]
- 通过 Foursquare 登录 [完成]
- 通过 Github 登录 [完成]
- 通过 Google 登录 [完成]
- 通过 LinkedIn 登录 [完成]
- 通过 Live 登录 [未完成]
- 通过 MySpace 登录 [未完成]
- 通过 OpenID 登录 [未完成]
- 通过 Twitter 登录 [完成]
- 通过 Yahoo! 登录 [完成]
- 通过 Tumblr 登录 [完成]
- 通过 Mail.Ru 登录 [完成]
- 通过 Odnoklassniki 登录 [完成]
- 通过 VKontakte 登录 [完成]
- 通过 Yandex 登录 [完成]
- 通过 Instagram 登录 [完成]
安装
建议使用 Composer 将此模块添加到您的 Zend Framework 2 应用程序中。在克隆 ZendSkeletonApplication 后,将 composer minimum-stability 设置更改为 "dev",并将 "ogogo/social-auth" 添加到要求列表中,然后运行 php composer.phar install/update。您的 composer.json 应该看起来像这样
{
"name": "zendframework/skeleton-application",
"description": "Skeleton Application for ZF2",
"license": "BSD-3-Clause",
"keywords": [
"framework",
"zf2"
],
"minimum-stability": "dev",
"homepage": "http://framework.zend.com/",
"require": {
"php": ">=5.3.3",
"zendframework/zendframework": "dev-master",
"ogogo/social-auth": "dev-master"
},
"autoload": {
"psr-0": {
"Hybrid": "./vendor/hybridauth/hybridauth/hybridauth/"
},
"classmap": ["./vendor/hybridauth/hybridauth"]
}
}
接下来,将所需的模块添加到 config/application.config.php
<?php
return array(
'modules' => array(
'Application',
'SocialAuth',
'ZfcBase',
'ZfcUser',
),
'module_listener_options' => array(
'config_glob_paths' => array(
'config/autoload/{,*.}{global,local}.php',
),
'module_paths' => array(
'./module',
'./vendor',
),
),
);
导入 ZfcUser(./vendor/zf-commons/zfc-user/data/schema.sql
)和 SocialAuth(./vendor/ogogo/social-auth/data/schema.sql
)的架构。
如果您在服务管理器配置中没有有效的 Zend\Db\Adapter\Adapter,请在 ./config/autoload/database.local.php
中放置以下内容
<?php
$dbParams = array(
'database' => 'changeme',
'username' => 'changeme',
'password' => 'changeme',
'hostname' => 'changeme',
);
return array(
'service_manager' => array(
'factories' => array(
'Zend\Db\Adapter\Adapter' => function ($sm) use ($dbParams) {
return new Zend\Db\Adapter\Adapter(array(
'driver' => 'pdo',
'dsn' => 'mysql:dbname='.$dbParams['database'].';host='.$dbParams['hostname'],
'database' => $dbParams['database'],
'username' => $dbParams['username'],
'password' => $dbParams['password'],
'hostname' => $dbParams['hostname'],
));
},
),
),
);
如果您在服务管理器配置中没有有效的 Zend\Session\SessionManager,请在 ./config/autoload/session.local.php
中放置以下内容
<?php
return array(
'service_manager' => array(
'invokables' => array(
'Zend\Session\SessionManager' => 'Zend\Session\SessionManager',
),
),
);
选项
确保检查 ZfcUser 中的可用选项:https://github.com/ZF-Commons/ZfcUser#options
SocialAuth 模块有两个文件,允许您配置支持的提供者。安装 SocialAuth 后,将 ./vendor/ogogo/social-auth/config/social-auth.global.php.dist
复制到 ./config/autoload/social-auth.global.php
并更改所需的值。同样,将 ./vendor/ogogo/social-auth/config/social-auth.local.php.dist
复制到 ./config/autoload/social-auth.local.php
并更改所需的值。