Aracılığıyla paylaş


SQL Server için Kerberos Configuration Manager'a genel bakış

Şunlar için geçerlidir: SQL Server

Özgün KB numarası: 2985455

Ağınızdaki hatalı bir Kerberos yapılandırması, Microsoft SQL Server'da çeşitli bağlantı hatalarıyla neden olabilir. SQL Server için Kerberos Configuration Manager, SQL Server, SQL Server Reporting Services (SSRS) ve SQL Server Analysis Services'i (SSAS) etkileyen Kerberos ile ilgili bağlantı sorunlarını gidermenize yardımcı olan bir tanılama aracıdır. Bu makalede, Kerberos Configuration Manager aracının nasıl kullanılacağı ve SQL Server'ı etkileyen Kerberos sorunlarını düzeltmek için araçtan çıkışın nasıl yorumleneceği hakkında bilgi sağlanır.

Not

Kerberos Configuration Manager olduğu gibi sağlanır ve teknik destek veya güncelleştirme sunulmaz. WMI sağlayıcısının SQL Server 2022 ve sonraki sürümlerini kullanacak şekilde güncelleştirilmedi. SQL Server ile ilgili Kerberos yapılandırma sorunlarını gidermek ve tanılamak için bkz . SQLCheck.

Kerberos Configuration Manager işlevleri

Kerberos Configuration Manager aşağıdaki görevleri gerçekleştirebilir:

  • Bir sunucuda yüklü olan işletim sistemi, Microsoft SQL Server örnekleri ve Always On Kullanılabilirlik Grubu Dinleyicileri hakkında bilgi toplayın.
  • Sunucudaki tüm Hizmet Asıl Adı (SPN) ve temsilci yapılandırmalarını bildirin.
  • SPN'lerde ve temsilcilerde olası sorunları belirleyin.
  • Olası SPN sorunlarını düzeltin.

Kullanım senaryoları

Bu araç aşağıdaki özel durumları gidermenize yardımcı olur:

  • 401

    Not: Bu hata iletisi HTTP hataları, SSRS hataları ve diğer benzer hatalar içindir.

  • SSPI Bağlamı oluşturulamıyor
  • 'NTAUTHORITY\ANONYMOUS LOGON' kullanıcısı için oturum açılamadı
  • '(null)' kullanıcısı için oturum açılamadı
  • Kullanıcı için oturum açılamadı (boş)

Not

Sorunları gidermeye başlamadan önce önkoşulları gözden geçirmenizi ve ardından bağlantıyla ilgili hataları gidermek için genel denetim listesini incelemenizi öneririz.

Not

SQL Server tabanlı bilgisayarınıza yönetici erişiminiz varsa, bu bilgisayarda SQL Bağlantı Ayarları Denetimi aracını da çalıştırabilir ve ardından sql server örneğinizin SPN yapılandırmasını denetlemek için çıkışı gözden geçirebilirsiniz.

Aracı indirme

Bu araç Microsoft İndirme Merkezi'nden indirilebilir:

SQL Server için Microsoft Kerberos Configuration Manager

Not

Aracı etki alanınızdaki SQL Server tabanlı bilgisayara bağlanabilen herhangi bir bilgisayara indirebilir ve yükleyebilirsiniz.

İzinler

SQL, SSRS ve SSAS'yi etkileyen bağlantı sorunlarını gidermek için, bu bilgisayar için yönetici izinlerine sahip bir etki alanı kullanıcı hesabı kullanarak hedef bilgisayara (hizmeti barındıran) bağlanın.

İsteğe bağlı: Araç tarafından tanımlanan SPN sorunlarını düzeltmek için aracı kullanmak istiyorsanız, etki alanı hesabının Hizmet ilkesi adına doğrulanmış yazma izni olmalıdır.

Aracı kullanma

Yükleme tamamlandıktan sonra, yükleme klasörüne giderek KerberosConfigMgr.exe ikili dosyasını başlatın. Varsayılan olarak, konum SQL Server için C:\Program Files\Microsoft\Kerberos Configuration Manager'dır.

Bir uygulamayı yönetici veya farklı bir kullanıcı olarak başlatma hakkında bilgi için bkz . Uygulamayı yönetici olarak başlatmak için Çalıştır'ı kullanma.

