如何选择密码编码器算法动态

编辑该页面

警告:你浏览的文档欧宝官网下载appob娱乐下载Symfony 3.2,不再维护。

这个页面的更新版本Symfob娱乐下载ony 6.2(当前的稳定版本)。

如何选择密码编码器算法动态

通常,同一密码编码器用于所有用户通过配置适用于一个特定类的所有实例:

  • YAML
  • XML
  • PHP
1 2 3 4 5
# app / config / security.yml安全:#……编码器:ob娱乐下载Symfony核心组件\ \安全\ \ \用户:sha512

另一个选择是使用一个名为“编码器”,然后选择您要使用的编码器动态。

在前面的示例中,您已经设置sha512算法Acme \ UserBundle \实体\用户。这可能是足够安全对于一个普通用户,但如果你想让你的管理员有一个更强的算法,例如bcrypt。这可以用命名编码器:

  • YAML
  • XML
  • PHP
1 2 3 4 5 6 7
# app / config / security.yml安全:#……编码器:严厉的:算法:bcrypt成本:15

这将创建一个编码器严厉的。为了一个用户实例来使用它,必须实现的类EncoderAwareInterface。需要一个方法——的接口getEncoderName ()——应该返回编码器使用的名称:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
/ / src / Acme / / User.php UserBundle /实体名称空间Acme\UserBundle\实体;使用ob娱乐下载\组件\安全\核心\用户\用户界面;使用ob娱乐下载\组件\安全\核心\编码器\EncoderAwareInterface;用户实现了用户界面,EncoderAwareInterface{公共函数getEncoderName(){如果(美元- >isAdmin ()) {返回“苛刻”;}返回;/ /使用默认的编码器}}
这项工作,包括代码示例,许可下Creative Commons冲锋队3.0许可证。