2016-12-30 21 views
5

Docker konteyner tabanlı uygulamalar oluşturmak için çevrimiçi bulabildiğim tüm örneklerden geçtim. İki liman işçisi kaplarda çalışan iki hizmetlerini çalıştırmak isterim: SQL sunucu docker kabı ile windows kimlik doğrulaması nasıl kullanılır?

  • bir pencere konteyner çalışan SQL Server
  • Kolay bir iş ve birçok örnek ASP.NET çalışan

    1. bir pencere kabı. Ancak, tüm örneklerde SQL kimlik doğrulamasını kullanmanız ve SQL sunucu kapsayıcısını çalıştırırken ortam değişkeni olarak kodlanmış bir SA parolası sağlamanız gerekir. Ayrıca

      şifre sert tüm örneklerde

      Alt çizgi olduğunu (bir yapılandırma dosyasında bazı diğer şekilde bunu sağlamak da vb ya) ASP.Net kodunda bağlantı dizesine sert koduna SA şifresine ihtiyaç bir yere kodlanmış.

      Şimdi geliştirdiğimiz çoğu uygulamada, bunun yerine aslında windows kimlik doğrulamasını kullanıyoruz veya bunun yerine gruplanmış yönetilen bir hizmet hesabı kullanıyoruz. Ancak bildiğim kadarıyla, bir etki alanına bir pencere kapsayıcısı ekleyemezsiniz, bu nedenle SQL sunucusu Windows etki alanının bir parçası değildir, bu nedenle burada windows kimlik doğrulamasını kullanmanın bir yolunu göremiyorum.

      Bu şekilde şifrelenmiş şifrelere alternatif olan var mı?

    cevap

    1

    Tam olarak aynı sorunla uğraşıyorum. Here, bulduğum en eksiksiz yordamdır. Bu hile gMSA kullanmaktır. JanneRantala sonunda söylediği gibi, ben Veritabanında yeni bir kullanıcı eklemeye çalışırken aynı sorunu yaşıyorum

    Ama:

    Msg 15401, Düzey 16, State 1, satır 3 , Windows NT kullanıcısı veya grubu 'YOUR_DOMAIN \ gmsa $' bulunamadı. İsmi tekrar kontrol et.

    +1

    Teşekkürler. Ayrıca gMSA'yı okudum, ancak kimlik doğrulamanın nasıl çalıştığını tam olarak anlayamıyorum. Benzer bir sorun, IIS sunucusu ile Windows kimlik doğrulaması ile olacaktır. Umarım bu büyük teknoloji pencere ortamında geliştikçe daha fazla ilgili dokümantasyon gelişecektir. – IProgrammer

    0

    İşte bu, nasıl çalışacağını gösterir. Windows Containers Walkthrough

    SQL sunucunuz, aynı zamanda GMSA hesaplarını kullanabilmek için SQL Server'ın Active Directory'nin bir parçası olması gerektiğinden, SQL'de de çalışıyorsa bu işe yaramaz.

    +2

    Teşekkürler. Bunu daha önce hazırladım. Ama bu tam olarak çözmeye çalıştığım konu. Tüm uygulamanın kapsayıcılarda çalışmasını istiyorum - hem sql hem de IIS. – IProgrammer

    +0

    Bunlar farklı kaplarda çalışıyorsa, asla mümkün olmayacaktır. Tek bir konteynırda koşuyorlarsa, muhtemelen etrafta bir yol vardır. Ayrıca, birincil endişeniz varsa herhangi bir veriyi kapsayıcı olarak kodlamanıza gerek yoktur; kapsayıcı –

    +0

    Teşekkürler GSA'yı başlattığınızda, ortam değişkenleri aracılığıyla sırlar iletebilirsiniz.Yorumunuzu okuduktan sonra biraz daha okumuştum ve bu durumun ileriye dönük olarak iyi bir yol olabileceği düşünülüyor: https://www.ctl.io/developers/blog/post/tutorial-protecting-sensitive-info-docker – IProgrammer

    1

    Windows kimlik doğrulaması, Windocks SQL Server kapsayıcılarında otomatik olarak etkinleştirilir. Daha fazla ayrıntı için bkz. here. Windocks'da oluşturulan SQL Server kapsayıcıları, Windows Server'da (2012 R2 veya 2016) yüklü olan varsayılan SQL Servisten otomatik olarak oluşturulan örnekler olarak adlandırılan SQL Server'dır. Varsayılan örnekte bulunan tüm Windows hesapları kapsayıcı örneklerinde otomatik olarak etkinleştirilir.

    İlgili konular