Express Gateway将范围添加到端点

问题描述

我有一个正在工作的自动注册网关功能,该功能可以填充我的gateway-config.yml。 我们将使用范围,因此我向postData添加了范围,但没有添加范围。

const postData = JSON.stringify({
      host: '*',path: currentKey,methods: methodsByPaths.get(currentKey),scopes:
        Scopes[`${process.env.ENDPOINT}${currentKey.split('/').join('')}`],});
  • currentKey和作用域的某些控制台日志[...]

/ api / users-未定义

/ api / token-未定义

/ api / createProject-项目经理

此外,当范围未定义时,它会添加端点;如果不是未定义的(项目经理),它甚至都不会添加端点。我尝试将示波器硬编码为某种东西,但仍然没用

解决方法

您不应在POST请求中发送范围;它们严格位于Express Gateway内部。

通过Express Gateway对用户进行身份验证时,在针对该用户进行身份验证的Express的config.yml文件中定义的身份验证凭据应包括该用户可以访问的范围列表;这些由Express Gateway在内部使用,以控制对端点的访问。