首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >克服494云前端cookie错误的解决方案

克服494云前端cookie错误的解决方案
EN

Stack Overflow用户
提问于 2022-02-01 00:58:44
回答 1查看 918关注 0票数 0

我们使用aws cloudfront将我们的角度web应用分发到网络上。我们有这个设置和配置,所以我们的网络应用程序是实时的,可以访问。但是,由于需要允许跨这些应用程序进行身份验证,我们实现了cookie,其中域设置为核心域,子域为通配符。例如,我们可能有两个we应用程序,一个在appone.example.com,另一个在apptwo.example.com。通过将cookie域设置为.example.com,它们都在查看跨子域共享的相同的cookie选择。

现在,这个设置非常好,我们不发送带有api请求的cookie,而是只发送一个验证标头,这样就不会出现头部大小的问题,而且我们也不需要这些cookie进入cloudfront请求中。但是,这些请求是由浏览器发起的,因此不能操纵请求来删除cookie标题,而这正是问题产生的地方。

当我们有相当多的cookies (大约30)时,就会有两批白兰地曲奇和其他一些包含信息的曲奇,来激发认知设置来使用这些认知曲奇。这意味着请求大小约为22,000字节。这超过了20,480字节的aws限制,即声明为这里。如果我的请求低于20,480字节,它将成功完成。

现在,考虑到我不需要这些cookie来访问cloudfront请求,我假设您可以将它们从原始请求策略的部分标题中删除,或者使用Viewer Lambda@Edge函数。然而,它似乎还不足以实现这一功能。

下面是aws模板提供的一些示例代码。此Lambda@Edge函数不像上面建议的那样删除标头,但是,如果请求小于20,480字节,如果被击中,仍然应该记录事件。如果没有,它就不会.:

代码语言:javascript
复制
exports.handler = async (event, context) => {
    console.log(event);
    /*
     * Generate HTTP response using 200 status code with a simple body.
     */
    const response = {
        status: '200',
        statusDescription: 'OK',
        headers: {
            vary: [{
                key: 'Vary',
                value: '*',
            }],
            'last-modified': [{
                key: 'Last-Modified',
                value: '2017-01-13',
            }],
        },
        body: 'Example body generated by Lambda@Edge function.',
    };

    return response;
};

现在,我认为我可以通过删除一组涉及实例化的认知cookie和配置cookie来缓解这个问题,然而,这并不是一个理想的情况,因为这意味着每次您在两个系统之间分割和更改时,您都需要重新登录--这不是很好,也不适合我们非常专业的用例。另一种解决方案是删除cookie的使用,并切换到跨域共享的本地存储。然而,这就给XSS带来了安全挑战,从最初的研究来看,这似乎是不可行的,也是不可接受的。

因此,总的来说,基于我目前对aws的有限理解,我的问题是可以从请求中删除cookie头,从而允许在没有494错误页面的情况下接受请求。在我们的用例中,我们只希望使用cookie作为跨域存储的一种方式,因此不需要使用cookie来冒险处理静态js文件请求。

494错误图像链接

EN

回答 1

Stack Overflow用户

发布于 2022-02-01 17:10:38

如果您只是想避免向静态资产发送带有请求的cookie,请设置不同的域并从那里为它们提供服务。

但是我真的很想知道您在这里想什么;如果您的角度应用程序可以访问作为cookie存储的令牌,那么从XSS的角度来看,它并不比本地存储更安全。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70934575

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档