22 Ekim 2015 Perşembe

HATA: The target principal name is incorrect. Cannot generate SSPI context. (Microsoft SQL Server)

HATA:
The target principal name is incorrect. Cannot generate SSPI context. (Microsoft SQL Server)

Error Log dosyasında da şu hata görünüyordu:
The SQL Server Network Interface library could not register the Service Principal Name (SPN) [ MSSQLSvc/..local ] for the SQL Server service. Windows return code: 0x21c7, state: 15. Failure to register a SPN might cause integrated authentication to use NTLM instead of Kerberos. This is an informational message. Further action is only required if Kerberos authentication is required by authentication policies and if the SPN has not been manually registered.

AÇIKLAMA:
Ortamlarımızdan birinde, 3 sunucudan oluşan AlwaysOn Availability Group kurulumu yapıyoruz bu günlerde. Kerberos yöntemini kullanmak için SPN kayıtlarımızı oluşturmuş, 3 sunucuda da SQL Server servisi olarak aynı hesabın kullanılmasını sağlamıştık. Fakat daha sonra, standart oluşturarak SQL Server servisi için kullanılacak olan hesabı değiştirdik. Akabinde, sunucuların ikisine RDP yaparak, SSMS ile diğer bir tanesine bağlanırken bu hatayı almaya başladık. Bağlanma işlemini tam ters yönlü yaptığımızda, yani bağlanırken sorun yaşadığımız sunucudan diğer iki sunucuya yaptığımızda bir hata ile karşılaşmıyorduk.

Hata mesajında SSPI'ı ve SQL Server Error Log'unda yukarıdaki hatayı gördüğümde, sorunun SPN ile ilgili olduğunu anladım. Domain yöneticisi arkadaşımla oraya odaklandık.

ÇÖZÜM:
SPN kayıtlarını SQL Server servis hesabını değiştirmeden önce oluşturmuştuk. Domain yöneticisi arkadaşım iki sunucu ile ilgili kayıtları silip yeniden oluşturmuş, fakat bir sunucunun kaydını güncellemeyi atlamışız. Bu hata mesajını aldığımız sunucu da oydu. Eski SPN kaydını sildik ve yeni SPN kaydını yeni servis hesabını kullanarak oluşturduk, böylece sorun çözülmüş oldu. Artık Error Log'da da SQL Server servis açılışında SPN ile ilgili olması gerektiği gibi aşağıdaki kaydı görüyoruz:

The SQL Server Network Interface library successfully registered the Service Principal Name (SPN) [ MSSQLSvc/..local: ] for the SQL Server service.

Ekrem Önsoy

Hiç yorum yok: