API:如何保护非相关用户的访问?

问题描述 投票:0回答:1

我正在开发一个 REST API。在我的移动应用程序中,我们有多个用户角色,他们都使用相同的 API。认为这些角色就像

customer
supplier
admin
。 API 使用令牌,确保每个人都需要登录并应将令牌发送到 API。

但是,如果有人以某种方式拥有令牌,他可以轻松地获得属于任何用户的任何信息。例如,使用客户

A
的代币,我们可以查看客户
B
、C`等信息。

不仅如此,我们还可以使用上述令牌访问专用于管理员的 API 调用。

这就是我想做的事情。

在每个请求中发送用户 ID。还将用户 ID 嵌入到令牌中。在服务器中,访问任何方法之前,都会检查request中的user id和token是否相同。

仅供参考,我正在使用 Firebase 身份验证和令牌,然后使用 AWS API Gateway 来验证对 API 的访问。我所指的用户 ID 在数据库中。

您认为我如何克服这个问题并确保 API 的安全?

amazon-web-services firebase security
1个回答
0
投票

只要确保仅通过安全连接传递令牌,该令牌就不太可能被拦截。如果您随后使用短期令牌(例如 Firebase 的 ID 令牌),即使令牌确实被拦截,它也只能使用很短的时间。

如果令牌确实被拦截,您可以撤销该令牌,如 Firebase 文档中的管理用户会话所示。

最后,您可以考虑实施 App Check 以获得额外的保护层,并 在您自己的后端中也检查该令牌

© www.soinside.com 2019 - 2024. All rights reserved.