I have 3 SQL Server 2012 Instances, 2 on SiteA on the same server SiteAServer. I have 1 on SiteB on server SiteBServer.
SiteADefaultInstance, SiteASecondInstance
SiteBDefaultInstance
- SiteBDefaultInstance can create a linked server to SiteADefaultInstance and SiteASecondInstance.
- SiteADefaultInstance can create a linked server to SiteBDefaultInstance.
- SiteASecondInstance CANNOT create a linked server to SiteBDefaultInstance.
I get the error
"Login failed for user 'NT AUTHORITY\ANONYMOUS LOGON"
I am setting the security to be made using the current context.
I have ran setSPN
for SiteAServer and SiteBServer. You don't have to change the commands if you have more than one instance do you?
I am in the role sysadmin.
I have never experienced where it only worked one way before. Any suggestions where to look?
1 Answer 1
Comments were very useful in leading to the solution. After running SQL Server Kerberos Configuration Manager I saw that while the first was on 1433 for SiteADefaultInstance and the second instance of the database was listening on a dynamic port for SiteASecondInstance.
Went into SQL Server Configuration Manager> SQL Server Network Configuration> Protocols for SiteASecondInstance> TCP/IP and change IPALL TcpPort to a different port, say 9999.
SetSPN -s "MSSQLSvc/SiteAServer:9999" "user"
After this could create a linked server.
-
The 'most correct' way to fix this is to grant the service account the ability to register its own SPNs. That way you never have any hard-coded ports.Jeff Sacksteder– Jeff Sacksteder2015年01月26日 21:02:00 +00:00Commented Jan 26, 2015 at 21:02
-
blogs.technet.com/b/askds/archive/2008/06/13/…Jeff Sacksteder– Jeff Sacksteder2015年01月26日 21:05:13 +00:00Commented Jan 26, 2015 at 21:05
Explore related questions
See similar questions with these tags.
setspn -U -A MSSQLSvc/SiteAServer:1433 user
andsetspn -U -A MSSQLSvc/SiteBServer:1433 user
are the commands I ran. What is the correct way to specify the instance?setspn -U -A MSSQLSvc/SiteAServer\SiteASecondInstance:1433 user
?