登录限制
您可以使用登录限制自定义 Web 界面以及基于 HTTP(S) 的 Git 的身份验证限制。
设置
要访问登录限制设置:
- 在顶部栏上,选择 菜单 > 管理员。
- 在左侧边栏中,选择 设置 > 通用。
- 展开 登录限制 部分。
启用密码验证
您可以通过 HTTP(S) 限制 Web 界面和 Git 的密码验证:
- Web 界面:禁用此功能时,标准登录选项卡将被删除,并且必须使用外部身份验证提供程序。
- Git over HTTP(S):禁用此功能时,必须使用个人访问令牌或 LDAP 密码进行身份验证。
如果外部身份验证提供程序中断,请使用 GitLab Rails 控制台,重新启用标准 Web 登录表单。
管理员模式
引入于 13.10 版本
启用此功能后,实例管理员被限制为普通用户。在此期间,他们无法访问所有项目、群组或 管理中心 菜单。
要访问具有潜在危险的资源,管理员可以通过以下方式激活管理模式:
- 选择 启用管理模式 按钮
- 尝试访问需要管理员访问权限的 UI 的任何部分,特别是那些调用
/admin
端点的部分。
主要用例允许管理员根据其成员身份,以普通用户的身份执行常规任务,而无需出于安全原因设置第二个帐户。
当管理员模式状态被禁用时,管理用户无法访问资源,除非他们被明确授予访问权限。例如,当管理员模式被禁用时,如果他们尝试打开私有群组或项目,则会收到 404
错误,除非他们是该群组或项目的成员。
应该为管理员启用 2FA,并且支持管理模式流程,OmniAuth provider 和 LDAP 身份验证也是如此。管理模式状态存储在活动用户会话中,并保持激活状态,直到被明确禁用(否则将在超时后自动禁用)。
管理员模式的限制
以下访问方法不受管理模式保护:
- Git 客户端访问(使用公钥的 SSH 或使用个人访问令牌的 HTTPS)。
- 使用个人访问令牌的 API 访问。
也就是说,受管理员模式限制的管理员仍然可以使用 Git 客户端,并以管理员身份访问 RESTful API 端点,而无需额外的身份验证步骤。
管理员模式故障排查
如有必要,您可以使用以下两种方法之一,以管理员身份禁用 管理员模式:
-
API:
curl --request PUT --header "PRIVATE-TOKEN:$ADMIN_TOKEN" "<gitlab-url>/api/v4/application/settings?admin_mode=false"
-
::Gitlab::CurrentSettings.update!(admin_mode: false)
双重验证
启用此功能后,所有用户都必须使用双重身份验证。
双重身份验证配置为强制后,允许用户在可配置的宽限期(以小时为单位)内跳过强制配置双重身份验证。
未知登录的电子邮件通知
启用后,极狐GitLab 会通知用户来自未知 IP 地址或设备的登录。有关详细信息,请参阅未知登录的电子邮件通知。
登录信息
如果 value 不为空,则所有未登录的用户都将重定向到配置的 首页 URL 所代表的页面。
如果 value 不为空,则所有用户在注销后重定向到配置的 退出页面 URL 所代表的页面。
在登录限制部分,滚动到登录文本字段。您可以为您的用户添加 Markdown 格式的自定义消息。
例如,您在注明的文本框中包含以下信息:
# Custom sign-in text
To access this text box:
1. On the top bar, select **Menu > Admin**.
1. On the left sidebar, select **Settings > General**, and expand the **Sign-in restrictions** section.
您的用户在导航到您的极狐GitLab 实例的登录屏幕时,会看到自定义登录文本。