配置Kerberos认证源
Kerberos是一种计算机网络认证协议,它允许某实体在非安全网络环境下通信,向另一个实体以一种安全的方式证明自己的身份。具体请参考https://web.mit.edu/kerberos。
AD(Active Directory),即活动目录。您可以将AD简单理解成一个数据库,其存储有关网络对象的信息,方便管理员和用户查找所需信息。
SPN(Service Principal Name),即服务主体名称。是服务实例的唯一标识符。
在Kerberos认证过程中,使用SPN将服务实例与服务登录账号关联。所以,必须在内置计算机账户或用户账户下为服务器注册SPN。对于内置账户,SPN会自动注册。如果需要在域用户账户下运行服务,必须要为使用的账户手动注册SPN。
为方便企业用户的认证登录,OneAccess平台支持配置Kerberos协议作为认证源,用户可以通过Kerberos协议认证登录各应用系统,为企业用户带来更简易便捷的登录方式和更好的用户体验。
本章节为您介绍配置Kerberos认证源的相关操作。
搭建AD服务器
以windows server 2012 r2搭建域服务器为例。具体请参考搭建AD服务器。
创建AD用户
在已搭建好的AD域中创建AD用户。
- 进入Active Directory 管理中心。
- 右键目标域,选择“新建 > 用户”,输入用户信息,单击“确定”。
建议设置该用户密码为“密码永不过期”,避免后续登录异常。
每个需要免密登录的AD用户都需要检查是否开启对AES 256位加密的支持,具体操作步骤如下:
在AD服务器中右击用户打开属性框,找到帐户属性,确保帐户选项中的“该帐户支持Kerberos AES 256 位加密”被勾选。
配置AD服务器
- 在AD服务器中生成SPN。
在AD服务器的DOS窗口中执行命令:setspn -A HTTP/{租户域名} {AD用户名},如setspn -A HTTP/xxxxxx.huaweioneaccess.com Appointer。
- 在AD服务器中生成Keytab文件。
在AD服务器的DOS窗口中执行命令:ktpass /out {keytab文件地址} /mapuser {AD用户名} /princ HTTPS/{租户域名}@{AD域名} /pass {AD用户密码} /ptype KRB5_NT_PRINCIPAL /crypto AES256-SHA1,如ktpass /out c:\Appointer.keytab /mapuser Appointer /princ HTTPS/xxxxxx.huaweioneaccess.com@ONEACCESS.COM /pass {AD用户密码} /ptype KRB5_NT_PRINCIPAL /crypto AES256-SHA1。
- 在AD服务器中设置委派。
- 选择创建AD用户中创建的用户,右键选择“属性”,设置委派。
- 选择创建AD用户中创建的用户,右键选择“属性”,设置委派。
配置客户端浏览器
在OneAccess中添加Kerberos认证源和用户
- 登录OneAccess管理门户。
- 在导航栏中,选择“认证 > 认证源管理 > 企业认证源 > Kerberos”,进入Kerberos认证源页面,单击右上方“添加认证源”,配置参数添加认证源。
图1 添加认证源
表1 配置参数 参数
说明
* 显示名称
认证源的显示名称,支持自定义。如Kerberos认证。
* AD域名
大写的AD域名。如ONEACCESS.COM。
* KeyTab文件
2中生成的文件。
* 关联用户属性
关联系统用户的唯一属性,如用户ID。
未关联用户时
通过“关联用户属性”认证失败时,登录失败。
- 在导航栏中,选择“用户 > 组织与用户”,选择目标组织,单击“添加用户”,输入用户信息。用户名需与AD域中的登录用户名一致。