gpt4 book ai didi

google-oauth - 使用 Google OAuth 的 GitLab 社区版不允许出现 GitLab 主登录页面只能使用 Google 登录

转载 作者:行者123 更新时间:2023-12-02 20:49:03 25 4
gpt4 key购买 nike

我们在 GitLab CE 8.17.2 实例中设置了 Google OAuth。我们组织的用户都是 Google 帐户,因此设置 Google OAuth 是一个简单的决定。

Google OAuth 是我们设置的唯一 OAuth 提供商。

我们已向外部用户发送电子邮件以在我们的 GitLab CE 实例中注册帐户。在我们打开/配置 OAuth 之前,这些外部用户将看到主 GitLab 登录/注册页面。

当该外部用户尝试访问我们的网站时,他们会看到 Google 登录页面,并且无法绕过它来为 GitLab 显示主登录/注册页面。没有“跳过”、“返回”或“取消”链接来绕过此 Google 登录页面。外部用户必须创建一个 Google 帐户才能注册,这让我感到困惑。

我们让外部用户尝试了完全清除缓存(历史记录、密码、自动填写表单等)的不同浏览器(Firefox、IE、Chrome),但他们仍然得到此 Google 登录页面:

enter image description here

我认为 GitLab 登录/注册主页面将出现在您可以登录或注册的地方,并且 Google Logo 将可见以用作身份验证器。从我们的运作方式来看,您必须拥有 Google 帐户才能访问,并且无法绕过 Google 登录页面。

以下是 gitlab.rb OAuth 设置:

## For setting up omniauth
## see https://docs.gitlab.com/ce/integration/omniauth.html
gitlab_rails['omniauth_enabled'] = true
gitlab_rails['omniauth_allow_single_sign_on'] = ['google_oauth2']
gitlab_rails['omniauth_auto_sign_in_with_provider'] = 'google_oauth2'
gitlab_rails['omniauth_block_auto_created_users'] = false
gitlab_rails['omniauth_auto_link_ldap_user'] = true
# gitlab_rails['omniauth_auto_link_saml_user'] = false
# gitlab_rails['omniauth_external_providers'] = ['google_oauth2']
gitlab_rails['omniauth_providers'] = [
{
"name" => "google_oauth2",
"app_id" => "(the app id)",
"app_secret" => "(the app secret)",
"args" => { "access_type" => "offline", "approval_prompt" => "" }
}
]

如果我们缺少某个设置,请告诉我们。如果没有,我感觉 Google OAuth 可能不适合我们。

最佳答案

我们评论/指出:

gitlab_rails['omniauth_auto_sign_in_with_provider'] = 'google_oauth2'

在我们的 gitlab.rb 文件中。

该部分现在如下所示:

## For setting up omniauth
## see https://docs.gitlab.com/ce/integration/omniauth.html
gitlab_rails['omniauth_enabled'] = true
gitlab_rails['omniauth_allow_single_sign_on'] = ['google_oauth2']
# gitlab_rails['omniauth_auto_sign_in_with_provider'] = 'google_oauth2'
gitlab_rails['omniauth_block_auto_created_users'] = false
gitlab_rails['omniauth_auto_link_ldap_user'] = true
# gitlab_rails['omniauth_auto_link_saml_user'] = false
# gitlab_rails['omniauth_external_providers'] = ['google_oauth2']
gitlab_rails['omniauth_providers'] = [
{
"name" => "google_oauth2",
"app_id" => "(the app id)",
"app_secret" => "(the app secret)",
"args" => { "access_type" => "offline", "approval_prompt" => "" }
}
]

关于google-oauth - 使用 Google OAuth 的 GitLab 社区版不允许出现 GitLab 主登录页面只能使用 Google 登录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43001625/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com