配置GitLab omniauth以使用Atlassian Crowd进行身份验证

时间:2016-01-08 11:21:24

标签: gitlab atlassian-crowd

(由于Google小组没有回应,转发此处)

可能遗漏了一些显而易见但我无法让GitLab CE 8.0.5将Crowd服务器2.8.3用作omniauth提供程序。 GitLab doc和Google搜索没有帮助。

任何人都可以向我提供故障排除步骤,配置(混淆密码等)或查看下面的配置。

GitLab配置:

gitlab_rails['omniauth_enabled'] = true
gitlab_rails['omniauth_allow_single_sign_on'] = true
# gitlab_rails['omniauth_auto_sign_in_with_provider'] = 'saml'
gitlab_rails['omniauth_block_auto_created_users'] = false
# gitlab_rails['omniauth_auto_link_ldap_user'] = false
 gitlab_rails['omniauth_providers'] = [
   {
     "name" => "crowd",
      "args" => {
        "crowd_server_url" => "http://localhost:8095/crowd",
        "application_name" => "crowd_gitlab",
        "application_password" => "Password"
      }
   }
 ]

我设置的群组应用程序如下:

Name: crowd_gitlab
Application type: Generic Application
Active: x
          Password: Password

人群选项卡出现在GitLab登录页面上,但我得到的错误是:

500
We're sorry, but something went wrong.

请注意,此错误期间显示的网址为http://localhost/users/auth/crowd/callback

尝试增加通用跟踪级别并查看Crowd和GitLab上的日志,但看不到任何明显的内容。

2 个答案:

答案 0 :(得分:0)

我们成功使用Gitlab CE 7.7.2和Crowd 2.8.2。我不确定这是否随8.0.5而改变。

我们的配置在

之下
  ## OmniAuth settings
  omniauth:
    enabled: true
    allow_single_sign_on: true
    block_auto_created_users: true

    providers:
       - { name: 'crowd'
        , strategy_class: 'OmniAuth::Strategies::Crowd'
           , args: {
              crowd_server_url: "http://crowd-server:8095/crowd",
              application_name: "gitlab",
              application_password: "PASSWORD"
           }
      }

我们还强制将Crowd登录页面作为Gitlab的默认页面,这对人们来说不那么混乱,而不是显示默认页面并强制他们点击群组按钮。

答案 1 :(得分:-1)

只是查看了功能矩阵,发现只有EE支持Crowd。卫生署!

相关问题