可以将 Shibboleth 2 与 Nginx + Passenger 一起使用吗?

可以将 Shibboleth 2 与 Nginx + Passenger 一起使用吗?

您知道是否可以将 Nginx 与 Shibboleth 一起使用吗?

答案1

直到 FastCGI 支持“授权者”模式。Shibboleth 2 文档描述了FastCGI SP 应用程序但解释说它不适用于 Nginx,因为它缺少过滤器所需的“授权者”模式。

Nginx 线程说明很多人想要“授权者”模式,但是实现起来太难了。当人们尝试过,但最终还是放弃了

海报 Alex此 Rails 主题共享用于 Shibboleth 身份验证的 Ruby 代码,但似乎使用了 Apache。其他使用 Nginx 的发帖者仍然无法使其工作。

答案2

是的,这是可能的。安装并配置nginx-http-shibbolethnginx 模块,它使 nginx 能够理解 FastCGI 授权器规范的各个部分,nginx 可以支持;足以使 Shibboleth 身份验证成功。您的安装将需要 Shibboleth 服务提供商 (SP) 的 FastCGI 构建和 nginx 的适当配置,以便与shibauthorizershibresponderFastCGI 应用程序进行通信。

所有后端应用程序和环境都可以以某种方式得到支持,假设它们支持 HTTP 标头或从 nginx 设置的环境变量。将 Shibboleth 属性传递给您的应用程序可以通过 nginx 环境变量(通过shib_request_set)或通过shib_request_use_headers on;HTTP 标头(小心欺骗)。我从未使用 Passenger 来托管应用程序,但对于您来说,似乎您可以使用passenger_env_var并将shib_request_setShibboleth 属性引入您的应用程序。

完整的设置过程可以在 GitHub 存储库中找到https://github.com/nginx-shib/nginx-http-shibboleth

免责声明:我是该模块的当前维护者。

笔记:这个模块取代了我以前可能写过的所有博客文章或维基条目。

答案3

我还没有亲自尝试过,但看看David Beitey 在 Shibboleth wiki 上的条目

相关内容