我们正在为我们的微服务使用 express-gateway。我们已经使用 Jwt 设置了身份验证。我们要验证 jwt 并解码 payload 并将其设置为 req params
这是我们的 gateway.config.yml 文件
http:
port: 8080
admin:
port: 9876
host: localhost
apiEndpoints:
user:
host: localhost
paths: "/v1/users"
product:
host: localhost
paths: "/v1/products"
serviceEndpoints:
user:
url: http://localhost:3001
product:
url: http://localhost:3000
policies:
- basic-auth
- key-auth
- cors
- expression
- log
- oauth2
- proxy
- rate-limit
- jwt
pipelines:
- name: default-1
apiEndpoints:
- user
policies:
- jwt:
- action:
secretOrPublicKey: privatekey
checkCredentialExistence: 'false'
- proxy:
- action:
serviceEndpoint: user
- name: default-2
apiEndpoints:
- product
policies:
- jwt:
- action:
secretOrPublicKey: privatekey
checkCredentialExistence: 'false'
- proxy:
- action:
serviceEndpoint: product
我的 Jwt 有效负载令牌看起来像
{
"org": "1234567890",
"siteID": "343434343",
"expiry": "600"
}
解码并验证 jwt 签名后,网关应将有效负载信息设置为 req
req.org = payload.org
req.siteId = payload.siteId
这被传递给我们的底层微服务。这个怎么做。我应该在 gateway.config.yml 文件中设置更多参数吗?请指教。谢谢