Okta SSO提供商

这是。单点登录提供商可以用来与GitLab进行身份验证。

下面的文档支持Okta作为SAML提供者。

配置Okta应用程序

  1. 在Okta上转到管理部分并选择to添加App
  2. 当应用程序屏幕出现时,你会看到另一个按钮创建应用程序并在下一个屏幕上选择SAML 2.0。
  3. 现在,非常重要的是,添加一个标志(你可以选择)https://about.gitlab.com/press/)。你必须裁剪和调整大小。
  4. 接下来,您需要填充SAML常规配置。这里有一个例子。

    Okta管理面板视图”class=

  5. 配置的最后一部分是反馈部分,你可以说你是一个客户,正在创建一个内部使用的应用程序。

  6. 当你有了你的应用,你会在应用的配置文件顶部有几个标签。单击SAML 2.0配置说明按钮,如下所示:

    ok SAML设置”class=

  7. 在出现的屏幕上注意身份提供者单点登录URL你会用哪个idp_sso_target_url在您的GitLab配置文件中。

  8. 在离开Okta之前,请确保添加了用户和组(如果有的话)。


现在Okta应用程序已经配置好了,是时候在GitLab中启用它了。

配置GitLab

  1. 在您的GitLab服务器上,打开配置文件:

    用于Omnibus GitLab安装

    sudo编辑/etc/gitlab/gitlab.rb

    从源代码安装

    cd/home/git/gitlabsudo- ugit- h编辑配置/ gitlab.yml
  2. 看到初始OmniAuth配置用于初始设置。

  3. 为了允许你的用户使用Okta来注册,而不必首先手动创建一个帐户,不要忘记在你的配置中添加以下值:

    用于Omnibus GitLab安装

    gitlab_rails“omniauth_allow_single_sign_on”saml的gitlab_rails“omniauth_block_auto_created_users”

    从源代码安装

    allow_single_sign_onsaml”block_auto_created_users
  4. 你也可以自动链接Okta用户与现有的GitLab用户,如果他们的电子邮件地址匹配添加以下设置:

    用于Omnibus GitLab安装

    gitlab_rails“omniauth_auto_link_saml_user”真正的

    从源代码安装

    auto_link_saml_user真正的
  5. 添加提供程序配置。

    注:

    • 更改的值assertion_consumer_service_url来匹配GitLab的HTTPS端点用户/认证/ saml /回调到您的GitLab安装的HTTPS URL以生成正确的值)。
    • 为了得到idp_cert_fingerprint指纹,首先从您注册的Okta应用程序下载证书,然后运行:Openssl x509 -in okta。Cert -noout -fingerprint。替代okta.cert您的证书的位置。
    • 的值idp_sso_target_url,用的是价值身份提供者单点登录URL从配置Okta应用程序时的步骤中删除。
    • 的值发行人到一个唯一的名称,该名称将向IdP标识应用程序。
    • 离开name_identifier_format按原样。

    用于Omnibus GitLab安装

    gitlab_rails“omniauth_providers”{名称:saml的参数:{assertion_consumer_service_url:“https://gitlab.example.com/users/auth/saml/callback”idp_cert_fingerprint:“43:51:43:a1: b5: fc: 8 b: b7:0a: 3: a9: b1:0f: 66:73: a8的idp_sso_target_url:“https://gitlab.oktapreview.com/app/gitlabdev773716_gitlabsaml_1/exk8odl81tBrjpD4B0h7/sso/saml”发行机构:“https://gitlab.example.com”name_identifier_format:“urn: oasis:名字:tc: SAML: 2.0: nameid-format:瞬态的},标签:“Okta”# SAML登录按钮的可选标签,默认为“SAML”}

    从源代码安装

    -{名字saml的arg游戏{assertion_consumer_service_urlhttps://gitlab.example.com/users/auth/saml/callback的idp_cert_fingerprint43:51:43: a1: b5: fc: 8 b: b7:0a: 3: a9: b1:0f: 66:73: a8idp_sso_target_urlhttps://gitlab.oktapreview.com/app/gitlabdev773716_gitlabsaml_1/exk8odl81tBrjpD4B0h7/sso/saml的发行人https://gitlab.example.com的name_identifier_formaturn: oasis:名字:tc: SAML 2.0: nameid-format:瞬态},标签Okta”# SAML登录按钮的可选标签,默认为“SAML”}
  6. 重新配置重新启动GitLab for Omnibus和分别从源代码安装,以使更改生效。

您可能想在一个隐身浏览器窗口中尝试一下。

配置组

注意:确保组存在并分配给Okta应用程序。

你可以看看SAML文档在外部组,因为它的工作原理是一样的。

Baidu
map