适用于为企业或学校管理 Chrome OS 设备的管理员。
作为管理员,您可以在 ChromeOS 设备上使用 Kerberos 票据,为支持 Kerberos 身份验证的内部资源启用单点登录 (SSO)。这类内部资源可能包括网站、文件共享、证书等。
要求
- 搭载 ChromeOS 91 或更高版本的设备。
- 目前不支持自助服务终端。
- Active Directory 环境。
设置 Kerberos
-
-
在管理控制台中,依次点击“菜单”图标 设备Chrome设置。默认情况下,系统会打开用户和浏览器设置页面。
如果您已注册 Chrome 浏览器云管理,请依次点击“菜单”图标 Chrome 浏览器设置。
- (可选)点击顶部的受管理的访客会话设置。
-
(可选)要将设置应用于某个部门或团队,请在侧边选择一个组织部门。显示具体方法
-
转到 Kerberos。
-
点击 Kerberos 票据。
-
选择启用 Kerberos。
-
(可选)(仅限用户和浏览器)在用户登录时自动请求 Kerberos 票据。
-
选择自动添加 Kerberos 账号。
-
输入主体名称。系统支持 ${LOGIN_ID} 和 ${LOGIN_EMAIL} 占位符。
-
选择使用默认 Kerberos 配置。也可以选择自定义 Kerberos 配置,并指定支持您环境所需的 Kerberos 配置。有关详情,请参阅配置获取票据的方式。
注意:您应检查 Kerberos 配置,即 krb5.conf。默认配置会强制执行高强度 AES 加密,而您的环境可能未全面支持该加密方式。
-
-
点击保存。
配置如何在设备上使用 Kerberos
-
-
在管理控制台中,依次点击“菜单”图标 设备Chrome设置。默认情况下,系统会打开用户和浏览器设置页面。
如果您已注册 Chrome 浏览器云管理,请依次点击“菜单”图标 Chrome 浏览器设置。
- (可选)点击顶部的受管理的访客会话设置。
-
(可选)要将设置应用于某个部门或团队,请在侧边选择一个组织部门。显示具体方法
- 转到网络。
- 配置允许的身份验证服务器:
- 点击集成身份验证服务器。
- 输入受 Kerberos 保护的网站的网址。凭有效票据,用户无需登录就能访问您所列出的服务器。
注意:如需添加多个服务器的名称,请以英文逗号分隔。允许使用通配符 *。但不要在域名中添加通配符。例如,请勿在列表中添加 *example.com。以下是一个列表示例:*.example.com, example.com。 - 点击保存。
- (仅限用户和浏览器)配置允许使用哪些服务器进行委托:
- 点击 Kerberos 委托服务器。
- 输入 Chrome 可委托的服务器的网址。
注意:如需添加多个服务器名称,请以英文逗号分隔。允许使用通配符 *。 - 点击保存。
- (仅限用户和浏览器)指定是否遵循密钥分发中心 (KDC) 政策以委托 Kerberos 票据:
- 点击 Kerberos 票据委托。
- 根据需要选择操作步骤:
- 遵循 KDC 政策
- 忽略 KDC 政策
- 点击保存。
- (仅限用户和浏览器)指定用于生成 Kerberos 服务主体名称 (SPN) 的名称的来源。
- 点击 Kerberos 服务主体名称。
- 根据需要选择操作步骤:
- 使用规范化 DNS 名称
- 使用输入的原始名称
- 点击保存。
- (仅限用户和浏览器)指定生成的 Kerberos SPN 是否应该包含非标准端口。
- 点击 Kerberos SPN 端口。
- 根据需要选择操作步骤:
- 包含非标准端口
- 不包含非标准端口
- 点击保存。
- (仅限用户和浏览器)指定是否允许页面上的第三方子内容弹出 HTTP 基本身份验证对话框。
- 点击跨域身份验证。
- 根据需要选择操作步骤:
- 允许跨域身份验证
- 禁止跨域身份验证
- 点击保存。
用户可执行的操作
添加票据
当用户尝试访问受 Kerberos 保护的资源时,可以选择添加票据,或选择在没有票据的情况下继续操作。
如需添加票据,请执行以下操作:
- 在框中,点击管理票据。
- 在 Kerberos 票据页面中,点击添加票据。
- 输入您的 Active Directory 用户名和密码。
注意:ChromeOS 仅支持 <用户>@<域名> 格式,不支持 <域名>/<用户> 格式。 - (可选)如需自动刷新票据,请选中记住密码复选框。
- (可选)修改配置文件:
- 点击高级。
- 更改 Kerberos 配置信息,例如票据有效期、加密类型和网域 - 领域映射。有关详情,请参阅配置获取票据的方式。
- 点击保存。
- 点击添加。
- 重新加载您尝试查看的页面。
注意:Kerberos 需要用到特定 DNS 设置,尤其是 _kerberos
和 _kerberos-master
服务的 SRV 记录。有关详情,请参阅下方的问题排查。
设置有效票据
用户可在自己的 ChromeOS 设备上添加多个 Kerberos 票据。但在任一时段内,只能存在一个有效票据可用于身份验证。用户可以通过切换票据来访问要求不同授权级别的资源。例如,特定的内部网页可能会要求使用权限级别更高的 Kerberos 票据才能访问。
- 如果您尚未登录受管理的 ChromeOS 设备,请先登录。
- 选择右下角的时间。
- 点击“设置”图标 。
- 在“人员”部分,点击 Kerberos 票据。
- 找到您要设为有效的票据。
- 点击右侧的“更多”图标 设为当前所用票据。
刷新票据和修改配置
默认情况下,票据的有效期为 10 小时。同时,用户在一个星期之内无需重新输入用户名和密码即可续用票据。一旦票据过期就无法自动刷新,届时系统会向用户发送一条消息,告知他们需要手动刷新票据。如果用户的有效票据过期了,那么在用户刷新票据前,将无法使用 Kerberos 身份验证。
- 如果您尚未登录受管理的 ChromeOS 设备,请先登录。
- 选择右下角的时间。
- 点击“设置”图标 。
- 在“人员”部分,点击 Kerberos 票据。
- 找到您要刷新的票据。
- 点击刷新。
如果票据尚未过期,请点击右侧的“更多”图标 立即刷新。 - 输入您的 Active Directory 用户名和密码。
注意:ChromeOS 仅支持 <用户>@<域名> 格式,不支持 <域名>/<用户> 格式。 - (可选)要自动刷新票据,请选中记住密码复选框。
- (可选)要修改配置文件,请执行以下操作:
- 点击高级。
- 更改 Kerberos 配置信息,例如票据有效期、加密类型和网域 - 领域映射。有关详情,请参阅配置获取票据的方式。
- 点击保存。
- 点击刷新。
移除票据
- 如果您尚未登录受管理的 ChromeOS 设备,请先登录。
- 选择右下角的时间。
- 点击“设置”图标 。
- 在“人员”部分,点击 Kerberos 票据。
- 找到您要移除的票据。
- 点击右侧的“更多”图标 从此设备中移除。
配置获取票据的方式
段 | 关系 |
---|---|
[libdefaults] |
|
[realms] |
|
[domain_realm] |
任意值 |
[capaths] |
任意值 |
示例:请求不同的票据有效期
[libdefaults]
ticket_lifetime = 16h
该示例请求将票据有效期设为 16 小时。票据在服务器端的有效期会受到限制,默认为 10 小时。
如要更改服务器端的限制,请执行以下操作:
- 打开组策略管理控制台。
- 转到设置 安全设置 账户策略 Kerberos 策略。
- 修改用户票证最长寿命策略。
示例:请求不同的票据有效期延续期限
[libdefaults]
renew_lifetime = 14d
该示例请求将票据有效期设为可延续 14 天。票据在服务器端的有效期延续期限可能会受到限制,默认为 7 天。
如要更改服务器端的限制,请执行以下操作:
- 打开组策略管理控制台。
- 转到设置 安全设置 账户策略 Kerberos 策略。
- 修改用户票证续订最长寿命策略。
问题排查
通常,您可以在 Linux 上使用 kinit 命令行工具排查问题。ChromeOS 基于 Linux,而 Kerberos 票据实现使用 kinit
。因此,如果您能在 Linux 上使用 kinit
获取 Kerberos 票据,那么也应该能在具有相同配置的 ChromeOS 上获取票据。
错误消息:KDC 不支持加密类型
Google 默认强制执行高强度 AES 加密。如果您看到有关加密类型的错误消息,可能是因为您的服务器环境并不完全支持 AES 加密。我们建议您修复此问题。
您也可以考虑从开发配置中移除 default_tgs_enctypes
、default_tkt_enctypes
和 permitted_enctypes
这三行。这样就能启用 MIT Kerberos 文档中的所有加密类型,但标记为“低强度”的加密类型除外。请检查上述做法对安全性造成的影响,确保符合您的需求。因为某些加密类型不再属于高强度加密类型。
在确认所有加密类型都能正常工作后,建议您将 default_tgs_enctypes
、default_tkt_enctypes
和 permitted_enctypes
的加密类型设为适当的子类型,从而尽可能降低安全风险。
错误消息:无法连接到指定领域的服务器
- 检查您输入的 Kerberos 用户名是否正确。
Kerberos 用户名的形式为 user@example.com,由以下部分组成:- 用户登录名(也称为 sAMAccountName)
- Kerberos 领域,通常与 Windows 域名相一致
- 确保网络连接设置正确。
确保 ChromeOS 设备可以通过标准 Kerberos 端口 88 访问该服务器。 - 检查 DNS 设置是否正确。
Kerberos 会请求特定 DNS SRV 记录,以查找 Kerberos 服务的 DNS 域名。例如,如果登录网域或领域是 example.com,且唯一 Kerberos 服务的 DNS 域名是 dc.example.com,则应添加以下 DNS SRV 记录:
服务 | 协议 | 优先级 | 权重 | 端口 | 目标(主机名) |
---|---|---|---|---|---|
_kerberos | _udp.dc._msdcs | 0 | 100 | 88 | dc.example.com |
_kerberos | _tcp.dc._msdcs | 0 | 100 | 88 | dc.example.com |
_kerberos | _udp | 0 | 100 | 88 | dc.example.com |
_kerberos | _tcp | 0 | 100 | 88 | dc.example.com |
_kerberos-master | _udp.dc._msdcs | 0 | 100 | 88 | dc.example.com |
_kerberos-master | _tcp.dc._msdcs | 0 | 100 | 88 | dc.example.com |
_kerberos-master | _udp | 0 | 100 | 88 | dc.example.com |
_kerberos-master | _tcp | 0 | 100 | 88 | dc.example.com |
如果您无法修改 DNS 设置,可以在 Kerberos 配置中添加映射。
例如:
[realms]
EXAMPLE.COM = {
kdc = dc.example.com
master_kdc = dc.example.com
}
如果您仍然无法获取 Kerberos 票据,请收集系统日志。如有可能,还请收集 tcpdump 或 wireshark 日志。然后,与支持团队联系。