Bu konuyu anladığımdan beri bu bir "HOP" sorunudur.
yani giriş bilgilerinizi (SSPI ile birlikte) Sunucu B'ye iletmek için A sunucusunu kullanmaya çalışıyorsunuz.
SQL Server 2005'te, olması gerekenden daha zor hale getiren bir dizi güvenlik sorunu eklediler. "Kerberos Kimlik Doğrulama" kelimeleri çoğu sys-admin / DBA'nın hayatının hanesi olacak. Doğrudan kimlik doğrulaması için etkili bir şekilde kullanılır.
İhtiyacınız olanın temelleri burada. 1) Sunucuların (A ve B), Active Directory'de (AD) Kerberos için yetki verilmiş olarak ayarlanması gerekir. (bu, aktif dizin yönetici paneliniz aracılığıyla ayarlanır)
2) SQL Sunucularınızın çalıştığı hizmet hesabının delegasyonu etkinleştirmesi de gerekir (bu, aynı zamanda aktif dizin yönetici panelinizle de ayarlanır). - bir hizmet hesabı altında çalışmıyorlarsa, bir tane oluşturmanız gerekir.
3) Sunucular, örnek ve HOST ve makine adı için tanımlanmış SPN'lere sahip olmalıdır. (Windows destek araçlarında SetSPN adlı bir araç kullanarak)
Destek Araçları (SetSPN bu settedir)
http://www.microsoft.com/downloads/details.aspx?FamilyID=96a35011-fd83-419d-939b-9a772ea2df90&DisplayLang=tr
(Bir SPN'nin nasıl ekleneceğine genel bakış)
http://technet.microsoft.com/en-us/library/bb735885.aspx
4) DB'nizi "güvenilir" duruma getirmeniz gerekebilir
ALTER VERİTABANI SETİ güvenilir
5) Tüm bunları yaptıktan sonra, örneklerinizi yeniden başlatın.
6) Ardından bağlantılı sunucunuzu tekrar oluşturmayı deneyin.
Sonunda bağlantınızı SQL Server ile test edebilirsiniz. Her şey doğru yapılandırılmışsa, bu iyi çalışmalıdır.
SELECT *
FROM OPENDATASOURCE('SQLNCLI',
'Data Source=ServerB;Integrated Security=SSPI;'
).MASTER.dbo.syscolumns
Bu size bağlantı kimlik doğrulama tipinizi söyleyecektir.
select auth_scheme from sys.dm_exec_connections where session_id=@@SPID
Buraya 'KERBEROS' almak istiyor ve 'NTLM' değil.
Kaygan bir eğim, KERBEROS ve Pass-through delegasyonu, buna bağlı kal ve sonunda onu çöz.
Referanslar
Kerberos
http://blogs.msdn.com/sql_protocols/archive/2005/10/12/479871.aspx
http://blogs.msdn.com/sql_protocols/archive/2006/12/02/understanding-kerberos-and-ntlm-authentication-in-sql-server-connections.aspx
http://blogs.iis.net/brian-murphy-booth/archive/2007/03/09/the-biggest-mistake-serviceprincipalname-s.aspx
Sorunun diğer belirtileri
http://www.sqlservercentral.com/Forums/Topic460425-359-1.aspx
http://msdn2.microsoft.com/en-us/library/aa905162(sql.80).aspx
http://msdn2.microsoft.com/en-us/library/ms189580.aspx
Umarım bütün bunlar yardımcı olur.