0

我正在使用 AngularJS 开发客户端应用程序。我需要从服务器端请求一些与授权相关的数据,并将其存储以用于访问控制决策。我不想在每个决定之前都请求数据。

我尝试使用浏览器本地存储,但我发现它可以在浏览器中进行编辑,这在我的情况下是不可接受的。我也考虑过加密授权数据,但只要加密是在​​客户端完成的,就可以进行逆向工程。

是否有一个安全(只读)存储可以保存授权数据以适应我的情况?

4

1 回答 1

1

您正在将数据发送到客户端,这是一个您无法控制的环境。你最多能做就是不方便他们修改。

使其无法修改?你不能这样做。(抽象地思考这个问题:你试图做的是禁止用户在他自己的设备上做一些操作。)

这就是为什么各种与安全相关的功能都需要留在后端(您控制的环境),或者至少包含一个后端组件的原因。

在您的特定情况下,将客户端的查看权限视为一种可用性功能:您不想将用户引导到他们不应该看到的页面,但后端的责任是只提供他们的数据实际上允许访问。因此,如果您有一个恶意用户去“他不应该去的地方”,那么后端将不向他们发送他不应该看到的数据。

于 2015-08-30T09:57:48.897 回答