如何在Craft CMS中以加密形式存储密码?

时间:2016-03-23 16:42:23

标签: encryption yii

我对Craft很新,而Craft对世界来说还是个新手。我想知道是否有人知道如何在数据库中加密存储密码,或者可以指向正确的方向,那里有关于如何执行此操作的一些说明?

我有一个很好的搜索,没有想出任何东西。我已经阅读了文档,它的“安全服务”中有加密方法,但我不明白如何实现它。我也遇到了一个可能有帮助的插件; https://github.com/t3kila/SecureField-Craft但我更喜欢本机解决方案,以便存储仍然不依赖于任何第三方插件。

我试过了;

$password = craft()->securityService->encrypt($password)

但无济于事......我相信对于那些知道怎么做的人来说,这将是一个相当简单的练习,但它只是那么新,以至于没有很多信息。

1 个答案:

答案 0 :(得分:1)

这应该是相当简单的。您可以使用Craft的SecurityService,但在存储到数据库之前,您还应该base64_encode加密的密码。

$encryptedPassword = base64_encode(craft()->security->encrypt($password));

$decryptedPassword = craft()->security->decrypt(base64_decode($encryptedPassword));