dpc/hash-verifier

用于生成非密钥和验证HMac以与API进行身份验证的包

v0.2.0 2017-11-03 18:23 UTC

This package is not auto-updated.

Last update: 2024-09-22 07:51:52 UTC


README

使用非密钥进行哈希验证以及验证laravel应用程序中URL的hmac

安装

composer require dpc/hash-verifier

在Laravel 5.5中,服务提供者将被自动发现。通过运行以下命令发布配置文件:

php artisan vendor:publish --provider="Dpc\HashVerifier\AuthValidatorServiceProvider"

这将创建一个 validator.php 文件在你的配置文件夹中。

不要直接在配置文件中使用你的密钥。相反,从 .env 或服务器环境变量中获取它。

使用

将nonce生成契约和/或HMAC验证契约注入到你的类中

  public function __construct(NonceContract $generator)
    {
        $this->generator = $generator;
    }

以生成一个nonce

$nonce = $this->generator->generateNonce($user)

nonce将自动存储在session中,键为`nonce'。要检索它,请调用

$nonce = $this->generator->getStoredNonce();

确保您不修改nonce。

以验证nonce是否匹配

$nonceMatches = $this->generator->matches($user, $nonce);

以验证hmac是否与URL的组件匹配

$result = $this->validator->validate($uriComponents));

您可以在此repo中查找有关如何使用此包的更多详细信息

版本控制

此包遵循 semver。在主要版本中引入的功能以及创建的任何破坏性更改都在 releases 中提及。

贡献

  1. 将其分支
  2. 创建你的功能分支: git checkout -b my-new-feature
  3. 提交你的更改: git commit -am 'Add some feature'
  4. 推送到分支: git push origin my-new-feature
  5. 提交一个拉取请求 :D

作者

Dylan DPC

版本控制

此包遵循semver。在主要版本中引入的功能以及创建的任何破坏性更改都在releases中提及。

支持

如果您需要帮助或有任何问题,您可以

  • 在此创建一个问题
  • 向 @DPC_22 发送推文
  • 通过dylan.dpc@gmail.com给我发邮件
  • larachat的slack团队上私信我(@Dylan DPC)

许可

本项目采用MIT许可 - 有关详细信息,请参阅LICENSE文件