Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunlar için geçerlidir:Linux üzerinde SQL Server
Kuruluşunuzun en iyi güvenlik uygulamalarına bağlı olarak, network.privilegedadaccount'da mssql.conf olarak sağlanan Windows Active Directory hesabının veya SQL Server hizmetinin hizmet asıl adlarının (SPN) sahibi olan başka bir hesabın parolasını düzenli olarak döndürmeniz gerekebilir. Hesabın parolasını değiştirmek için desteklenen yöntem bu makalede belgelenmiştir. Parola değişikliği, Linux üzerinde SQL Server hizmetini yeniden başlatmaya gerek kalmadan geçerlilik kazanır.
Araç adutil , tuş sekmesini güncelleştirmek için kullanılır. Komutun adutil etki alanına katılmış bir makineden çalıştırılması gerekir.
adutil hakkında daha fazla bilgi ve aracın nasıl indirilmesi hakkında daha fazla bilgi için bkz. Dutil'e giriş - Active Directory yardımcı programı.
Active Directory'de güncelleştirmeden önce anahtar sekmesindeki yeni parolayı sonraki kvno numarasıyla güncelleştirmek kritik önem taşır. Sonraki kvno numarasının kullanılması, parola değişikliğinden sonra SQL Server hizmetinin yeniden başlatılmasını önler. Önce Active Directory'de parolayı güncelleştirir ve ardından anahtar sekmesini değiştirirseniz, Active Directory kimlik doğrulamasının düzgün çalıştığından emin olmak için SQL Server hizmetini yeniden başlatmanız gerekir.
Tuş sekmesini döndürme senaryosu
Bir örnek düşünelim. Active Directory kimlik doğrulaması Linux üzerinde SQL Server için zaten etkindir.
mssql.conf dosyasında, network.privilegedadaccountsqluserolarak ayarlarsınız. Hesap sqluser@CONTOSO.COM Active Directory'de zaten oluşturulmuştur ve anahtar sekmesi de /var/opt/mssql/secrets/mssql.keytabvarsayılan konumda oluşturulur. Şimdi sqluser@CONTOSO.COMparolasını değiştirmek istiyorsunuz. İzlemeniz gereken adımlar şunlardır:
Etki alanına katılmış makineye adutil yükleyin.
kinitkomutunu kullanarak Kerberos TGT'sini (anahtar verme bileti) alın veya yenileyin.kinitkomutu için ayrıcalıklı bir hesap kullanın. Hesabın etki alanına bağlanma izni olması ve etki alanında hesap ve SPN'ler oluşturabilmesi gerekir. Bu durumda, hesaplar ve SPN'ler oluşturma izinlerine sahipprivilegeduser@CONTOSO.COMhesabını,CONTOSO.COMadlı etki alanımızda kullanıyoruz.kinit privilegeduser@CONTOSO.COMTGT'yi almak veya yenilemek için
kinit'yi çalıştırdıktan sonra, geçerli 'ünnetwork.privilegedadaccountnumarasını sorgulayın. Bu durumda,sqluser@CONTOSO.COM.kvno sqluser@CONTOSO.COM
anahtar sekmesini mssql-conf ile döndürmeyi veya kullanarak adutil seçebilirsiniz.
anahtar sekmesini mssql-conf ile döndürme
uygulamasını yükleyip adutil ile mssql-conftümleştirebilirsiniz; bu da tuş sekmesini kullanarak mssql-confdöndürebileceğiniz anlamına gelir.
Kök kullanıcı olarak oturum açın ve
mssqlkullanıcıya geçin.su mssqlkinitkomutunu kullanarak Kerberos TGT'sini (anahtar verme bileti) alın veya yenileyin.kinitkomutu için ayrıcalıklı bir hesap kullanın. Hesabın etki alanına bağlanma izni olması ve etki alanında hesap ve SPN'ler oluşturabilmesi gerekir. Bu durumda, hesaplar ve SPN'ler oluşturma izinlerine sahipprivilegeduser@CONTOSO.COMhesabını,CONTOSO.COMadlı etki alanımızda kullanıyoruz.kinit privilegeduser@CONTOSO.COMSQL Server tuş sekmesini ve
mssql-confayrıntılarını sağlayaraknetwork.privilegedadaccountkomutunu çalıştırın. Bu örnekteprivilegedadaccount,sqluser'dir../mssql-conf setup-ad-keytab /var/opt/mssql/secrets/mssql.keytab sqluser --use-next-kvno'Parola istendiğinde, kullanmayı düşündüğünüz yeni bir parola girin.
--use-next-kvnoseçeneği, geçerli kvno'yu + 1 olarak ayırır.İsteğe bağlı: Belirli bir
--kvnosağlamak içinmssql-conf setup-ad-keytabseçeneğini, komutuyla da kullanabilirsiniz. Önce kullanıcı için geçerli kvno aldığınızdan emin olmanız ve ardından yeni kvno uygun şekilde güncelleştirdiğinizden emin olmanız gerekir; bu, geçerli kvno + 1 olacaktır.Komutunu kullanarak tuş sekmesinin anahtarlarını listeleyebilirsiniz:
klist -kte /var/opt/mssql/secrets/mssql.keytabAnahtar sekmesinin hem kullanıcı hem de SPN girdileri için sonraki kvno ile güncelleneceğini fark edeceksiniz.
Artık
sqluserkullanıcının parolasını değiştirebilirsiniz. İşte bir örnek.Önemli
Bu adım sırasında SQL Server'ı yeniden başlatmanız istenirse, bunu yoksayabilirsiniz. Active Directory 'da da parolayı değiştirmeyi unutmayın.
bash-4.4$ kinit privilegedaccount@CONTOSO.COM Password for privilegedaccount@CONTOSO.COM: bash-4.4$ ./mssql-conf setup-ad-keytab /var/opt/mssql/secrets/mssql.keytab sqluser --use-next-kvno sqluser@contoso.com's password: Confirm sqluser@contoso.com's password: SQL Server needs to be restarted in order to adopt the new AD configuration. To restart, run `systemctl restart mssql-server.service`. bash-4.4$ klist -kte /var/opt/mssql/secrets/mssql.keytab Keytab name: FILE:/var/opt/mssql/secrets/mssql.keytab KVNO Timestamp Principal ---- ------------------- ------------------------------------------------------ 4 12/30/2021 14:02:08 sqluser@CONTOSO.COM (aes256-cts-hmac-sha1-96) 4 12/30/2021 14:02:08 MSSQLSvc/sql1.contoso.com:1433@CONTOSO.COM (aes256-cts-hmac-sha1-96) 4 12/30/2021 14:02:08 MSSQLSvc/sql1.contoso.com@CONTOSO.COM (aes256-cts-hmac-sha1-96) 4 12/30/2021 14:02:08 MSSQLSvc/sql1:1433@CONTOSO.COM (aes256-cts-hmac-sha1-96) 4 12/30/2021 14:02:08 MSSQLSvc/sql1@CONTOSO.COM (aes256-cts-hmac-sha1-96) 5 12/30/2021 20:06:34 sqluser@CONTOSO.COM (aes256-cts-hmac-sha1-96) 5 12/30/2021 20:06:34 MSSQLSvc/sql1.contoso.com:1433@CONTOSO.COM (aes256-cts-hmac-sha1-96) 5 12/30/2021 20:06:34 MSSQLSvc/sql1.contoso.com@CONTOSO.COM (aes256-cts-hmac-sha1-96) 5 12/30/2021 20:06:34 MSSQLSvc/sql1:1433@CONTOSO.COM (aes256-cts-hmac-sha1-96) 5 12/30/2021 20:06:34 MSSQLSvc/sql1@CONTOSO.COM (aes256-cts-hmac-sha1-96)
Adutil ile keytab'ı el ile döndürün
kullanarak tuş sekmesini el ile adutilgüncelleştirmek istiyorsanız aşağıdaki adımlara bakın.
kullanarak adutil tuş sekmesini güncelleştirmek, geçerli tuş sekmesine bir girdi ekler. Örneğin, önceki komuttan kvno numarası 2ise, tuş sekmesini güncelleştirirken 3 numarasını kullanın. Çalıştırmanız gereken komutlar aşağıdadır adutil .
- Ortamınızla eşleşecek şekilde bağlantı noktası numarasını (
-p), ana bilgisayar adını (-H), keytab dosyasının yolu (-k) ve kvno numarasını değiştirin.
adutil keytab createauto -k /var/opt/mssql/secrets/mssql.keytab -p 1433 -H mssql.contoso.com --password '<newpassword>' -s MSSQLSvc --kvno 3
adutil keytab create -k /var/opt/mssql/secrets/mssql.keytab -p sqluser --password '<newpassword>' --kvno 3
| Parametre | Description |
|---|---|
-k |
SQL Server tarafından kullanılan ve dosyadaki network.kerberoskeytabfile seçeneği kullanılarak ayarlanan geçerli anahtar sekmesine giden yol. |
-H |
SQL Server ana bilgisayarının tam nitelikli etki alanı adı. |
-p |
SQL Server hizmetinin ilk komutta dinleyecek şekilde yapılandırıldığı bağlantı noktası. İkinci komutta -p, parolasını güncelleştireceğiniz network.privilegedadaccount temsil eder. |
kvno |
Değerin geçerli kvno + 1 olması gerekir. Geçerli kvno değeri 3. adımdan alınır. |
Yukarıdaki komutları çalıştırdıktan sonra, anahtar sekmesi girdileri için şifreleme türü seçiminizi sağlamanız gerekir. Ortamınız için doğru olanı seçtiğinizden emin olun.
Anahtar sekmesi girişlerini denetleyin
Anahtar sekmesini güncelleştirdikten sonra artık aynı hesap kvno 3 ve SPN'ler için kvno 2 (yeni) ve sqluser@CONTOSO.COM (eski) girişlerini görmelisiniz. Anahtar sekmesindeki girdileri denetlemek için aşağıdaki klist komutunu çalıştırabilirsiniz:
klist -kte /var/opt/mssql/secrets/mssql.keytab
Active Directory'de hesap parolasını değiştirme
Son adım, network.privilegedadaccount veya Windows Active Directory'de SQL Server SPN'lerinin sahibi olan hesabın parolasını güncelleştirmektir. Önceki senaryoda, Active Directory'deki sqluser@CONTOSO.COM parolasını güncelleştirmemiz gerekir. Önceki bölümdeki 3. adımda sağladığınız <newpassword> olarak parolayı değiştirin. Active Directory kimlik doğrulaması çalışmaya devam etmelidir ve SQL Server hizmetinin yeniden başlatılmasına gerek yoktur.
İlgili içerik
- Öğreticisi: Linux'ta SQL Server ile Active Directory kimlik doğrulamasını yapılandırmak için adutil kullanma
- Öğreticisi: Linux kapsayıcılarında SQL Server ile Active Directory kimlik doğrulamayı yapılandırma
- Linux ve kapsayıcılarda SQL Server için Active Directory kimlik doğrulamasını anlama
- Linux ve kapsayıcılarda SQL Server için Active Directory kimlik doğrulaması sorunlarını giderme