在现有身份验证上搭载 nginx

时间:2021-07-07 05:32:57

标签: nginx jwt wiki.js

在隐藏在 nginx 反向代理后面的 wiki.js 解决方案中,wiki.js 正在处理身份验证 - 我不确定细节,但它似乎为此使用了 jwt cookie。

我在同一个 docker-compose 设置中也有一个 Plantuml 服务器,该服务器当前无需身份验证即可访问,但我只想让经过 wiki.js 身份验证的用户访问 Plantuml。

顺便说一句,如果用户在退出 wiki.js 后仍然可以访问 plantuml 一段时间,这也没什么大不了的,如果这能让事情变得更容易的话。但是他们应该至少成功登录一次才能访问plantuml。我只是想防止互联网上的每个人都可以使用这个plantuml服务器。

这是当前解决方案的 nginx conf 片段,它至少可以防止没有 jwt cookie 的任何人访问服务器。不是很安全,但它很简单,我想至少有点有效。

location / {
    proxy_pass http://wiki:3000/;
}

location /plantuml/ {
    if ($cookie_jwt = "") {
        return 404;
    }
    proxy_pass http://plantuml:8080/;
}

0 个答案:

没有答案