如何在 angular 应用程序中更安全地将主键保存在本地主机中?
How to save primary key in localhost more securely in angular app?
我正在做angular + Django rest framework 项目,我需要在登录后将用户的主键存储在本地存储中以进行功能操作。
但我注意到它在浏览器中可见,而且任何 javascript 开发人员都可以编辑它。
如何确保我的应用安全?
-加密主键然后存入本地?
但是这种加解密哪种方式最好呢?
还有其他解决方案吗?
不要信任客户端的浏览器来处理您的安全问题。
密钥将始终公开可见,无论如何。如果加密,可以找到加密代码并简单地还原它,或者在加密之前记录明文密钥。
但是让你的密钥在 JS 中可见并不是一件“坏事”。
目标是在服务器中安全地创建密钥,然后将其发送到浏览器。
这就是令牌大部分时间的工作方式。你甚至可以看到它们的内容,但它们有一个只有服务器知道的秘密签名,使它们成为真实的来源:如果有人试图编辑它,服务器可以检查签名是否有效(编辑后不会),然后采取相应行动。
简而言之:不关心浏览器中的明文密钥,只要它已在服务器上安全地创建即可。
我正在做angular + Django rest framework 项目,我需要在登录后将用户的主键存储在本地存储中以进行功能操作。 但我注意到它在浏览器中可见,而且任何 javascript 开发人员都可以编辑它。 如何确保我的应用安全?
-加密主键然后存入本地? 但是这种加解密哪种方式最好呢?
还有其他解决方案吗?
不要信任客户端的浏览器来处理您的安全问题。
密钥将始终公开可见,无论如何。如果加密,可以找到加密代码并简单地还原它,或者在加密之前记录明文密钥。
但是让你的密钥在 JS 中可见并不是一件“坏事”。
目标是在服务器中安全地创建密钥,然后将其发送到浏览器。
这就是令牌大部分时间的工作方式。你甚至可以看到它们的内容,但它们有一个只有服务器知道的秘密签名,使它们成为真实的来源:如果有人试图编辑它,服务器可以检查签名是否有效(编辑后不会),然后采取相应行动。
简而言之:不关心浏览器中的明文密钥,只要它已在服务器上安全地创建即可。