Sorun gidermeye başlamak için aşağıdaki seçeneklerden birini kullanın:

  • Uzak SQL Server tabanlı bir bilgisayara bağlanmak için Sunucu Adı, Etki Alanı Kullanıcı Adı ve Parola için uygun değerleri girin.

    Not

    Kerberos Configuration Manager aracı, SQL Server bilgisayarı için Kerberos yapılandırmasıyla ilgili bilgileri sorgulamak ve görüntülemek için bir Windows API'si kullanır. Bu nedenle, adlandırılmış bir örnek için Kerberos ile ilgili sorunları giderirken bile SQL Server örneğini barındıran bilgisayarın adını her zaman girin.

  • Yerel sunucuya bağlanmak için Bağlan'ı seçerek Kerberos yapılandırmanızı analiz edin. Bu durumda, sunucu adını, etki alanı kullanıcı adını veya parolayı belirtmeniz gerekmez.

    Not

    Aracı başlatan hesap yerel yönetici hesabı olmalıdır. Bir uygulamayı yönetici veya farklı bir kullanıcı olarak başlatma hakkında bilgi için bkz . Uygulamayı yönetici olarak başlatmak için Çalıştır'ı kullanma.

Bağlantı başarılı olduktan sonra tüm ilgili SPN'ler aşağıdaki ekran görüntüsünde gösterilir.

Kerberos Configuration Manager'daki üç sekmenin de görünümünün ekran görüntüsü.

Bu ekran görüntüsünde kullanıcı arabiriminde aşağıdaki sekmeler vardır:

  • Sistem: Kullanıcı bilgilerini ve makine bilgilerini görüntüler.

  • SPN: Hedef sunucuda bulunan sql server örneklerinin her biri hakkında Hizmet Asıl Adı (SPN) bilgilerini görüntüler ve gerekli SPN ve durumu gibi ayrıntıları sağlar.

  • Oluştur: Eksik ve yapılandırılmış SPN'leri bulmanıza yardımcı olur. Ayrıca SPN Oluşturma betiğini oluşturmanıza da yardımcı olur.

    1. Oluştur seçeneğini belirleyin.
    2. Açılan iletişim kutusunda bir ad girin (bu örnekte "generateSPNss"), Farklı Kaydet türünü Kerberos Config Mgr(.cmd) dosyası olarak ayarlayın ve kaydet'i seçin.

    CMD dosyası için bir ad sağlayan iletişim kutusu.

generateSPNss.cmd dosyası oluşturulur ve bu dosyayı komut isteminde çalıştırabilirsiniz. generateSPNss.cmd dosyasının içeriği aşağıdaki örneğe benzer:

:: This script is generated by the Microsoft® SQL Server® Kerberos Configuration Manager tool.

:: The script may update the system information, SPN settings and Delegation configurations of a given server.

:: SPN and Delegation configuration updates require Windows Domain Administrator permission to execute.

:: A Domain Admin should review the configurations recommended by this tool and take appropriate actions to enable Kerberos authentication.

:: Please contact Microsoft Support if Kerberos connection problem persists.

:: The file is intended to be run in domain `<DomainName>.com`"

:: Corrections for MSSQLSvc/`<HostName>.<DomainName>.com` **SetSPN -s MSSQLSvc/`<HostName>`. `<DomainName>`.com UserName** 
  • SQL Server hizmet hesabı altında bir SPN oluşturmak için SetSPN kullanın.

  • Sorunları düzeltmek ve SPN eklemek için Düzeltme'yi kullanın. SPN'yi yalnızca gerekli izinlere sahipseniz ekleyebilirsiniz. Düzelt'i seçtiğinizde aşağıdaki araç ipucu görüntülenir:

    SPN eklemek için Düzelt seçeneğinin ekran görüntüsü.

    Not

    Araç yalnızca statik bağlantı noktaları olan varsayılan örnekler ve adlandırılmış örnekler için Düzeltme ve Oluşturma komutlarını sağlar. Dinamik bağlantı noktaları kullanan adlandırılmış örnekler için dinamik bağlantı noktalarından statik bağlantı noktalarına geçmenizi veya SQL hizmeti her başlatıldığında SPN'yi kaydetmek ve kaydını kaldırmak için hizmet hesabı için gerekli izinleri sağlamanızı öneririz. Aksi takdirde, hizmet her başlatıldığında ilgili SPN'lerin kaydını el ile kaldırmanız ve yeniden kaydetmeniz gerekir. Daha fazla bilgi için bkz . Kerberos Bağlantıları için Hizmet Asıl Adı Kaydetme.

  • Temsilci seçme: Temsilci seçme için hizmet hesabının yapılandırmasını etkileyen sorunları belirlemek için Temsilci Seçme'yi kullanın. Bu, özellikle bağlı sunucu sorunlarını gidermede yararlıdır. Örneğin, SPN kullanıma alma işlemi iyiyse ancak bağlı sunucu sorgularını etkileyen sorunlarla karşılaşıyorsanız, bu durum hizmet hesabının kimlik bilgilerini temsilci olarak atamak için yapılandırılmadığını gösterebilir. Daha fazla bilgi için Bağlı Sunucuları Temsilci Seçme için Yapılandırma bölümündeki Çevrimiçi Kitaplar konusuna bakın.

    Temsilci Seçme sekmesinin ekran görüntüsü.

