【发布时间】:2016-04-25 12:30:45
【问题描述】:
谁能告诉我 Symfony2 中 parameters.yml 的 SECRET 参数是什么?
【问题讨论】:
-
没人知道。如果有人知道这将不再是秘密。
谁能告诉我 Symfony2 中 parameters.yml 的 SECRET 参数是什么?
【问题讨论】:
它是框架使用的安全相关参数。来自文档:
这是一个对您的应用程序来说应该是唯一的字符串,它通常用于为与安全相关的操作添加更多的熵。其值应为随机选择的一系列字符、数字和符号,建议长度为 32 个字符左右。
Symfony2 使用这个秘密参数来生成 csrf 令牌。
您可以在有关secret parameter 的文档中找到更多详细信息和示例。
【讨论】:
% 具有参数的含义,所以更好不要使用符号如果你想确定没问题。
您只需要打开控制台(在 unix/mac/bsd 上)并运行此命令即可获取一些长度为 48 的随机数:
$ sudo apt-get update && sudo apt-get install pwgen
$ pwgen 48 1 -By
这将产生如下内容:
bah7oTeixi~to.aFoh~quoh~Yee3eequomae7aib`ie#hoo7
或者你可以使用你的 dev/urandom:
$ cat /dev/urandom | strings --bytes 1 | tr -d '\n\t [](){}"' | head --bytes 48
之后,您可以将其设置为秘密参数的值,而不是 ThisTokenIsNotSecretChangeIt
我也不建议使用http://nux.net/secret,因为长度和密码的字母(a-f0-9+)有限
【讨论】: