问题标签 [ruby-saml]

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.

0 投票
1 回答
505 浏览

ruby-on-rails - Ruby SAML ACS 注销请求

我创建了一个 SAML2 SSO 登录(使用 google 断言消费者服务),如下所示:

但是,我无法使用 ACS 进行等效注销。

我试过了:

但是,这让我:

NoMethodError - nil:NilClass 的未定义方法“+”

我觉得我正在尝试的注销方法是错误的。发出注销请求的正确方法是什么?

0 投票
1 回答
643 浏览

ruby-on-rails - ruby-saml SAMLRequest 作为 POST 而不是 GET

我开始将 ruby​​-saml 用于其中一个项目。我正在使用的 IDP 期望使用包含 SAMLRequest 的 HTTP 正文进行身份验证请求的 POST。查看 authrequest.rb 的源代码,create 方法只能执行 GET 而不是 POST。

我决定调用 create_params 并获取 base64 令牌,我可以从我的视图中使用它来执行 POST。当我使用以下代码时

当我尝试 base64decode.org 或调用解码方法时,我得到编码不正确。

1) 我可以用 POST 代替 GET 吗?
2)在创建错误编码的请求时我做错了什么?
谢谢

0 投票
2 回答
296 浏览

ruby-on-rails - 示例 saml 应用程序中 nil:NilClass 的未定义方法“+”

尝试按照此处的设置创建一个简单的 SAML 应用程序(我在这里获得的完整项目)。

我完成了设置

这很好,但是当我导航到 http://localhost:3000/时 ,我遇到了

我添加了一些日志记录来检查请求和 saml_settings 的 nil 状态,但这似乎对它们都返回 false

错误跟踪:

(注意:错误是第 5行,由于我添加了调试日志记录,它对我来说是第 9 行)我不太确定它还能是什么,不确定它找不到什么方法以及什么是 nil?

我从来没有弄乱过 ruby​​ 的东西,但是从我最初的样子来看,我不确定 nil 是从哪里来的,日志显示正在创建的请求所以不确定。任何帮助将不胜感激,谢谢!

0 投票
1 回答
523 浏览

ruby-on-rails - 设计:devise_saml_authenticable - 未初始化的常量 SamlSessionsController

我正在使用https://github.com/apokalipto/devise_saml_authenticable在 Ruby on Rails 应用程序中通过 SAML 针对 Okta 实现登录。

使用上述说明设置示例应用程序后,尝试导航到 /users/saml/log_in 时出现以下错误

不确定是什么导致了上述错误。我已确保 gem 是 Gemfile 的一部分并已安装。

还有什么我可以研究的吗?

0 投票
1 回答
403 浏览

saml - 身份提供者的多个证书(签名和加密)

我想为OneLogin SAML创建具有多个服务提供商证书(签名加密)的元数据。但我不知道必须为此设置哪些设置参数。

我正在使用ruby​​-saml宝石。而我目前的设置如下

以下代码用于生成元数据

OneLogin::RubySaml::Metadata.new.generate settings

我正在获取没有任何证书的元数据

另外,我尝试直接从 SAMLTool 网站创建元数据。并且没有可用于输入不同证书进行签名加密的选项

0 投票
1 回答
356 浏览

ruby - 为什么有人会将 ruby​​-saml gem 请求/响应的证书签名设置为 false?

在 ruby​​-saml gem 中,我们有以下选项配置来决定是否签署某些请求/响应:

使用证书将确保我们正在与我们认为正在交谈的人交谈。为什么有人想将这些配置设置为 false?

0 投票
1 回答
665 浏览

ruby - 总是得到: SSL_connect returned=1 errno=0 state=error: 证书验证失败(无法获取本地颁发者证书)

我使用 ruby​​-saml gem 并尝试加载 IDP 的元数据,但出现此错误:

上面的错误是什么意思?

我试图查看我正在使用什么证书,它似乎是这样的:

我的证书有问题吗?

注意:我已阅读SSL_connect returned=1 errno=0 state=error: certificate verify failed (unable to get local issuer certificate)但仍然不知道如何解决我的问题。该人手动使用证书,但我认为我不需要使用证书,因为代码应该处理证书?

0 投票
0 回答
113 浏览

saml - 如何在不使用 OneLogin UI 的情况下实现 OneLogin SSO/SLO

我正在开发 Ruby on Rails 应用程序。我需要使用 OneLogin 实现单点登录/单点注销 (SSO/SLO)。

我使用 OneLogin-Ruby-Sdk => https://github.com/onelogin/onelogin-ruby-sdk通过会话令牌 API 登录用户。它在浏览器中创建一个 cookie 并允许我登录其他应用程序。log_a_user_out但是当我使用Api注销时。它只注销当前应用程序,而不是所有应用程序。所以 SLO 在这种情况下不起作用。

此后,我集成了 devise_saml_authenticatable => https://github.com/apokalipto/devise_saml_authenticatable。它与 SSO / SLO 完美配合。但它重定向到 oneLogin UI 以生成 SAMLRequest 并发送回 SAMLResponse。

有没有办法以编程方式生成 SAMLRequest 和 SAMLResponse ?就像我们对 OAuth2 所做的那样,我们可以一次又一次地使用刷新令牌生成访问令牌。

基本上我希望用户通过我的应用程序表单注册和登录,并与 OneLogin 通信并使用 API 实现 SSO / SLO,而不是去 oneLogin UI。

请让我知道是否需要更多关于代码的信息,这有助于提供答案。我会很高兴这样做。非常感谢任何帮助。

0 投票
1 回答
206 浏览

saml-2.0 - 如何在 ruby​​-saml 中指定 SAML 加密证书?

ruby-saml gem 支持将证书和私钥信息添加到服务提供商的元数据中,但据我所知,它只配置签名证书,而不配置加密证书。这就是我所做的:

这会导致将以下 XML 部分添加到服务提供者的元数据中:

但是如何配置 ruby​​-saml 以添加类似的use='encryption'部分use='signing'

0 投票
0 回答
29 浏览

devise - 通过 ruby​​-saml gem 的 omniauth:request.env['omniauth.auth'] 总是 nil

对于我的应用程序,我想拥有“omniauth-google-oauth2”、“omniauth-ruby”和正常的设计身份验证,而对于前两个,我有以下路线

看法

saml_controller

结尾

request.env['omniauth.auth']在回调中得到 nil 而响应对 saml 有效,对于 google-oauth2 获取正常数据

User 和 ServiceUser 模型没有omniauthable。

Omniauth 初始化:

我不能在omniauth初始化程序中使用saml设置,因为我想拥有动态idp_sso_target_urlidp_cert以后。

我应该怎么做才能在 request.env['omniauth.params'] 中获取有效数据