jgxvx/cilician-bundle

从 Symfony 应用程序访问 haveibeenpwned.com API。

安装次数: 5,664

依赖关系: 0

建议者: 0

安全: 0

星星: 0

分支: 0

类型:symfony-bundle

4.0.0 2023-12-25 14:49 UTC

This package is auto-updated.

Last update: 2024-09-25 16:20:58 UTC


README

将 cilician,一个用于 PHP 的 haveibeenpwned.com API 客户端,集成到 Symfony 应用的 Bundle。

pipeline status coverage report

安装

$ composer require jgxvx/cilician-bundle

文档

此 Bundle 包裹了 Cilician 库。请参考库文档了解您可以使用它做什么。

服务

该 Bundle 提供了两个公开服务:主库服务 cilician 和密码验证器 cilician.validator.isunbreachedpassword

cilician 服务

使用 Jgxvx\Cilician\Service\Cilician 类型提示您的参数,或通过别名 cilician 请求服务以将服务注入到您的组件中。

密码验证器 & 约束

为了防止用户选择一个在已记录的数据泄露中出现的密码,请在您的注册表单中添加 IsUnbreachedPassword 约束。

$builder
    ->add('password', PasswordType::class, [
        'constraints' => [
            new IsUnbreachedPassword(),
        ],
        'label' => 'label.password',
        'attr' => [
            'autocomplete' => 'off',
        ],
    ]);

还可以将约束断言添加到属性中。但是,应该非常谨慎地使用:确保不要在数据库中保存明文密码。此外,如果与用户实体一起使用,这很可能会不起作用,因为密码属性将包含密码散列。

use Jgxvx\CilicianBundle\Validator\Constraints as CilicianAssert;

// ...

/**
 * @var string
 *
 * @CilicianAssert\IsUnbreachedPassword()
 */
private $password;

缓存

如果存在一个在 cache 别名下的 PSR-16 兼容缓存服务,它将被注入到 cilician 中以启用缓存。

日志记录

如果存在一个在 logger 别名下的 PSR-3 兼容日志记录器,它将被注入到 cilician 中以启用日志记录。

许可证

CilicianBundle 是在 MIT 许可证下发布的开源软件。请参阅 LICENSE 文件以获取更多信息。

贡献

请参阅 贡献指南