【发布时间】:2016-11-27 01:12:19
【问题描述】:
我正在尝试为正在开发 Ruby on Rails 的 Web 门户实施身份验证(即,我想保护某些页面以供管理员访问)。它受 Shibboleth 保护,我有一个用户数据库(用于我没有从 Shibboleth 获得的信息)。服务器在 apache2.4 上运行 Phusion 乘客
我有两个问题:
-
我计划实现这一点的方式是使用 if-else 条件。我将从 Shibboleth 获取一个属性,将其与我的用户数据库密钥匹配以识别用户。如果它是管理员,那么我将显示特定于管理员的内容。有没有更好的实现方式?
- 如何在 ruby 上设置 Shibboleth 传递的环境变量?以及如何在 HTML 页面中使用它们来实现上面的 if-else?
如果需要更多信息,请告诉我。
【问题讨论】:
-
请澄清您所说的“如何在 ruby 上设置由 Shibboleth 传递的环境变量?”。
-
@rlandster 根据我的收集,您可以在 attribute-map.xml 中设置系统从 shibboleth 获得的属性。我想在我的 RoR 应用程序中安全地使用这些属性(最好不要作为 HttpHeader)。我该怎么做?
标签: ruby-on-rails ruby apache passenger shibboleth