Share via


Kerberos bağlantıları için bir hizmet asıl adı kayıt

Kerberos kimlik doğrulamasını kullanmak için SQL Serverdoğru olması için aşağıdaki koşulların her ikisi de gerektirir:

  • İstemci ve sunucu bilgisayarlar parçası aynı Windows etki alanında veya güvenilen etki alanlarında olmalıdır.

  • Bir hizmet asıl adı (spn) Active Directory'de, bir Windows etki alanında Anahtar Dağıtım Merkezi rolünü varsayar kaydettirilmesi gerekir. spn kayıtlı sonra başlatılan Windows hesabıyla eşler SQL Serverörnek hizmet. spn kaydı çalıştırılmadığı veya başarısız olursa, Windows Güvenlik katmanı ile spn ilişkili hesap belirleyemez ve Kerberos kimlik doğrulama kullanılmayacaktır.

    [!NOT]

    Sunucu Otomatik spn kaydı yapılamıyor, spn el ile kayıtlı olması gerekir.

Bağlantı Kerberos sorgulayarak kullanarak doğrulayabilirsiniz sys.dm_exec_connectionsdinamik yönetimi görünümü. Aşağıdaki sorgu ve kontrol değer-in auth_schemesütun "kerberos" olacağı, Kerberos etkin olup olmadığı.

SELECT auth_scheme FROM sys.dm_exec_connections WHERE session_id = @@spid ;

spn kimlik rolü

Bir uygulama bir bağlantı açar ve Windows kimlik doğrulaması kullandığında SQL Serveryerel istemci geçer SQL Serverbilgisayar adı, örnek adı ve isteğe bağlı olarak, spn. Bağlantı spn geçerse herhangi bir değişiklik yapılmadan kullanılır.

Bağlantı spn geçemezse, kullanılan iletişim kuralı, sunucu adı ve örnek adı varsayılan spn inşa dayalı.

Yukarıdaki senaryolardan de, bağlantının kimliğini doğrulamak için bir güvenlik belirteci almak için anahtar dağıtım merkezi için spn gönderilir. Güvenlik belirteci alınamıyor, ntlm kimlik doğrulaması kullanır.

Bir hizmet asıl adı (spn) tarafından istemci hizmeti örneğini benzersiz olarak tanıtan addır. Kerberos kimlik doğrulama hizmeti, bir hizmetin kimliğini doğrulamak için bir spn kullanabilirsiniz. İstemcinin hizmete bağlanmak istediğinde, bu hizmetinin bir örneğini bulur, bu örnek için bir spn oluşturur, hizmetine bağlanır ve spn kimlik doğrulaması hizmeti sunar.

[!NOT]

Bu konuda sağlanan bilgileri de uygulandığı SQL Serverkümeleme kullanın yapılandırmalar.

Windows kimlik doğrulaması kullanıcıların SQL Server kimlik doğrulaması tercih edilen yöntemdir. İstemciler Windows kimlik doğrulamasını kullan doğrulanır, ya da ntlm veya Kerberos kullanarak. Bir Active Directory ortamında, Kerberos kimlik doğrulaması her zaman öncelikle denenir. Kerberos kimlik doğrulaması için değil SQL Server 2005kullanarak istemcileri adlandırılmış borular.

İzinler

Ne zaman Veritabanı Altyapısıhizmeti başlatılır, bu hizmet asıl adı (spn) kaydettirin girişimlerini. SQL Server başlangıç hesap Active Directory Etki Alanı Hizmetleri'nde bir spn kaydettirin izniniz yoksa, bu çağrı başarısız olur ve bir uyarı iletisi uygulama olay günlüğüne hem de SQL Server hata günlüğüne kaydedilir. spn kayıt Veritabanı Altyapısı(önerilmez), yerel sistem gibi yerleşik bir hesap veya ağ hizmeti veya bir etki alanı yöneticisi hesabı gibi bir spn kayıt iznine sahip bir hesap altında çalıştırılmalıdır. Ne zaman SQL Serverüzerinde çalıştığı Windows 7veya Windows Server 2008 R2işletim sistemi, sen-ebilmek koşmak SQL Serverkullanarak bir sanal veya yönetilen hizmet hesabı (msa). Sanal hesaplar ve MSA'ın bir spn kayıt olabilirsiniz. Sanal hesaplar ve MSAs hakkında daha fazla bilgi için bkz: New Account Types Available with Windows 7 and Windows Server 2008 R2. Eğer SQL Serverçalışmıyor bu hesaplardan birini altında başlangıçta spn kayıtlı olmayan ve etki alanı yöneticisi spn el ile kaydetmeniz gerekir.

