【问题标题】:Best Practice Angular HTTPOnly Cookies and RoleGuards最佳实践 Angular HTTPOnly Cookies 和 RoleGuards
【发布时间】:2021-07-19 06:00:04
【问题描述】:

我想提高我的网络应用程序的安全性,并开始为 Angular >= 10 寻找实际的安全概念。

所以我找到了 HTTPOnly cookie,它似乎是最先进的。从现在开始,我只使用“标准”JWT 令牌并提取道具,例如iat、exp 和我的来自 jwt 的数据,并基于它构建了相关的守卫。

但是,如果我按照此处HTTP Only Stackoverflow Question 的说明理解正确,则无法在客户端访问cookie。

所以我的问题是:

如何在客户端建立基于角色的保护,而不访问 cookie 并且不重复通过请求标头发送 jwt-token 的工作。

非常感谢您的 cmets! 最好的祝福 拉吉塔哈


更新:关于 cookie 和 jwt 的相关但不相同的讨论正在此处进行:to other related discussion

但我仍然缺少“最佳实践”!

【问题讨论】:

    标签: angular security cookies jwt httponly


    【解决方案1】:

    一般来说,您不能忽略您的后端。应该在另一端实施一些访问规则,以便只有授权用户才能拥有所需的访问权限。 问题是任何用户都可以轻松更新本地存储或 redux 状态,因此客户端会受到损害。

    【讨论】:

    • 我完全支持你,我的后端已经有 RouteGuards。但是想象一个前端具有不同的角色和视图,基于角色,在 jwt 中。但是如果无法访问此 jwt,我只能返回用户对象并根据其中包含的数据执行此操作,或者也返回 jwt。你认为更好的方法是什么?提前非常感谢,最好的问候 Ragitagha
    • @ragitagha 我考虑了一段时间,我认为你能做的最好的事情就是在服务器上使用 Angular Universal 或动态包/模块。这听起来像是矫枉过正,但它会完成这项工作=)它可以是自动化的等,但它可能有点复杂。后端的简单令牌验证将完成相同的工作,并且不允许对授权用户进行 CRUD。
    • jup,我同意,有趣的是,这里正在进行一个不相同但相关的讨论:to other related discussion。非常感谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-29
    • 2019-01-19
    • 2015-09-18
    相关资源
    最近更新 更多