[Okta Webinar] Learn how to a build a cloud-first strategyRegister Now

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 694
  • Last Modified:

SQL Management Studio Access [Linked Server and Kerberos Delegation]

SQL Management Studio Access [Linked Server and Kerberos Delegation]

Please help.
When accessing SQL Server via RDP all is OK and runs just fine.

However, when accessing SVRSQL01 inside SQL Management Studio on client PC the following error occurs.
"Msg 18456, Level 14, State 1, Line 1
Login failed for user 'NT AUTHORITY\ANONYMOUS LOGON'"

Linked Server code I am running.
   SELECT CarCountSetId FROM EIXIXRMDB01.Forecasting.APP.tblCarCountSet

Windows authentication is used to connect to server?
The userid (The SQL Service Account) has access to all shares?
Security Principle Names (SPNs) have already been trusted for delegation using the following commands:

C:\Program Files\Support Tools>setspn -A MSSQLSvc/EFXIXRMDB02:1433 ix\svc-sql-fx-08
Registering ServicePrincipalNames for CN=SVC-SQL-FX-08,OU=Service Accounts,OU=Resources,DC=ix,DC=avisrac,DC=net
        MSSQLSvc/EFXIXRMDB02:1433
Updated object
C:\Program Files\Support Tools>setspn -A MSSQLSvc/EFXIXRMDB02.IX.AVISRAC.NET:1433 ix\svc-sql-fx-08
Registering ServicePrincipalNames for CN=SVC-SQL-FX-08,OU=Service Accounts,OU=Resources,DC=ix,DC=avisrac,DC=net
        MSSQLSvc/EFXIXRMDB02.IX.AVISRAC.NET:1433
Updated object

So I'm not so sure double-hop authentication/impersonation is at play here, but the LINKED SERVER issues are preventing the query from running and returning the Login failed error message.
0
ActiveInfoSys
Asked:
ActiveInfoSys
  • 6
  • 3
1 Solution
 
rboyd56Commented:
When you are using delegation the SQL Server machines themself have to be trusted for delegation as well as the service account, at least the SQL Server that has the linked server defined.

Client ---> SQL Server 1 ---> SQL Server 2

SQL Server 1's machine has to be trusted for delegation as well as it's service account. It also needs an SPN.
SQL Server 2's service account must have an SPN assigned and the account must be trusted for delegation

The SPN has to be assigned to the fully qualified domain name. Not hte netbios name. So this one is incorrect and should be deleted:

setspn -A MSSQLSvc/EFXIXRMDB02:1433 ix\svc-sql-fx-08

If the client finds this one and tries to use it the connection will fail. So that may be the problem you are having.
0
 
ActiveInfoSysAuthor Commented:
OK.  Thanks RBOYD56....No NetBIOS Names...see results for all Service Accounts involved.

C:\Program Files\Support Tools>setspn -L SVC-SQL
Registered ServicePrincipalNames for CN=SVC-SQL,OU=Service Accounts,OU=Resources,DC=ix,DC=
avisrac,DC=net:
    MSSQLSvc/EIXIXRDDB01.IX.AVISRAC.NET:1433

C:\Program Files\Support Tools>setspn -L SVC-SQL-FX-03
Registered ServicePrincipalNames for CN=SVC-SQL-FX-03,OU=Service Accounts,OU=Resources,DC=
ix,DC=avisrac,DC=net:
    MSSQLSvc/EFXIXSQL03.IX.AVISRAC.NET:1433

C:\Program Files\Support Tools>setspn -L SVC-SQL-FX-08
Registered ServicePrincipalNames for CN=SVC-SQL-FX-08,OU=Service Accounts,OU=Resources,DC=
ix,DC=avisrac,DC=net:
    MSSQLSvc/EFXIXRMDB02.IX.AVISRAC.NET:1433

C:\Program Files\Support Tools>setspn -L SVC-SQL-FX-09
Registered ServicePrincipalNames for CN=SVC-SQL-FX-09,OU=Service Accounts,OU=Resources,DC=
ix,DC=avisrac,DC=net:
    MSSQLSvc/EFXIXRMDB02.IX.AVISRAC.NET:1435
0
 
ActiveInfoSysAuthor Commented:
And the results for all SERVERS involved:

C:\Program Files\Support Tools>setspn -L EIXIXRDDB01
Registered ServicePrincipalNames for CN=EIXIXRDDB01,OU=Database,OU=Heathrow,OU=Servers,DC=
ix,DC=avisrac,DC=net:
    HOST/EIXIXRDDB01
    HOST/eixixrddb01.ix.avisrac.net


C:\Program Files\Support Tools>setspn -L EFXIXRMDB02
Registered ServicePrincipalNames for CN=EFXIXRMDB02,OU=Database,OU=Frankfurt,OU=Servers,DC
=ix,DC=avisrac,DC=net:
    HOST/EFXIXRMDB02
    HOST/EFXIXRMDB02.ix.avisrac.net

C:\Program Files\Support Tools>setspn -L EFXIXSQL03
Registered ServicePrincipalNames for CN=EFXIXSQL03,OU=Database,OU=Frankfurt,OU=Servers,DC=
ix,DC=avisrac,DC=net:
    HOST/EFXIXSQL03
    HOST/EFXIXSQL03.ix.avisrac.net

0
What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

 
ActiveInfoSysAuthor Commented:
BIG QUESTION:

Does the secondary file server need any SPN assigned:


EFXIXRMOR01
0
 
ActiveInfoSysAuthor Commented:
Such that:
C:\Program Files\Support Tools>setspn -L EFXIXRMOR01
Registered ServicePrincipalNames for CN=EFXIXRMOR01,OU=Application,OU=Frankfurt,OU=
,DC=ix,DC=avisrac,DC=net:
    HOST/EFXIXRMOR01
    HOST/EFXIXRMOR01.ix.avisrac.net
0
 
rboyd56Commented:
No it does not, unless there is a SQL Server installed on it that you are accessing in this process.
0
 
ActiveInfoSysAuthor Commented:
No SQL Server installed on secondary FILE server.
0
 
rboyd56Commented:
Ar the machine accounts trusted for delegation in Active Directory. How about the SQL SErver service accounts?
0
 
ActiveInfoSysAuthor Commented:
I can confirm for all computer accounts the following is set:

Computer Properties

Delegation ¦ "Trust this computer for delegation to specified services only ((*Use Kerberos Only))

[ Services to which this account can present delegated credentials    ]
MSSQLSvc -->  EFXIXSQL03.IX.AVISRAC.Net --> 1433                    

Yes. Machine Accounts are delegated in AD.

As above, SETSPN - L show all accounts delgated properly.

Any final ideas?  I am really stuck.

0

Featured Post

Get free NFR key for Veeam Availability Suite 9.5

Veeam is happy to provide a free NFR license (1 year, 2 sockets) to all certified IT Pros. The license allows for the non-production use of Veeam Availability Suite v9.5 in your home lab, without any feature limitations. It works for both VMware and Hyper-V environments

  • 6
  • 3
Tackle projects and never again get stuck behind a technical roadblock.
Join Now