[!NOT]

Ne zaman Windows etki alanını yapılandırılmış çalıştırmak için daha az Windows Server 2008 R2Windows Server 2008 R2 işlev düzeyini ve sonra yönetilen hizmet hesabı için SPN kaydı için gerekli izinleri olmaz SQL Server Veritabanı Altyapısıhizmet. Kerberos kimlik doğrulaması gerekiyorsa, etki alanı yöneticisi el ile kaydetmeniz SQL Serveryönetilen hizmet hesabının SPN.

BB makalesi SQL Server'da Kerberos kimlik doğrulaması kullanacak şekilde nasıl, vermek okuma veya yazma izni için etki alanı yöneticisi olmayan bir hesap için bir spn nasıl hakkında bilgi içerir.

Daha fazla bilgi elde edilebilir vasıl nasıl uygulanması Kerberos kısıtlı temsilci ile SQL Server 2008

spn biçimleri

İle başlayan SQL Server 2008, spn biçim üstünde TCP/IP Kerberos kimlik doğrulamasını desteklemek üzere değiştirilir, adlandırılmış yöneltmeler ve paylaşılan hafıza. Desteklenen spn biçimleri adlı ve varsayılan örnekleri aşağıdaki gibidir.

Adlandırılmış örneği

  • MSSQLSvc ve fqdn: [bağlantı noktası | ÖrnekAdı] Burada:

    • MSSQLSvc ve kayıtlı hizmetidir.

    • fqdn sunucu tam etki alanı adıdır.

    • bağlantı noktası tcp bağlantı noktası numarasıdır.

    • ÖrnekAdı adı SQL Serverörneği.

Varsayılan örneği

  • MSSQLSvc ve fqdn:bağlantı noktası | MSSQLSvc ve fqdn, burada:

    • MSSQLSvc ve kayıtlı hizmetidir.

    • fqdn sunucu tam etki alanı adıdır.

    • bağlantı noktası tcp bağlantı noktası numarasıdır.

Yeni spn biçiminde bir bağlantı noktası numarası gerektirmez. Bu, birden çok bağlantı noktalı sunucu ya da bir iletişim kuralı bağlantı noktası numaralarını kullanmayan Kerberos kimlik doğrulamasını kullanabilirsiniz anlamına gelir.

[!NOT]

Nerede tcp bağlantı noktası spn dahil, bir TCP/IP bağlantısı ise SQL Servertcp iletişim kuralı Kerberos kimlik doğrulamasını kullanarak bağlanmak bir kullanıcı için etkinleştirmelisiniz.

Otomatik spn kaydı

Örneği zaman SQL Server Veritabanı Altyapısıbaşlar, SQL Serverspn kaydettirmeyi dener SQL Serverhizmet. Örnek durdurulduğunda, SQL Serverspn kaydını dener. Biçiminde bir TCP/IP bağlantısı için spn kayıtlı MSSQLSvc /<fqdn>:<tcpport>.Adlandırılmış örnekleri ve varsayılan örneği kayıtlı olarak MSSQLSvc, relying on <tcpport > örnekleri ayırmak değer.

Kerberos desteği diğer bağlantılar için spn biçiminde kaydedilir MSSQLSvc /<fqdn>:<ÖrnekAdı > adlandırılmış bir örneği için. Varsayılan örneği kayıt biçimidir MSSQLSvc /<fqdn>.

Kayıt veya hizmet hesabı bu eylemler için gerekli izinleri yoksa spn kaydını el ile müdahale gerekli olabilir.

Manuel spn kaydı

spn el ile kaydetmek için yöneticinin Microsoft ile sağlanan Setspn.exe aracını kullanmak zorunda Windows Server 2003Destek araçlarını. Daha fazla bilgi için bkz: Windows Server 2003 Service Pack 1 destek araçları BB makalesi.

Setspn.exe okumak, değiştirmek ve silmek hizmet asıl adları (spn) dizin özelliği sağlayan bir komut satırı aracıdır. Bu araç ayrıca geçerli SPN'leri görüntülemek, hesabın varsayılan SPN'ler, sıfırlamak ve ekleme veya silme tamamlayıcı SPN'ler sağlar.

Aşağıdaki örnekte, el ile kaydetmek için kullanılan sözdizimi gösterilmiştir TCP/IP bağlantısı için bir spn kaydettirin.

setspn -A MSSQLSvc/myhost.redmond.microsoft.com:1433 accountname

