我需要将加密密钥存储在php应用程序的环境变量中,但是我们的安全策略要求不能从文件系统中任何位置的文件中定义该密钥。有没有一种方法可以从命令行或通过其他方法设置此变量,而无需依赖环境文件?
答案 0 :(得分:0)
您可以在Apache配置文件中设置环境变量,然后在PHP中访问它们。如果您希望它不在文件中,则可以在将环境变量添加到文件后重新启动Apache,然后删除Apache配置文件。 Apache已经启动时,您不需要将它放在那儿。但是,如果配置文件崩溃,则无法在没有配置文件的情况下重新启动Apache。否则,我不确定如何将其保存在文件中。
在Apache配置文件中(必须启用mod_env):
SetEnv NAME_OF_ENV_VAR put_your_encryption_key_here
在PHP中:
$env_var = apache_getenv('NAME_OF_ENV_VAR');