我想在我的网站中集成一个购物车。一旦用户退出应用程序,购物车应该会重置。这可以通过会话或使用数据库表来实现。
上述两个中应该首选什么?如果通过会话处理,是否存在任何安全漏洞?
我想在我的网站中集成一个购物车。一旦用户退出应用程序,购物车应该会重置。这可以通过会话或使用数据库表来实现。
上述两个中应该首选什么?如果通过会话处理,是否存在任何安全漏洞?
在安全部门,两者中没有一个比另一个更受青睐。你应该明白,这两个概念基本上都是“会话”,但是一个在 appdomain 中处理,另一个在 DB-domain 中处理。
应用域会话:
数据库会话:
您应该考虑有多少用户将使用您的网站。如果您查看很多,您可能需要多个服务器,在这种情况下,数据库会话将是您的最佳选择,如果您将使用单个 Web 服务器/数据库服务器,那么 appdomain 会话就可以了。
我不明白为什么 HttpSessions 会增加您的安全风险——如果您的会话被劫持,那么您的数据库访问权限可能也是如此。
如果您真的打算让用户的购物车是暂时的,那么显然您的 HttpSession 就足够了。扩展应用程序服务器通常具有会话复制功能来处理单个服务器故障。
从长远来看,我怀疑这种不稳定的购物车是否永远是你想要的,我发现在亚马逊上浏览并组装我的购物车非常方便,然后就放一会儿。由于将您的购物车保存在数据库中可能不是很多工作,我可能会这样做。
我会使用 Sessions - 没有必要将您的数据库堵塞在注销时将被销毁的数据上。
另外,Sessions 使用起来非常安全。