У меня проблема с настройкой Gitlab с аутентификацией Auth0. Я следил за этим руководством https://gitlab.com/help/integration/auth0.md. Когда я пытаюсь войти в систему с помощью Auth0, меня перенаправляют обратно в Gitlab, но появляется сообщение об ошибке «Вход с использованием учетной записи Auth0 без ранее существовавшей учетной записи GitLab не разрешен». Я подписался на этот пост https://stackoverflow.com/questions/33024270/connect-a-gitlab-account-with-saml но это не помогло.
Когда я пытаюсь подключить существующего пользователя с Auth0, соединение сохраняется, но по какой-то причине «Идентификатор» в учетной записи пуст. Я не нашел ни одной опции, как настроить ключ идентификатора или что-то подобное.
Моя конфигурация выглядит так:
gitlab_rails['omniauth_enabled'] = true
gitlab_rails['omniauth_allow_single_sign_on'] = ['oauth2_generic']
gitlab_rails['omniauth_auto_link_ldap_user'] = true
gitlab_rails['auto_link_saml_user'] = true
gitlab_rails['omniauth_block_auto_created_users'] = false
gitlab_rails['sync_profile_attributes'] = ['name', 'email', 'location']
gitlab_rails['omniauth_providers'] = [
{
'name' => 'auth0',
'args' => {
client_id: 'xxxxx',
client_secret: 'xxxxx',
namespace: 'xxx.eu.auth0.com'
}
}
]
Есть идеи, где может быть проблема? GitLab имеет стандартный вход, LDAP и теперь включен Auth0.
В лог-файле нет ничего интересного.
Вы не настроили поставщика Auth0 для использования.
Устанавливать gitlab_rails['omniauth_allow_single_sign_on'] = ['auth0']
и он должен работать.
Также, отмечая недавность публикации, вам также нужно будет добавить scope
в вашу конфигурацию.
Пример:
gitlab_rails['omniauth_providers'] = [
{ "name" => "auth0",
"args" => { client_id: '...',
client_secret: '...',
namespace: '....auth0.com',
scope: 'openid profile email'
}
}
]
Ссылка: https://gitlab.com/gitlab-org/gitlab-ce/issues/38945