根据我读过的一些文档,SQL Server 的服务帐户将在数据库引擎启动时创建 SPN,以允许进行 Kerberos 身份验证。我找不到任何文档说明帐户需要什么权限才能创建 SPN。那么,帐户需要具有哪些权限(如果可能的话,域管理员除外)才能创建 SPN?
答案1
基于此微软文章和@Handyman5的澄清,“委派修改SPN的权力”一节指出
如果需要允许委派管理员配置服务主体名称 (SPN),则必须确保他们的用户帐户具有已验证的写入服务主体名称允许。
授权委托已验证的写入服务主体名称需要Domain Admins 成员资格或同等资格
答案2
所以我最近想出了如何做到这一点。按照微软关于委托写入 SPNS 的权限的文章。
但是,除了已验证写入服务主体名称MSDN 文章中提到的权限写入服务主体名称。
您需要按照文章中指示的方式添加此权限已验证写入服务主体名称(适用于计算机对象等)。
通过添加此权限,您可以写入 SPN 属性,而无需完全控制、域管理员或写入所有属性。
附注:如果你只添加已验证写入服务主体名称权限您在尝试创建 SPN 并且访问未被拒绝时会收到以下错误。
无法为帐户分配 SPNLDAP名称错误 0x200b/8203-> 指定给目录服务的属性语法无效。