对于我的网站,我想实现 APIMAN 和 keycloak 作为解决方案,所以我想出了这个架构:
- Keycloak 作为身份验证提供程序。
- Apiman 作为 API 管理器
- Nginx 作为反向代理
Apiman 设置在Keycloak 安全代理后面,用于检查用户是否通过此配置进行了身份验证:
{
"target-url": "APIMAN_API_ENDPOINT_URL",
"send-access-token": true,
"bind-address": "0.0.0.0", // this is because I'm in a docker container
"http-port": "8999",
"applications": [{
"base-path": "/",
"adapter-config": {
// HERE ARE MY ADAPTER CONFIGURATION
},
"constraints": [{
"pattern": "/*",
"roles-allowed": [
"CUSTOM ROLE"
]
}]
}]
}
在我按照本文档尝试实施 Keycloak Oauth 插件之前,一切正常。配置后,我一直返回相同的消息:
{"type":"Authentication","failureCode":11005,"responseCode":401,"message":"OAuth2 'Authorization' 标头或 'access_token' 查询参数必须提供。","headers":{"entries ":[],"空":true}}
我已经被困在这里两天了,不知道如何解决这个问题。任何帮助,将不胜感激。