假设一个站点正在使用 Redis(远程)来存储 session 数据,并且该 Redis 存储受到身份验证 key 的保护
因此,在 php.ini 中,使用 phpredis,将其设置为:
session.save_handler = redis
session.save_path = "tcp://redis.example.com:6379?auth=[AUTH_STRING_HERE]"
有什么办法可以让这个更安全吗?服务器上运行 phpinfo() 的任何人;可以看到身份验证字符串...
最佳答案
从 PHP 7 开始,您可以将选项数组传递给 session_start() 命令,例如
session_start([
'save_handler' => 'redis',
'save_path' => 'tcp://redis.example.com:6379?auth='. $your_auth
]);
这样,您就可以使用标准的 12 因素应用程序最佳实践,将敏感数据存储在 .env 文件中。
对于 7 之前的 php 版本,您应该能够使用 ini_set覆盖存储在 php.ini 文件中的值。
关于php - 在 Redis 上安全存储 PHP session 的身份验证 key ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20102448/