Kerberos Configuration Manager'dan tanılamayı yorumlama ve tanılama üzerinde hareket etme

Durum sütununa başvurarak araçtan tanılamayı gözden geçirin. Duruma bağlı olarak, sorunu çözmek için uygun adımları izleyin.

  • Durum - İyi

    Daha fazla bilgi: İşaretlenen öğe doğru yapılandırıldı. Çıktıdaki bir sonraki öğeye gidin.

    Eylem: Eylem gerekmez.

  • Durum - Gerekli SPN eksik

    Daha fazla bilgi: Active Directory'deki SQL Server başlangıç hesabı için Gerekli SPN sütununda belirtilen Hizmet Asıl Adı (SPN ) eksikse bu durum bildirilir.

    Eylem: SPN sorunlarının çözülmüş olup olmadığını denetlemek için şu adımları izleyin:

    1. Uyarı iletişim kutusundaki bilgileri gözden geçirmek için Düzelt'i seçin.
    2. Eksik SPN'yi Active Directory'ye eklemek için Evet'i seçin.
    3. Etki alanı hesabınızın Active Directory'yi güncelleştirmek için gerekli izinleri varsa, gerekli SPN Active Directory'ye eklenir.
    4. Etki alanı hesabınızın Active Directory'yi güncelleştirmek için gerekli izinleri yoksa, Active Directory yöneticisinin eksik SPN'leri eklemesine yardımcı olacak betiği oluşturmak için Tümünü Oluştur veya Oluştur'a tıklayın.
    5. SPN'ler eklendikten sonra, SPN sorunlarının çözüldüğünü doğrulamak için Kerberos Configuration Manager'ı yeniden çalıştırın.
  • Durum - Kerberos yapılandırmasını kullanmak için TCP etkinleştirilmelidir.

    Daha fazla bilgi: İstemci bilgisayarda TCP etkin değilse bu durum gösterilir.

    Eylem: SQL Server örneği için TCP/IP protokolunu etkinleştirmek için şu adımları izleyin:

    1. SQL Server Yapılandırma Yöneticisi - Konsolu'nda SQL Server Ağ Yapılandırması'nu genişletin.

    2. Konsol'da için <instance name>Protokoller'i seçin.

    3. Ayrıntılar'da TCP/IP'yi ve ardından Etkinleştir'i seçin.

    4. Konsol'da SQL Server Hizmetleri'ne tıklayın.

    5. Ayrıntılar bölümünde için SQL Server'ı seçin.<instance name>

    6. SQL Server hizmetini durdurmak ve yeniden başlatmak için Yeniden Başlat'ı seçin. Ek bilgi için sunucu ağ protokollerini etkinleştirme veya devre dışı bırakma bölümüne bakın.

  • Durum - Dinamik Bağlantı Noktası

    Daha fazla bilgi: Bu durum, dinamik bağlantı noktaları (varsayılan yapılandırma) kullanan adlandırılmış örnekler için görüntülenir. SQL Server'a bağlanmak için Kerberos kullanmanız gereken ortamlarda, adlandırılmış örneğinizi statik bir bağlantı noktası kullanacak şekilde ayarlamanız ve SPN'yi kaydederken bu bağlantı noktasını kullanmanız gerekir. Aksi takdirde, Active Directory'de kayıtlı SPN, adlandırılmış bir örneğin SPN'nin kaydedildiği bağlantı noktası dışında yeni bir bağlantı noktasında dinlemeye başladığı bir sonraki seferde geçersiz hale gelir.

    Not

    Bu öneri yalnızca el ile SPN kaydına bağlı ortamlar için geçerlidir.

    Eylem: SQL Server örneğini statik bağlantı noktası kullanacak şekilde yapılandırmak için şu adımları izleyin:

    1. SQL Server Yapılandırma Yöneticisi - Konsolu'nda SQL Server Ağ Yapılandırması'nu genişletin, için <instance name>Protokoller'i genişletin ve ardından TCP/IP'ye çift tıklayın.
    2. TCP/IP Özellikleri'nde Protokol'de Tümünü Dinle'yi seçin.
    3. Tümünü Dinle seçeneği Evet olarak ayarlandıysa, IP Adresleri'ne geçin ve IPAll ayarını bulmak için pencerenin en altına kaydırın.
    4. TCP Dinamik Bağlantı Noktaları'ndaki geçerli değeri silin ve TCP Bağlantı Noktası'na bir bağlantı noktası numarası girin.
    5. Tamam'ı seçin ve SQL Server örneğini yeniden başlatın. Daha fazla bilgi için bkz. Sunucuyu Belirli bir TCP Bağlantı Noktasında Dinleyecek Şekilde Yapılandırma.
    6. Tümünü Dinle ayarı Hayır olarak ayarlandıysa, IP Adresleri'ne geçin ve IP1 ve IP2 düğümlerinde görünen tüm IP adreslerini denetleyin. Etkin olarak ayarlanmış adresler için TCP Dinamik Bağlantı Noktaları'ndaki geçerli değeri kaldırın ve TCP Bağlantı Noktası'nda bir değer ayarlayın.
    7. Tamam'ı seçin ve ardından ayarların etkili olması için SQL Server örneğini yeniden başlatın. Daha fazla bilgi için bkz. Sunucuyu Belirli bir TCP Bağlantı Noktasında Dinleyecek Şekilde Yapılandırma.
  • Durum - Yinelenen SPN

    Daha fazla bilgi: Aynı SPN, Active Directory'deki farklı hesaplar altında kayıtlıysa bu senaryoyla karşılaşabilirsiniz.

    Eylemler: Active Directory'ye SPN eklemek için şu adımları izleyin:

    1. Düzelt'i seçin.

    2. Uyarı iletişim kutusundaki bilgileri denetleyin.

    3. Eksik SPN'yi Active Directory'ye eklemek için Evet'i seçin.

      • Etki alanı hesabınız Active Directory'yi güncelleştirmek için gerekli izinlere sahipse yanlış SPN silinir.

      • Etki alanı hesabınızın Active Directory'yi güncelleştirmek için gerekli izinleri yoksa, Yinelenen SPN'leri kaldırmak için Active Directory yöneticinize sağlayabileceğiniz gerekli betiği oluşturmak için Tümünü Oluştur veya Oluştur'a tıklayın.

    4. SPN'ler kaldırıldıktan sonra, SPN sorunlarının çözüldüğünü doğrulamak için Kerberos Configuration Manager'ı yeniden çalıştırın.

    Not

    SQL Server Veritabanı Altyapısı örneği başlatıldığında, SQL Server SPN'yi SQL Server hizmetine kaydetmeye çalışır. Örnek durdurulduğunda, SQL Server SPN'nin kaydını kaldırmaya çalışır. Bunun gerçekleşmesi için, SQL Server hizmet hesabı Active Directory'de uygun izinleri gerektirir. Ancak hizmet hesabı bu haklara sahip değilse, otomatik SPN kaydı gerçekleşmez ve SQL örneklerinin Kerberos kimlik doğrulamasını etkinleştirebilmesi için bu SPN'leri kaydetmek için Active Directory yöneticinizle birlikte çalışmanız gerekir. Daha fazla bilgi için bkz . Kerberos Bağlantıları için Hizmet Asıl Adı Kaydetme.

    Not

    SQL'in kümelendiği ortamlarda, SPN'nin kaydının silinip ACTIVE Directory'ye yeniden kaydedilmesi SQL Server'ın çevrimiçi olması için gereken süreden daha uzun sürebileceğinden SPN'lerin otomatik olarak kaydedilmesi önerilmez. SPN kaydı zamanında gerçekleşmezse, küme yöneticisi SQL Server örneğine bağlanamadığından SQL Server'ın çevrimiçi olmasını engelleyebilir.

