Questions tagged «spn»

1
为什么MS SQL Server使用NTLM身份验证?
Windows Server 2008 R2。 已安装SQL Server 2008 R2。 MSSQL服务作为本地系统运行。 服务器FQDN是SQL01.domain.com。 SQL01已加入到名为domain.com的Active Directory域中。 以下是setspn的输出: C:\> setspn -L sql01 ... MSSQLSvc/SQL01.domain.com:1433 MSSQLSvc/SQL01.domain.com WSMAN/SQL01.domain.com WSMAN/SQL01 TERMSRV/SQL01.domain.com TERMSRV/SQL01 RestrictedKrbHost/SQL01 RestrictedKrbHost/SQL01.domain.com HOST/SQL01.domain.com HOST/SQL01 然后,我启动SQL Server Management Studio并由此连接到SQL01: 然后,我运行以下查询: SELECT auth_scheme FROM sys.dm_exec_connections WHERE session_id = @@spid 结果是NTLM。为什么结果不是Kerberos?SPN似乎对于使用本地系统帐户是正确的。该服务器不在群集中或使用CNAME。

2
创建spn的权限
根据我读过的一些文档,当数据库引擎启动时,SQL Server的服务帐户将创建一个SPN,从而允许进行kerberos身份验证。我找不到任何说明帐户创建SPN所需权限的文档。因此,为了创建SPN,帐户需要具有什么权限(如果可能,则禁止域管理员)?

1
Active Directory 2012 LDAP集成服务主体名称条目消失了吗?
创建Python服务以查询AD属性 我正在将我们的AD与在Linux上运行Python的Web服务集成在一起,并使用基于SASL的Python-LDAP(DIGEST-MD5)查询AD 2012用户属性(部门,部门,电话分机,电子邮件等)。在针对AD 2003解决了我的服务特有的问题之后,针对新AD 2012遇到了SPN错误,即digest-uri与服务器上的任何SPN不匹配。我已经交叉引用了两个服务器的SPN列表,它们包含彼此相同的类似物。 错误:digest-uri与为此服务器注册的任何LDAP SPN不匹配 解决方法? 这是通过运行解决的: setspn -A ldap/<Domain_Name> <Computer_Name> 请注意,即使运行以下命令,创建服务帐户也无法解决我的SPN错误: setspn -A ldap/<Domain_Name> <Domain_Name>/<Service_Account_Name> simple_bind_s()不需要SPN,sasl_interactive_bind_s()不需要SPN 仅使用sasl_interactive_bind_s()将SPN添加到本地计算机SPN列表可用于我的Python-LDAP服务。我还应注意,如果我使用simple_bind_s(),则可以跳过SPN步骤,但是此方法以明文形式发送凭据,这是不可接受的。 但是我注意到该记录在消失之前仅在SPN列表上停留了大约一分钟?当我运行setspn命令时,没有错误,事件日志完全为空,在任何地方都没有重复项,通过在基础dn上的-F林范围搜索来检查,什么也没有。我已经添加并尝试重新添加,并从对象到对象之间移走了SPN,以验证它没有隐藏在任何地方,但是第二次我在任意位置添加了对象,然后尝试重新添加它通知我重复。因此,我非常有信心在某处没有任何重复项。 骇客 现在,我有一个计划任务,它重新运行该命令以将记录保留在列表中,因此我的服务将被恰当地命名为“ SPN Hack” cmd.exe /C "setspn -A ldap/<Domain_Name> <Computer_Name>" 直到我找出为什么从列表中清除SPN的原因。 我不是此特定AD的主要管理员,管理员能否运行正在运行的服务,该服务会将SPN与AD上的其他服务同步,并且不知道它?我的名字叫Web Developer,不是作为借口,而是为了解释我对Active Directory的无知。有人告诉我要使AD成为主用户数据库,我已经读了很多东西,但是我找不到任何地方出现人们对SPN定期“覆盖”或“清除”的问题,而且都没有管理员对SQLServer条目之外的SPN非常熟悉。 为什么需要骇客? 到目前为止,我的骇客似乎并未对任何用户或服务造成任何问题,也未产生任何错误,因此管理员表示他将让其运行,我将继续寻找。但是后来我发现自己处于编写服务的不稳定状态,该服务的实现建立在该服务之上,本质上是cron hack / shiver ...因此,我们将不胜感激。 更新资料 与系统管理员交谈后,他同意在hack之上构建服务不是解决方案,因此他被授予我使用端点加密启动本地服务的权限,我可以将其用于我的目的,结果是一样的。我会密切注意导致SPN清除的原因。使用Python-LDAP本地绑定不是问题,并且本地服务仅在一个小时左右就已经启动并运行。不幸的是,我实际上包装了LDAP中内置的功能,但是我们要做的是要做。

1
“ setspn -s”与“ setspn -a”
根据Setspn概述,不建议使用它Setspn -A来添加SPN记录,建议改为使用它Setspn -S。 据说Setspn -S在添加新SPN之前先检查SPN是否已经存在。Setspn –A不执行此检查。 尽管可以使用Setspn -A添加SPN,但应改用Setspn -S,因为-S将验证没有重复的SPN。 但是,在Windows Server 2012上,我看到了Setspn -S并Setspn -A以相同的方式进行操作:如果存在帐户的SPN记录,则使用-A和-S参数都会失败。 是否有任何之间真正的区别Setspn -S和Setspn -A?

1
使用setspn.exe创建SPN-访问权限不足
在Windown Server 2008域控制器上,我试图将服务主体名称(SPN)添加到用户帐户“ Postmaster”,以便从Communigate电子邮件服务器启用Kerberos身份验证。我使用的命令行格式如下: setspn -a imap/email-domain.com windows-domain\postmaster 当我运行此命令时,得到的结果是: Registering ServicePrincipalNames for CN=Postmaster,OU=Users,DC=windows-domain,DC=com imap/email-domain.com Failed to assign SPN on account 'CN=Postmaster,OU=Users,DC=windows-domain,DC=com', error 0x2098/8344 -> Insufficient access rights to perform the operation. 这是最奇怪的,因为我以Domain Admins组中的用户身份登录。我检查了该帐户的有效特权,但看不到未包含的任何特权。我还尝试了另一个管理员帐户,结果相同。 为了排除这种情况,我还将用户Postmaster添加到Domain Admins中,但结果没有变化。 我直接在域控制器实例上运行此命令。我能够毫不费力地查询SPN,但似乎无法编写它们。 我还尝试使用ktpass间接在所需用户上设置SPN,但收到警告: WARNING: Unable to set SPN mapping data. ...我认为这是相同的访问不足问题的征兆。 是什么导致此错误?
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.