基于 Nginx 代理的 DataEase v2 使用 OIDC 登录失败问题 Request failed with status code 500


飞致云 发布于 2024-01-15 / 93 阅读 / 0 评论 /
问题现象 DataEase v2.2.0 版本,配置OIDC后使用OIDC账户登录报如图错误 问题原因 DataEase v2 版本基于 APISIX 实现的 OIDC 配置,HTTP Header 中会包含 Out_auth_platform:oidc 的键值。 而 Nginx 默认会忽略带下划线

问题现象

DataEase v2.2.0 版本,配置OIDC后使用OIDC账户登录报如图错误

问题原因

DataEase v2 版本基于 APISIX 实现的 OIDC 配置,HTTP Header 中会包含 Out_auth_platform:oidc 的键值。

而 Nginx 默认会忽略带下划线"_"的 Header,不做转发。

如何解决

根据你使用的环境选择修改方式:

1. 使用 1Panel 发布的网站

若使用 1Panel 的网站功能将 DataEase 发布为网站,则应参考下图在网站管理页面修改 OpenResty 配置,添加配置项:underscores_in_headers on。

2. 使用 Nginx 发布的网站

在 nginx.conf 的 http 部分添加如下配置

http {
    ...

    # 转发带下划线的请求头
    underscores_in_headers on;

    ...
}



是否对你有帮助?