我有一个应用程序,使用AWS CloudFront API和Lambda创建Cloud Front cookies。不幸的是,我无法使用标准的HTTP响应格式设置cookie,并且必须使用document.cookie从HTML页面向用户浏览器设置cookie。 cookie包括授权访问内容的策略,确认cookie真实性的签名以及密钥对ID。 Lambda上的后端脚本创建cookie并将其作为有效载荷发送给请求者,然后作为变量传递给document.cookie。
我已经阅读了很多关于保护cookie(HttpOnly、会话cookie、安全标志等)的文章,正在尝试理解document.cookie的安全风险。在安全上下文中,通过Http响应和document.cookie设置cookie之间有区别吗?恶意用户是否可以在客户端创建cookie时将自己的策略插入到cookie中,从而访问其他内容,尽管页面只读?
以下是一些参考代码:
我已经阅读了很多关于保护cookie(HttpOnly、会话cookie、安全标志等)的文章,正在尝试理解document.cookie的安全风险。在安全上下文中,通过Http响应和document.cookie设置cookie之间有区别吗?恶意用户是否可以在客户端创建cookie时将自己的策略插入到cookie中,从而访问其他内容,尽管页面只读?
以下是一些参考代码:
payload = data["Payload"]
jsoned = JSON.parse(payload)
cookie = jsoned['cookie']
redirectUrl = jsoned['redirectUrl']
document.cookie = 'CloudFront-Policy' + "=" + cookie['CloudFront-Policy'] + "; path=/mydirectory";
document.cookie = 'CloudFront-Key-Pair-Id' + "=" + cookie['CloudFront-Key-Pair-Id'] + "; path=/mydirectory"
document.cookie = 'CloudFront-Signature' + "=" + cookie['CloudFront-Signature'] + "; path=/mydirectory"
这是我第一次发帖。提前感谢您的帮助。
-肯恩