alish/laravel-otp

我的优秀包

v0.2.5 2021-02-15 12:38 UTC

This package is auto-updated.

Last update: 2024-09-15 20:40:54 UTC


README

Latest Version on Packagist Build Status Quality Score Total Downloads

一次性密码认证因其可靠性和易用性在软件开发者中获得了显著的人气。使用此模块,您可以将OTP以相当直接的方式嵌入到Laravel项目中。此包配备了缓存和数据库驱动器,为开发者提供选择单元以存储OTP和其他相关信息的自由。

安装

您可以通过composer安装此包

composer require alish/laravel-otp

用法

为特定密钥发行新令牌

$token = Otp::issue($key = "string");

要撤销特定密钥的令牌,可以使用

$bool = Otp::revoke($key = 'string'); // return true if a valid provided key revoked

检查令牌与密钥的一致性

$bool = Otp::check($key = 'string', $token = 'already issued token'); // if key and token match return true

如果您想使用生成的OTP令牌(这意味着检查提供的密钥、令牌,然后撤销如果它们匹配),则可以

$bool = Otp::use($key = 'string', $token = 'already issued token'); // return true if provided key, token match

请注意,如果数据库驱动器是您首选的选择,您应该首先发布迁移文件

php artisan vendor:publish --provider="Alish\LaravelOtp\OtpServiceProvider" --tag=migrations

然后运行您的迁移

php artisan migrate

为了能够调整此包的配置,您应该使用以下命令发布您的配置

php artisan vendor:publish --provider="Alish\LaravelOtp\OtpServiceProvider" --tag=config
  • 默认值:使用此值,您可以修改存储OTP和其他相关信息的默认方法。

  • 类型:此变量确定OTP中包含的字符类型。选项有字母、字母数字、数字和强(包括特殊字符)。

  • 长度:通过更改此变量,您可以确定OTP的字符数。

  • 区分大小写:使用此变量,您可以控制包对大小写的敏感性。

  • 自定义':将您想要从中创建自定义OTP的字符集作为简单的字符串(例如:"1234")传递给此变量。

  • 超时:此变量确定令牌激活的秒数。要将令牌设置为永久有效,请将超时设置为null。

  • 哈希:使用此变量,您可以确定令牌是否应进行哈希处理。

  • 唯一:使用此变量,您可以在为特定密钥创建新令牌后撤销所有生成的令牌。此功能仅适用于数据库驱动器。

测试

composer test

变更日志

有关最近更改的更多信息,请参阅CHANGELOG

贡献

有关详细信息,请参阅CONTRIBUTING

安全

如果您发现任何与安全相关的问题,请通过电子邮件alishabani9270@gmail.com报告,而不是使用问题跟踪器。

鸣谢

许可证

MIT许可证(MIT)。有关更多信息,请参阅许可证文件

Laravel包模板

此包是使用Laravel包模板生成的。