我目前正在设计架构,允许我的客户端网站使用跨源头在另一台服务器上与基本身份验证保护的主RESTful API
进行通信。
当用户在其中一个网站上注册时,表单会发布到PHP file
,然后创建一个流并将数据发布到主服务器上的API
(两个服务器都受SSL保护)
问题出现在此之后。对API
的每个请求,我需要重新提供用户'用户名和密码,以便通过基本身份验证成功验证它们。
如何安全地存储用户的用户名和密码,以便在用户更改帐户时我可以继续向客户网站提供对API的访问权限?
是否足够安全地将加密的用户名和密码存储在会话变量中?用户将敏感信息(如信用卡号)传递给主人API
,因此安全性是首要任务。
答案 0 :(得分:1)
如果您确实需要在SESSION
中存储用户名和密码。然后使用username
加密Password
和server-side key
。
此server side key
将位于您的服务器中的文件但不在根文件夹中,在根文件夹之外,您可以decrypt
在发送凭据时API
。
因此,即使您的会话遭到劫持,也不会轻易破解server side key
以外的凭据。
您可能希望查看这些链接