rinvex / laravel-authy
Rinvex Authy 是一个简单的 Authy TOTP 包装器,Authy TOTP 是消费者评分最高的双因素认证服务,为开发者提供最简单的 2fa Rest API,并为企业级强认证平台。
Requires
- php: ^8.1.0
- guzzlehttp/guzzle: ^7.4.0
- illuminate/support: ^10.0.0 || ^11.0.0
- rinvex/authy: ^7.0.0
Requires (Dev)
- codedungeon/phpunit-result-printer: ^0.32.0
- illuminate/container: ^10.0.0 || ^11.0.0
- phpunit/phpunit: ^10.1.0
README
本包仅是 Laravel 对 rinvex/authy
的包装。
Rinvex Authy 是 Authy TOTP API 的简单包装器,Authy TOTP 是消费者评分最高的双因素认证服务,为开发者提供最简单的 2fa Rest API,并为企业级强认证平台。
目录
使用方法
使用非常简单直接
Authy 应用
获取 Authy 应用实例并与之交互
$authyApp = app('rinvex.authy.app'); $appStats = $authyApp->stats(); // Get app stats $appDetails = $authyApp->details(); // Get app details
Authy 用户
获取 Authy 用户实例并与之交互
$authyUser = app('rinvex.authy.user'); $user = $authyUser->register('user@domain.com', '317-338-9302', '54'); // Register user $userActivity = $authyUser->registerActivity($user->get('user')['id'], 'cookie_login', 'Test Data'); // Register user activity $userStatus = $authyUser->status($user->get('user')['id']); // Get user status $userDeleted = $authyUser->delete($user->get('user')['id']); // Delete user
Authy 令牌
获取 Authy 令牌实例并与之交互
$authyToken = app('rinvex.authy.token'); $smsTokenSent = $authyToken->send($user->get('user')['id'], 'sms'); // Send SMS token $callTokenStarted = $authyToken->send($user->get('user')['id'], 'call'); // Start automated call $tokenVerified = $authyToken->verify(54321, $user->get('user')['id']); // Verify token
直观响应
与 Authy 响应直观工作
$body = $tokenVerified->body(); // Get all response body $code = $tokenVerified->statusCode(); // Get response status code $succeed = $tokenVerified->succeed(); // Check whether respose is a success $failed = $tokenVerified->failed(); // Check whether respose is a failure $message = $tokenVerified->message(); // Get response message $item = $tokenVerified->get('item'); // Get response body item $errors = $tokenVerified->errors(); // Get response errors
注意:所有 authy 请求都返回 authy 响应,以统一的接口方便您,因此您可以像上面那样以相同的方式与所有响应交互。
安装
-
通过 composer 安装包
composer require rinvex/laravel-authy
-
如果您还没有以下行,请将其添加到您的
config/services.php
文件中,在数组末尾之前'authy' => [ 'secret' => env('AUTHY_SECRET'), ],
-
如果您还没有以下行,请将其添加到您的项目
.env
文件中,在末尾AUTHY_SECRET=AuthySecretKey
注意:确保将
AuthySecretKey
替换为上一步中的密钥。 -
完成!您可以再次参考 使用方法。
升级
-
从
v1.x
升级到v2.x
API 实现完全向后兼容,但沙盒 API 已被弃用。此外,请注意现在需要 PHP7。最后,配置选项已从
services.authy.mode
、services.authy.keys.production
和services.authy.keys.sandbox
更改为只有一个密钥services.authy.secret
,以便于使用和一致性,相应地,环境变量AUTHY_MODE
、AUTHY_PRODUCTION_KEY
和AUTHY_SANDBOX_KEY
被替换为只有一个环境变量AUTHY_SECRET
。
变更日志
有关项目的完整历史记录,请参阅 变更日志。
支持
以下支持渠道随时可用
贡献 & 协议
感谢您考虑为该项目做出贡献!贡献指南可以在 CONTRIBUTING.md 中找到。
欢迎提出错误报告、功能请求和拉取请求。
安全漏洞
如果您在此项目中发现安全漏洞,请发送电子邮件至 help@rinvex.com。所有安全漏洞都将得到及时处理。
关于 Rinvex
Rinvex 是一家成立于2016年6月的开罗,埃及的软件解决方案初创公司,专注于为中小企业提供集成企业解决方案。我们相信,我们的动力是“价值、触达和影响力”,这是我们与众不同的地方,通过软件的力量释放我们哲学的无尽可能性。我们喜欢称之为“与生活同步的创新”。这就是我们为推进人类进步尽我们的一份力。
商标
- Authy™ 是 Twilio Inc. 的商标。
- Laravel™ 是 TAYLOR OTWELL 的商标。
许可证
本软件遵循 MIT 许可证 (MIT) 发布。
(c) 2016-2022 Rinvex LLC,部分权利保留。