Ek seçenekler

Komut satırından SPN Listesi oluşturmak için:

  1. Komut satırına gidin.

    Not

    SSRS'yi etkileyen bağlantı sorununu gidermek için bir yönetim Komut İstemi penceresi açın.

  2. KerberosConfigMgr.exe içeren klasöre geçin.

  3. KerberosConfigMgr.exe -q -l girin.

  4. Daha fazla komut satırı seçeneği için yazın KerberosConfigMgr.exe -h.

Sunucunun Kerberos yapılandırma bilgilerini kaydetmek için:

  1. Hedef Windows sunucusuna bağlanın.
  2. Kaydet'i seçin.
  3. Dosyanın kaydedilmesini istediğiniz konumu belirtin. Yerel sürücüde veya ağ paylaşımında olabilir. Dosya .xml biçimde kaydedilir.

Kaydedilen dosyadan sunucunun Kerberos yapılandırma bilgilerini görüntülemek için:

  1. Yükle'yi seçin.
  2. Kerberos Configuration Manager tarafından oluşturulan XML dosyasını açın.

Bu aracın günlük dosyalarını görüntülemek için:

Varsayılan olarak, uygulama uygulama veri klasörünüzde her çalıştırıldığında bir günlük dosyası oluşturulur: %APPDATA%\Microsoft\KerberosConfigMgr.

Yardım almak için aşağıdaki yöntemlerden birini kullanın:

  • Araç ipucu oluşturmak için fare işaretçisini komutun üzerine getirin.
  • Komut isteminde komutunu çalıştırın KerberosConfigMgr.exe -h .
  • Araç çubuğunda Yardım düğmesini seçin.

Ayrıca bkz.