小编Dou*_*oug的帖子

AWS Cognito Identity Service Provider 似乎将访问令牌存储在本地存储中。这安全吗?

我们正在开发一个应用程序,该应用程序使用通过 Amplify 托管在 AWS 上的 React 前端网站。它与在 EC2 / Elastic Beanstalk 上运行的 .NET Core 3.1 Web API 进行通信。Cognito 用于通过配置为使用 JWT 令牌的 Web API 进行用户身份验证。

它工作正常,但我们注意到 Cognito 提供商将 JWT 访问令牌存储在浏览器本地存储中。这是我们在 Chrome 中使用 F12 并检查本地存储所看到的。

在此输入图像描述

根据我们的了解,不建议将访问令牌存储在本地存储中,因为这会使应用程序容易受到 XSS 攻击。奇怪的是,Cognito 身份提供商选择在这里存储敏感信息。

如果这种方法被认为不安全,那么提供商是否可以配置为将该信息存储在其他地方,例如 cookie?

或者,当我们同时控制前端和后端时,是否有其他方法可以用来保护不涉及令牌的API?显然,API 需要知道哪个用户登录到 Web 应用程序才能执行授权检查。[注意应用程序中的授权是记录级别并在数据库表中定义,因此它超出了简单的用户配置文件属性。]

非常感谢您的建议。

道格

amazon-web-services access-token reactjs amazon-cognito

4
推荐指数
1
解决办法
5316
查看次数

如何根据部署配置文件运行不同的前后SSDT发布脚本

我在Visual Studio 2013中使用SSDT.

我为开发服务器创建了一些发布前和发布后脚本.预部署脚本从表中清空数据并重新设置所有自动标识字段.部署后脚本使用静态和示例数据填充表.

现在我需要将数据库发布到我们的登台和实时数据库服务器.我为这些服务器创建了新的"publish.xml"配置文件.但显然我不希望运行相同的前后脚本.

如何根据发布配置文件指定不同的脚本,或使脚本知道目标并执行不同的操作.

我最关心的是发布到实时服务器并意外破坏数据.

提前致谢.

道格

publish sql-server-data-tools

3
推荐指数
2
解决办法
851
查看次数