2013-10-23 86 views
0

我正在嘗試配置omniauth-saml,但我不完全確定需要在app_id和app_secret中爲此配置添加什麼內容。omniauth-saml作爲gitlab的提供者

我用這種寶石:https://github.com/PracticallyGreen/omniauth-saml

如果我離開這些領域的空白,當然我得到:

收到錯誤的參數數目。 [無,無]

gitlab.yml文件中的文檔鏈接到更多關於gitlab和omniauth的文檔,但該文檔不再存在(重定向到舊的README)。

任何援助將不勝感激,謝謝!

回答

0

我能夠讓SAML與Gitlab 6.2.4一起工作,但它不是最優雅的解決方案。我使用Okta作爲IdP,但我相信該配置足夠通用,可以應用於任何SAML IdP。

添加omniauth-saml到Gemfile中跑束

bundle install --without development test postgres --path vendor/bundle --no-deployment 

創建GITLAB/config/initializers/omniauth.rb

Devise.setup do |config| 
    config.omniauth :saml, 
    idp_cert_fingerprint: "your IdP certificate fingerprint", 
    idp_sso_target_url: "your IdP SAML end point" 
end 

改性GITLAB/app/controllers/omniauth_callbacks_controller.rb(加入此定義爲LDAP以下)

def saml 
    handle_omniauth 
end 

我不得不手動爲SAML添加回調因爲我在嘗試正確定義SAML作爲供應商時在gitlab.yml中遇到了與原始海報相同的錯誤。這是我可以讓Gitlab通過SAML啓動和驗證的唯一方法。這感覺很不方便,所以可能有更優雅的方式來實現這一點;然而,我無法在任何地方找到一個例子。

相關問題