macOS Sierra 系统设置中的 Kerberos 身份验证
Posted
技术标签:
【中文标题】macOS Sierra 系统设置中的 Kerberos 身份验证【英文标题】:Kerberos authentication in macOS Sierra system settings 【发布时间】:2017-03-10 08:13:43 【问题描述】:情况
我们通过以下方式为 Kerberos 身份验证配置了 macOS Sierra 机器:
为我们的组织添加适当的/etc/krb5.conf
在/etc/pam.d/authorization
开头添加以下几行
auth optional pam_krb5.so use_first_pass use_kcminit default_principal
auth sufficient pam_krb5.so use_first_pass default_principal
我们通过在目录服务应用程序中创建自定义 LDAP 绑定来进一步配置机器以使用 LDAP 目录:
Users
记录映射到 inetOrgPerson
属性映射:
AuthenticationAuthority
-> uid
EMailAddress
-> mail
FirstName
-> givenName
NFSHomeDirectory
-> #/Users/$uid$
PhoneNumber
-> telephoneNumber
PrimaryGroupID
-> gidNumber
RealName
-> displayName
RecordName
-> uid
UniqueID
-> uidNumber
UserShell
-> loginShell
这为我们提供了一个针对 Kerberos 和 LDAP 进行身份验证的工作网络登录。
问题
当网络用户想要更改他们的屏幕保护超时时,系统设置中的用户验证不起作用。用户名灰显,密码不被接受。日志文件中没有关于问题来源的可见指示。
当您使用解锁符号(左下角)进行系统设置时,接受(非网络)管理员帐户,但后续行为保持不变。
将以上行添加到/etc/pam.d/screensaver
并不能解决问题。
是否有任何/etc/pam.d
配置文件负责 macOS Sierra 中的系统设置身份验证对话框?
有没有办法从 macOS Sierra 中的 PAM 获取更多日志信息?
【问题讨论】:
MacOS Sierra 默认已经内置了对目录服务的 Kerberos SSO 身份验证;我通过(在 Mac 上)进入系统偏好设置 > 用户和组 > 登录选项 > 网络帐户服务器并填写适当的信息,将我的 Mac 加入了 Active Directory 域。之后,我获得了对 Active Directory 的单点登录。我没有看到您所走路线的附加值(以及所有可能涉及的额外工作)。不过,我愿意被说服。 我不是在谈论 Active Directory 环境。在这种情况下,你是完全正确的。我的案例是一个大学基础设施,其中包含基于 Linux 的 Kerberos 服务器、基于 Linux 的 LDAP 服务器和仅允许 Kerberos 身份验证的 AFS 文件共享。 明白。感谢您回来。 【参考方案1】:不确定这与 SSO 有什么关系? 您上面列出的 pam.d 设置允许在解锁屏幕保护程序时更新 kerberos 票证,就是这样。
您是否安装了阻止更改的配置文件。 我应用了一个要求屏幕保护程序在活动 10 分钟后启动的配置文件。即使您解锁首选项面板,您也无法进行更改。
如果您的本地管理员无法进行更改,则可能是已设置的安全配置文件。
如果您更改或删除配置文件,然后管理员可以更改屏幕保护程序,那么您应该很好。
【讨论】:
以上是关于macOS Sierra 系统设置中的 Kerberos 身份验证的主要内容,如果未能解决你的问题,请参考以下文章
MacOS Sierra中Anaconda的安装以及在PyCharm的设置