我有一个angular2应用程序,通过OAuth2使用密码授予类型进行身份验证。我将会话令牌存储在sessionStorage上,我需要存储更安全的其他数据,如用户当前角色。
我知道我可以在sessionStorage或localStorage中存储更多信息,但这很容易被用户修改。虽然真的,如果用户修改了sessionStorage,我的后端是安全的,因为根据用户角色检查令牌。
如果用户修改了他的角色,他会看到一些隐藏的选项,我不想要这个。
我想到了两个解决方案,我想听一些提示。
有什么建议吗?感谢。
答案 0 :(得分:1)
我们的仪表板中有与您相同的案例。
接近第二个选项有点乱,因为你需要考虑如果用户重新加载页面会发生什么。 重新加载页面时的服务将丢失数据,您将不知道用户的角色在哪里。 您可以通过在init时在应用程序组件中运行http来解决此问题。
对于加密的情况,请阅读: https://stormpath.com/blog/where-to-store-your-jwts-cookies-vs-html5-web-storage
目前我们使用全球服务的方法。 (服务是Singelton)