Rancher2如何实现OpenLDAP认证

61次阅读
没有评论

共计 3016 个字符,预计需要花费 8 分钟才能阅读完成。

丸趣 TV 小编给大家分享一下 Rancher2 如何实现 OpenLDAP 认证,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

版本支持: Rancher v2.0.5+

如果您的组织使用 LDAP 进行用户身份验证,则可以将 Rancher 与 OpenLDAP 服务集成,以提供统一的用户身份验证。

OpenLDAP 身份验证流程

当用户尝试使用 LDAP 账号登录 Rancher 时,Rancher 使用具有 搜索目录和读取用户 / 组权限 的服务帐户创建对 LDAP 服务器的初始绑定(账号初始化)。

然后,Rancher 使用基于提供的用户名和配置的属性映射的搜索过滤器在目录中搜索用户。

找到用户后,使用用户的 DN 和提供的密码对另一个 LDAP 绑定请求进行身份验证。

验证成功后,Rancher 将从用户对象的成员资格属性中解析组成员资格,并根据配置的用户映射属性执行组搜索。

注意 在配置之前请先熟悉 外部身份验证配置和主要用户的概念。

先决条件

必须使用 LDAP 绑定帐户 (也称为服务帐户) 配置 Rancher,以搜索和检索用户和组相关的 LDAP 条目。建议不要使用管理员帐户或个人帐户,而是在 OpenLDAP 中创建一个专用帐户,对配置的搜索路径下的用户和组只具有只读访问权限(见下文)。

配置步骤打开 OpenLDAP 配置页面

使用系统默认的 admin 帐户登录 Rancher UI。

从 全局 视图中,导航到 安全 认证页面

选择 OpenLDAP,将显示 配置 OpenLDAP 服务器 表单。

OpenLDAP 服务器配置

使用 TLS?如果 OpenLDAP 服务器使用的是自签名证书,或不是来自权威的证书颁发机构,请确保有 PEM 格式的 CA 证书(与所有的中间证书连接)。您必须在配置期间设置证书,以便 Rancher 能够验证证书链。

OpenLDAP 服务器参数参数描述 Hostname 指定 OpenLDAP 服务器的主机名或 IP 地址端口指定 OpenLDAP 服务器正在侦听的端口,未加密的 LDAP 通常使用标准端口 389,而 LDAPS 使用端口 636。TLS 选中此框以启用基于 SSL/TLS 的 LDAP(通常称为 LDAPS)。如果服务器使用 自签名 / 企业签名 的 SSL 证书,则还需要粘贴 CA 证书。服务器连接超时 Rancher 在考虑服务器不可达之前等待的持续时间(以秒为单位)。服务帐户用于绑定、搜索和检索 LDAP 条目的服务帐户(DN)。服务帐号密码服务帐户密码。用户搜索起点用户搜索起点,所有用户都基于此 DN 以及子目录进行搜索。例如:ou=people,dc=acme,dc=com。用户组搜索起点用户组搜索起点,所有用户组都基于此 DN 以及子目录进行搜索。如果留空,将会基于 用户搜索起点 进行搜索。例如:ou=groups,dc=acme,dc=com。自定义架构配置

如果您的 OpenLDAP 不是标准 OpenLDAP 架构,则必须自定义架构以匹配相应字段。

请注意,Rancher 使用本节中配置的属性映射来构造搜索过滤器并解析组成员身份。因此,始终建议您验证此处的配置是否与您的 OpenLDAP 架构中使用的字段匹配。

如果您不熟悉 OpenLDAP 服务器中使用的 用户 / 组 架构,请咨询 LDAP 管理员,或参阅 Active Directory 身份验证文档中的使用 ldapsearch 识别搜索库和架构部分。

用户架构配置

下表详细介绍了用户架构配置的参数。

参数描述对象类别域中用于用户对象的对象类的名称。如果已定义,则只指定对象类的名称——不要将其包含在 LDAP 包装器中,例如 (object > 下表详细说明了组架构配置的参数。

参数描述对象类别域中用于分组条目的对象类的名称。如果已定义,则只指定对象类的名称——不要将其包含在 LDAP 包装器中,例如 (object >#!/bin/bash
export RANCHER_DOMAIN= rancher.yourdomain.com
export RANCHER_TOKEN= token-xxxxx:xxxx
export ACCESS_MODE= unrestricted
export CONNECTION_TIMEOUT= 5000
export LDAP_HOST= ldap.yourdomain.com
export LDAP_PORT= 636
export TLS= true
export SA_DN= uid=x,ou=x,o=x,dc=yourdomain,dc=com
export SA_PW= sa_password
export USER_SEARCHBASE= ou=x,o=x,dc=yourdomain,dc=com
export USERNAME= username
export PASSWORD= password

curl -u $RANCHER_TOKEN https://${RANCHER_DOMAIN}/v3/openLdapConfigs/openldap?action=testAndApply \
    -H content-type: application/json \
    -H accept: application/json \
    –data-binary {ldapConfig :{ accessMode : ${ACCESS_MODE} , baseType : authConfig , connectionTimeout : ${CONNECTION_TIMEOUT} , enabled :true, groupDNAttribute : entryDN , groupMemberMappingAttribute : member , groupMemberUserAttribute : entryDN , groupNameAttribute : cn , groupObjectClass : groupOfNames , groupSearchAttribute : cn , id : openldap , labels :{cattle.io/creator : norman}, name : openldap , nestedGroupMembershipEnabled :false, port : ${LDAP_PORT} , servers :[${LDAP_HOST} ], serviceAccountDistinguishedName : ${SA_DN} , tls : ${TLS} , type : openLdapConfig , userDisabledBitMask :0, userLoginAttribute : uid , userMemberAttribute : memberOf , userNameAttribute : cn , userObjectClass : inetOrgPerson , userSearchAttribute : uid|sn|givenName , userSearchBase : ${USER_SEARCHBASE} , serviceAccountPassword : ${SA_PW} , groupSearchBase :null}, enabled :true, username : ${USERNAME} , password : ${PASSWORD} } –compressed –insecure

以上是“Rancher2 如何实现 OpenLDAP 认证”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注丸趣 TV 行业资讯频道!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-08-04发表,共计3016字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)