hapxu3/esia-laravel

Laravel框架的ESIA连接器

v1.0.0-alpha 2020-10-26 02:13 UTC

This package is auto-updated.

Last update: 2024-09-29 05:42:58 UTC


README

该包处于开发阶段,版本为alpha。可获取系统中的用户名和标识符(oid)。

使用 Laravel Socialite

安装

使用Composer安装

composer require hapxu3/esia-laravel

使用

安装后,发布配置文件,该文件将作为 config/esia.php 可用

php artisan vendor:publish --tag=esia

在此文件中可以设置变量
redirectUrl - 用户在ESIA网站上授权后的跳转url
scope - 默认设置为 ['fullname', 'birthdate'] 的权限集合
signer - 可通过OpenSsl进行两种签名方式:1) 通过php扩展函数 2) 通过cli。默认使用第二种。第一个的类为 Esia\Signer\SignerPKCS7
tmpPath - 用于创建签名内容的临时文件路径

.env 文件中添加以下变量的值
ESIA_TEST - 工作模式(测试/生产 = true/false)
ESIA_CLIENT_ID - clientId或ESIA术语中的助记符
ESIA_CERT_PATH - 证书文件路径
ESIA_PRIVATE_KEY_PATH - 私钥文件路径
ESIA_PRIVATE_KEY_PASSWORD - 私钥文件密码短语

以下是一个无状态的示例,即令牌的存储由应用程序定义。

获取驱动程序对象

$driver = Socialite::driver('esia')

创建用户跳转链接

$redirectUrl = Socialite::driver('esia')->stateless()->buildUrl()

获取OAuth用户对象

$user = Socialite::driver('esia')->stateless()->user()

原始数据存储在 $user->user

感谢

由于这是用于Laravel的 fr05t1k/esia 库的适配器,我感谢 fr05t1k 和开发团队提供的开源代码和许可证。

许可证

MIT。请随意使用 :)