node.js - 让管理员应用程序使用某些 api 密钥为另一个应用程序中的用户预订服务
问题描述
我在节点中有两个应用程序设置。两者共享同一个数据库。
因此,有一个供用户使用的应用程序。
用户可以看到他们的地址、钱包、图书服务等。
管理员和运营团队还有另一个应用程序,他们可以在其中获取用户详细信息。
比如,最后预订的服务,如果他们使用优惠券,如果他们使用钱包或信用卡或借记卡。
因此,如果用户有任何问题,他们可以请求支持团队代表他们预订服务。
我将如何授予支持或管理团队访问权限以执行操作。
问题是,每条路线都auth
在用户应用程序中受到保护。因此,只有经过身份验证的用户才能访问他的详细信息。
一种可能的方法是,我想为管理应用程序生成一个 API 密钥。
所以他们会在每个请求中发送类似下面的内容。
X-Api-Key: kD45bYaXlStYV_jVdU8mlg // Buffer.from(data).toString('base64')
X-User-Id: 2343 // id of the user for which service is to be booked
另外,我必须修改我的auth
中间件以查看是否包含 api 密钥头和验证头,并绕过用户的登录和JWT
生成步骤。
但我不确定安全问题。我敢肯定,一定有人遇到过这个问题。请分享一些想法,谢谢。
如果需要任何其他信息,请发表评论。
解决方案
推荐阅读
- python-3.x - 如何对具有其中一列作为版本号的数据框进行排序?
- javascript - 如何在javascript中排序和获取最后一个值和索引
- laravel - 当我使用 laravel 按 created_at 日期搜索订单时,我想显示订单状态
- node.js - 如何在共享主机上托管 Gatsby+Node.js 项目?
- firefox - 动画定义路径的 d 属性在 Firefox 上不起作用
- angular - 无法在 Angular 中延迟加载功能模块
- azure-devops - 从 Spinnaker 触发 Azure DevOps 发布管道阶段
- php - 联系表格不断重定向到 php 页面
- bash - 如何在 curl 标头中连接时间戳?
- html - XHTML 元素“元”不允许作为子元素