Rancher为Kubernetes增强的一个关键功能是集中用户身份验证,此功能允许您的用户使用一组凭据对所有Kubernetes集群进行身份验证。

此集中式用户身份验证是使用Rancher身份验证代理完成的,该代理与Rancher一起安装。此代理会对您的用户进行身份验证,并使用服务帐户将其请求转发给您的Kubernetes集群。

外部认证与本地认证

Rancher提供本地身份验证,也可以与外部身份验证服务集成:

Auth Service 可用版本
Microsoft Active Directory v2.0.0
GitHub v2.0.0
Microsoft Azure AD v2.0.3
FreeIPA v2.0.5
OpenLDAP v2.0.5
Microsoft AD FS v2.0.7
PingIdentity v2.0.7
Keycloak v2.1.0

在大多数情况下,您应该使用外部身份验证服务,因为外部验证服务可以统一的进行用户管理。如果没有外部身份验证服务,您也可以通过本地身份验证来管理Rancher用户。

外部身份验证配置和主要用户

外部身份验证的配置需要:

  • 一个具有管理员角色的本地管理员账号,例如:local_admin
  • 一个可以使用外部身份验证服务进行身份验证的外部服务账号,例如:demo

外部身份验证的配置会影响Rancher中本地用户的管理方式。请按照以下列表更好地了解这些效果。

  1. 本地管理员登录Rancher,对外部身份验证服务进行完整配置。

    Sign In

  2. Rancher将外部服务账号与本地管理员账号联系在一起。这两个账号共享本地管理员用户的用户ID。

    Principal ID Sharing

  3. 完成配置后,Rancher会自动注销本地管理员账号。

    Sign Out Local Principal

  4. 然后,Rancher将自动以外部服务用户登录。

    Sign In External Principal

  5. 由于外部服务账号和本地管理员账号共享一个ID,因此在用户页面上不会显示外部服务账号的唯一标识。

    Sign In External Principal

  6. 外部服务账号和本地管理员账号共享相同的访问权限。

重要说明 不管启用哪种外部身份验证服务,Rancher内置的超级管理员admin将一直启用。