问题标签 [shibboleth]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ssl - 您如何获得受 shibboleth 身份验证保护的页面?
我正在尝试从受 shibboleth 身份验证保护的页面上刮取数据。我无法让 cURL 和 webisoget 正常工作。所以,我正在尝试 wget,因为我认为我可以通过我的证书并获取我想要的页面。但是,我也遇到了麻烦,我很难找到有关我的问题的文档。
这是我试图执行的 wget 命令:
这是该命令返回的内容:
但是,即使我收到一个页面,它也不包含我希望抓取的信息。返回的页面包含一个在加载时自动提交表单的表单。该表单包含 pubcookie 和 relay_url 的隐藏输入字段。
使用我的凭据登录时,我可以访问该页面。但是,我正在努力实现自动化并获取信息。
ajax - 两个 SP 之间的 SAML/SSO Ajax 请求
由于对 SSO/SAML 缺乏了解,我的大脑快要爆炸了。我目前正在开展一个项目,我们正在使用 shibboleth 实施 SSO 身份提供者。
我们已经启动并运行了 SSO,并且能够通过一个应用程序进行身份验证并导航到另一个不受挑战的应用程序。现在,下一个要求是让应用程序 A 返回一个页面,该页面对应用程序 B 进行 Ajax 调用而无需质询。
现在,由于我们已经设置好前端通道(通过浏览器重定向),然后当我们对 App A 进行 Ajax 调用时,我们会收到 301 响应,并且 SP/IdP 之间的重定向开始,而 Ajax 显然没有遵循。
另一方面,如果我们从 App A 向 App A 进行 Ajax 调用,那么它会通过其本地会话 Id 发送,并且无需发送重定向来与 IdP 通信。
现在,如果我通过浏览器手动导航到 App B 并允许发生所有重定向(因此也检索 App B 的本地会话 cookie)。然后我仍然无法从 App A 的响应中发出 Ajax 请求。原因显然是浏览器不会发送 App B 的 cookie 信息,因为我们正在访问 App A 域上的页面。
所以我的问题如下:
如果 App A 和 App B 是同级子域,我们能否以某种方式让浏览器通过所有必需的会话 cookie?
我收集到这种 Sp/IdP 通信可以通过反向通道发生,与通过浏览器发生的重定向相对应。我不明白这是怎么可能的:-)。如果我通过 App A 登录,那么 IdP 会添加它自己的会话 cookie,因此在访问 App B 后发生重定向时,它不必重新验证我的身份。但是,如果这不是通过重定向完成的,那么当我访问 App B 时,它可以向 IdP 发送什么来对我进行身份验证,因为我的浏览器首先没有将 IdP 的 cookie 传递给 App B。
笔记:
对不起,如果这不是太清楚,我现在真的无法很好地解释这一点。也许我最好解释一下我需要实现的目标。
- 点击应用程序并使用 SSO 登录
- 我登录的应用程序是一个门户类型的应用程序,上面有一堆 ajax 小部件。
- 每个 widgit 都会对其他应用程序进行 Ajax 调用,这些应用程序也受 SSO 保护
有任何想法吗?干杯,克里斯。
java - java应用程序服务器中的shibboleth单点登录
我曾尝试阅读 shibboleth wiki,但无法理解如何将 shibboleth 单点登录集成到我们基于 spring 的多个网络应用程序中。我们需要一个基于数据库的身份验证,所以我们应该使用 jaas 吗?它将如何工作?有人可以详细说明如下步骤a)安装shibboleth idp b)将jaas配置为服务提供商等吗?
任何帮助将不胜感激,指出正确的方向
谢谢
tomcat - 如何使用 ADFS 2.0 和 SAML/SSO 保护 Tomcat 的 web 应用程序?
我想用 ADFS SSO 保护我的 webapps(在 Tomcat 5.5 上)。通过 Apache2 及其重写模块从外部访问 webapps。
有几个步骤可以使它工作(随机顺序):ADFS - 添加 b. Shibboleth - ADFS c。Apache2 - Shibboleth d。XXXXX - 雄猫
每个教程都不清楚或有很多错误或已过时,所以我对上述所有步骤都有问题。ADFS 和 ADDS 在 Windows Server 2008 R2 Shibboleth 上运行,Apache2、Tomcat 在 Centos 5.5 上运行
请建议如何连接所有上述技术。
这是对我有用的Shibboleth 配置:
这是Apache 配置:
我还在ADFS 2.0 中添加了具有以下属性的信赖方信任:
我还添加了SAML 断言消费者端点:
我不确定我是否错过了什么。
现在我有新问题了。浏览器知道我是否登录,但我需要知道谁在webapp端登录(有HTTP_EMAIL等属性,但这些都是空的。
perl - 使用 Shibboleth 服务提供者处理远程用户变量
Perl CGI web 应用程序是我的 Shibboleth 服务提供者。Shibb 保护的 cgi 导致重定向到 Shibboleth IDP。在 IDP 验证成功并重定向回受保护的 CGI 页面。我可以看到 Shibboleth 会话变量,但我没有看到“REMOTE_USER”变量集。Shibboleth2.xml 有 'REMOTE-USER="eppn transient-id targets-id"。我究竟做错了什么??我需要在属性配置文件中做什么来设置 REMOTE_USER(REMOTE-USER) ?
谢谢
c# - 使用 c# 访问 shibboleth 会话数据
我已经在我们的服务器(服务器 2003 IIS6)上成功安装了 Shibboleth SP,它正在使用第三方 IDP。我知道这是有效的,因为 /Session 值返回了我需要的属性。
目前虽然我无法从 .net 应用程序访问这些会话变量。变量没有放在头上。
非常感谢任何帮助。
--更新--在attribute-map.xml中,我有以下与我需要的属性相关的内容(从属关系)
我应该在这里添加一些额外的东西吗?
python - Django 和 Shibboleth
我正在研究在 Django 部署中使用 Shibboleth 的选项。从我发现的情况来看,事情看起来有些稀疏。任何人都可以评论以下内容吗?
是否有人使用 django_shibboleth 模块(参见http://code.arcs.org.au/gitorious/django/django-shibboleth/trees/1.1)?如果是这样,您对这个模块有什么经验?
用于 Django(例如,django-saml2-sp)和一般 Python(例如,pysaml2)的 SAML 2 实现似乎有些实验性,并且包含的文档很少。有人知道 Django/Python 的稳定 SAML 2 解决方案吗?
提前感谢您的帮助!
mediawiki - 使用 Shibboleth 插件删除 MediaWiki 中的重复登录链接
我已将 shibboleth 身份验证 (ShibAuthPlugin 1.2.3) 添加到 MediaWiki 站点 (mw 1.17)。事实证明这很简单,但我现在遇到了另一个相关问题:我有两个登录链接。我只希望 Shibboleth 登录链接可用。
我可以更改 CSS 以隐藏不需要的链接,但这只会使其不可见。我想禁用它。禁用登录链接的记录方法会禁用所有登录链接。我是 MediaWiki 的新手,希望能够在配置中进行这种更改,而不必破解代码来获得我想要的东西。
也许熟悉 MediaWiki 的人可以告诉我这样的配置设置是否存在,或者代码修改是否是解决此类问题的最佳实践。
提前谢谢你,彼得
database - 如何对网站进行 shibbolize
我有一个使用电子邮件地址进行用户身份验证的应用程序。
我知道一些大学使用 Shibboleth 进行用户身份验证,我想知道从用于 Shibboleth 的大学数据库中读取电子邮件的过程是什么。请注意,我不关心通过 Shibboleth 进行的身份验证,我只需要能够读取电子邮件地址。
对于所有使用 Shibboleth 的大学来说都是通用的,还是每所大学都是一个独特的案例?
任何有关如何执行此过程的文档链接将不胜感激。谢谢你。
session-cookies - JMeter;会话cookie
我已经看到几个 JMeter 线程与我的问题有关,但似乎没有一个能解决我的具体问题。
问题是 - 我正在测试的网站是这样工作的:
- 带有登录字段和提交按钮的主页。当您第一次在浏览器中浏览此页面时,会设置一个 PHPSESSID cookie(在响应标头中出现),并带有一个唯一值,以标识会话。
- 当用户单击登录按钮时(此页面上的用户名和密码与系统当前状态无关),Web 服务器通过 shibboleth 重定向到另一个运行 LDAP 的服务器。Shibboleth 需要 PHPSESSID cookie 的值才能继续。(验证用户来自正确的联合服务器)。
- 然后用户输入他们的帐户用户名和密码,然后单击登录按钮。
- (有效)帐户已登录到 LDAP 服务器;如果原始 (1) 服务器上不存在该帐户,则 shibboleth 将 LDAP 字段映射到原始服务器上的帐户数据库。然后用户登录到原始服务器(1)到新创建的帐户,并重定向到原始页面。
还有一些其他的 SAML 数据被交换——我认为这不会成为问题。. . 到目前为止,问题似乎出在这个 cookie 上。
JMeter 跌倒的地方是第 2 步。
- 如果我没有设置 cookie 管理器,LDAP 服务器会说我没有启用 cookie。(此错误在响应数据中)。
- 如果我设置了 HTTP cookie 管理器,但没有指定 PHPSESSID cookie,LDAP 服务器会说我没有启用 cookie。(我将其设置为哪个 Cookie 策略并不重要)
- 如果我指定 PHPSESSID cookie 值——当然,每个用户都需要有一个唯一的值,所以这是错误的。. . 所以我为初始页面设置了一个 RegExp 后处理器,从请求标头中提取 PHPSESSID 值,并将其放入变量 ${PHPSession} 然后我在 HTTP Cookie 管理器中为 PHPSESSID cookie 指定一个值 $ {PHPSession} 。. . 从字面上看,在标题中,* * 事物提交了“Cookie:PHPSESSID=${PHPSession}”
所以,我读了这个。. . https://issues.apache.org/bugzilla/show_bug.cgi?id=28715
实际上,(意译)“......cookie管理器不扩展用户变量......”然后“......好吧,我们修复了它......它确实扩展了用户变量......”然后“。 ..好吧,不,不在那个领域,它不是为了做那个而设计的。”
所以......基本上,他们说,HTTP Cookie Manager 无法管理对每个用户都有唯一价值的会话 cookie。(尽管这就是我认为的全部目的)。
我还能如何为从第一个响应标头中提取值的每个用户设置和提交唯一的 cookie?