Not spn zaten varsa, bunu reregistered önce o silinmelidir. Kullanarak bunu setspnkomutu ile birlikte -Dgeçiş. Aşağıdaki örnekler, nasıl el ile yeni bir örneğini tabanlı spn kayıt göstermektedir. Varsayılan örneği için kullanın:

setspn –A MSSQLSvc/myhost.redmond.microsoft.com accountname

Adlandırılmış bir örneği için kullanın:

setspn –A MSSQLSvc/myhost.redmond.microsoft.com:instancename accountname

İstemci bağlantıları

Kullanıcı tarafından belirtilen SPN, istemci sürücüleri desteklenir. spn sağlanmazsa, ancak bunu bir istemci bağlantısının türüne göre otomatik olarak oluşturulur. tcp bağlantısı spn biçiminde MSSQLSvc/fqdn:liman kullanılır için hem adlı ve varsayılan örneği.

Adlandırılmış yöneltmeler ve paylaşılan bellek bağlantıları, biçiminde bir spn MSSQLSvc/fqdn:ÖrnekAdı adlandırılmış bir örneği için kullanılır ve MSSQLSvc/fqdn varsayılan örneği için kullanılır.

spn bir hizmet hesabı kullanma

Hizmet hesapları spn kullanılabilir. Onlar ve Kerberos kimlik doğrulaması bağlantı özniteliği aracılığıyla belirtilen aşağıdaki biçimler alabilir:

  • kullanıcıadı@etkialanı veya etkialanı\kullanıcıadı bir etki alanı kullanıcı hesabı için

  • Machine$@Domain ya host\FQDN bir bilgisayarın etki alanı hesabının yerel sistem ya da ağ hizmetleri gibi.

Bağlantının kimlik doğrulama yöntemini belirlemek için aşağıdaki sorguyu yürütün.

SELECT net_transport, auth_scheme 
FROM sys.dm_exec_connections 
WHERE session_id = @@SPID;

Kimlik doğrulama Varsayılanları

Aşağıdaki tabloda kullanılan varsayılan spn kaydı senaryoları temel kimlik doğrulamasını açıklar.

Senaryo

Kimlik doğrulama yöntemi

Doğru etki alanı hesabına, sanal hesap, msa veya yerleşik hesabı için spn eşleştirir. Örneğin, Local System veya network SERVICE.

NotNot
SQL Server hizmetinin altında çalıştığı hesabı kayıtlı spn tarafından eşlenen hesabı, doğru anlamına gelir.

ntlm yerel bağlantıları kullanmak, Kerberos uzak bağlantıları kullanın.

spn doğru etki alanı hesabına, sanal hesap, msa veya yerleşik hesap olur.

NotNot
SQL Server hizmetinin altında çalıştığı hesabı kayıtlı spn tarafından eşlenen hesabı, doğru anlamına gelir.

ntlm yerel bağlantıları kullanmak, Kerberos uzak bağlantıları kullanın.

Bir yanlış etki alanı hesabı, sanal hesap, msa veya yerleşik hesabı için spn eşlemeleri

Kimlik doğrulaması başarısız olur.

spn arama başarısız olur veya doğru etki alanı hesabına, sanal hesap, msa veya yerleşik hesap için eşleşmiyor veya doğru etki alanı hesabına, sanal hesap, msa veya yerleşik hesap değil.

Yerel ve uzak bağlantı NTLM'yi kullanır.

Açıklamalar

Adanmış yönetici bağlantısı (dac) kullanan bir örnek adını alarak spn. Kerberos kimlik doğrulaması ile dac spn kayıtlı başarıyla kullanılabilir. Alternatif olarak, bir kullanıcı hesap adını bir spn belirtebilirsiniz.

Başlangıç sırasında spn kaydı başarısız olursa bu hata kaydedilir SQL Serverhata günlüğü ve başlatma devam ediyor.

Kapatma sırasında başarısız spn de-registration, bu hata kaydedilir SQL Serverhata günlüğü ve kapatma devam ediyor.

Ayrıca bkz.

Kavramlar

Istemci bağlantıları'nda hizmet asıl adı (spn) desteği

Hizmet asıl adlarını (SPN) istemci bağlantıları (ole db)

Istemci bağlantıları (odbc)'nda hizmet asıl adı (SPN)

Diğer Kaynaklar

SQL Server yerel istemci özellikleri

Kerberos kimlik doğrulaması sorunlarını Raporlama Hizmetleri ortamında yönetme