Aracılığıyla paylaş


Çok kiracılı çözümlerde alan adıyla ilgili dikkat edilmesi gerekenler

Birçok çok kiracılı web uygulamasında, aşağıdaki özellikleri sağlamak için bir etki alanı adı kullanabilirsiniz:

  • Bir kiracıyı başka bir kiracıdan ayırt etmek için

  • İstekleri doğru altyapıya yönlendirme konusunda yardımcı olmak için

  • Müşterilerinize markalı bir deneyim sunmak için

Alt alan adları veya özel etki alanı adını kullanabilirsiniz. Bu makale, teknik karar alıcılara etki alanı adı yaklaşımları ve bunların dezavantajları hakkında rehberlik sağlar.

Alt alan adları

gibi tenant.provider.combir biçim kullanarak her kiracıya ortak bir paylaşılan etki alanı adı altında benzersiz bir alt etki alanı atayabilirsiniz.

Contoso tarafından oluşturulan çok kiracılı bir çözüm örneği düşünün. Müşteriler, fatura oluşturma işlemlerini yönetmeye yardımcı olmak için Contoso'nun ürününü satın alır. Contoso, contoso.com alan adı altında tüm kiracılara kendi alt etki alanlarını atar. Eğer Contoso bölgesel dağıtımlar kullanıyorsa, us.contoso.com ve eu.contoso.com etki alanları altında alt etki alanları atayabilirler.

Bu makale, bu bölgesel etki alanlarını kök etki alanları olarak ifade eder. Her müşteri, kök etki alanınız altında kendi alt etki alanına sahip olur. Örneğin Tailwind Toys tailwind.contoso.com alabilir. Bölgesel dağıtım modeli kullanıyorsanız, Adventure Works adventureworks.us.contoso.com alabilir.

Uyarı

Birçok Azure hizmeti bu yaklaşımı kullanır. Örneğin, bir Azure depolama hesabı oluşturduğunuzda, Azure <your account name>.blob.core.windows.net gibi bir alt etki alanı kümesi atar.

Etki alanı ad alanınızı yönetme

Kendi etki alanı adınızın altında alt etki alanları oluşturduğunuzda, benzer adlara sahip birden çok müşteriniz olabilir. Tek bir kök etki alanını paylaşırlar, bu nedenle belirli bir etki alanını talep eden ilk müşteri tercih ettiği adı alır. Tam etki alanı adlarının genel olarak benzersiz kalması gerektiğinden, sonraki müşterilerin alternatif alt etki alanı adları kullanması gerekir.

Joker DNS

Subdomain yönetimini basitleştirmek için joker DNS (Alan Adı Sistemi) girdilerini kullanın. tailwind.contoso.com veya adventureworks.contoso.com için DNS girdileri oluşturmak yerine *.contoso.com için bir joker karakter girdisi oluşturabilirsiniz. A kaydı kullanarak tüm alt etki alanlarını tek bir IP adresine veya CNAME kaydı kullanarak kanonik bir ada yönlendirin. Bölgesel kök etki alanları kullanıyorsanız ve *.us.contoso.comgibi *.eu.contoso.com birden çok joker karakter girdisi gerekebilir.

Uyarı

Bu özelliği kullanmayı planlıyorsanız web katmanı hizmetlerinizin genel ad DNS'yi desteklediğinden emin olun. Azure Front Door ve Azure App Service dahil olmak üzere birçok Azure hizmeti joker karakter DNS girişlerini destekler.

Çok parçalı kök etki alanlarını temel alan alt etki alanları

Birçok çok kiracılı çözüm, birden fazla fiziksel dağıtımı kapsar. Bu yaklaşım, veri yerleşimi gereksinimlerine uymanız veya kaynakları coğrafi olarak kullanıcılara daha yakın bir şekilde dağıtarak performansı artırmanız gerektiğinde yaygındır.

Tek bir bölgede bile ölçeklendirme stratejinizi desteklemek için kiracılarınızı bağımsız dağıtımlara yayabilirsiniz. Her kiracı için alt etki alanları kullanmayı planlıyorsanız, çok parçalı alt etki alanı yapısını göz önünde bulundurun.

Örneğin Contoso, dört müşterisi için çok kiracılı bir uygulama yayımlar. Adventure Works ve Tailwind Traders Abd'dedir ve verileri Contoso platformunun paylaşılan bir ABD örneğinde depolanır. Fabrikam ve Dünya Çapındaki İthalatçılar Avrupa'dadır ve verileri bir Avrupa örneğinde depolanır.

Aşağıdaki diyagramda, tüm müşterileri için tek-kök etki alanı contoso.com kullanan Contoso örneği gösterilmektedir.

Her müşterinin alt etki alanı için tek bir kök etki alanına sahip bir web uygulamasının ABD ve Avrupa dağıtımlarını gösteren diyagram.

Contoso, bu yapılandırmayı desteklemek için aşağıdaki DNS girişlerini kullanabilir.

Alt alan adı CNAME için
adventureworks.contoso.com us.contoso.com
tailwind.contoso.com us.contoso.com
fabrikam.contoso.com eu.contoso.com
worldwideimporters.contoso.com eu.contoso.com

Eklenen her yeni müşteri için yeni bir alt etki alanı gerekir. Her müşteride alt etki alanı sayısı artar.

Alternatif olarak Contoso dağıtıma özgü veya bölgeye özgü kök etki alanlarını kullanabilir.

Birden çok kök etki alanı içeren bir web uygulamasının ABD ve AB dağıtımlarını gösteren diyagram.

Joker DNS kullanıldığında, bu dağıtımın DNS girişleri aşağıdaki girişler gibi görünebilir.

Alt alan adı CNAME için
*.us.contoso.com us.contoso.com
*.eu.contoso.com eu.contoso.com

Contoso'nun her müşteri için alt etki alanı kayıtları oluşturması gerekmez. Bunun yerine, her coğrafyanın dağıtımı için tek bir joker karakter DNS kaydı, bu kökün altındaki yeni müşterilerin CNAME kaydını otomatik olarak devralmasını sağlar.

Her yaklaşımın avantajları ve dezavantajları vardır. Tek gövdeli bir etki alanı kullandığınızda, eklediğiniz her kiracı için işlem yükünü artıran bir DNS kaydı oluşturmanız gerekir. Ancak, dağıtımlar arasında kiracıları taşıma esnekliğiniz daha fazladır. CNAME kaydını, trafiğini başka bir dağıtıma yönlendirecek şekilde değiştirebilirsiniz. Bu değişiklik diğer kiracıları etkilemez.

Çok köklü etki alanlarının yönetim yükü daha düşüktür. Her kök etki alanı kendi ad alanını etkili bir şekilde temsil ettiğinden, müşteri adlarını birden çok bölgesel kök etki alanında yeniden kullanabilirsiniz.

Özel alan adları

Müşterilerinizin kendi etki alanı adlarını getirmesini sağlamak isteyebilirsiniz. Bazı müşteriler bu özelliği markalarının önemli bir yönü olarak görüyor. Müşteriler, özellikle kendi Aktarım Katmanı Güvenliği (TLS) sertifikalarını sağlamaları gerektiğinde güvenlik gereksinimlerini karşılamak için özel etki alanı adları da gerektirebilir. Bu yaklaşım basit görünebilir, ancak bazı gizli karmaşıklıklar dikkate alınması gerekir.

Ad çözümleme

Sonuç olarak, her etki alanı adının bir IP adresine dönüştürülmesi gerekir. Daha önce gösterildiği gibi ad çözümleme işlemi, çözümünüzün tek bir örneğini mi yoksa birden çok örneğini mi dağıttığınıza bağlıdır.

Contoso'nun müşterilerinden biri olan Fabrikam, Contoso'nun hizmetine erişmek için kendi özel etki alanı adı olarak invoices.fabrikam.com kullanmak istemektedir. Contoso'nun çok kiracılı platformunun birden çok dağıtımı olduğundan, yönlendirme gereksinimlerini karşılamak için alt etki alanları ve CNAME kayıtlarını kullanmaya karar verir. Contoso ve Fabrikam aşağıdaki DNS kayıtlarını yapılandırır.

İsim Kayıt türü Değer Tarafından yapılandırıldı
invoices.fabrikam.com CNAME fabrikam.eu.contoso.com Fabrikam
*.eu.contoso.com CNAME eu.contoso.com Contoso
eu.contoso.com A (Contoso'nun IP adresi) Contoso

Ad çözümleme açısından bakıldığında, bu kayıt zinciri Contoso'nun Avrupa dağıtımının IP adresine yönelik istekleri invoices.fabrikam.com doğru bir şekilde çözümler.

Ana bilgisayar üst bilgi çözümlemesi

Ad çözümlemesi sorunun yalnızca bir parçasıdır. Contoso'nun Avrupa dağıtımındaki tüm web bileşenleri, istek üst bilgisinde Host Fabrikam'ın etki alanı adını içeren isteklerin nasıl işleneceğini bilmelidir. Contoso'nun kullandığı belirli web teknolojilerine bağlı olarak, her kiracının alan adının daha fazla yapılandırılması gerekebilir ve bu da kiracı eklemeye ek operasyonel yük ekler.

Ayrıca, gelen isteğin Host başlığına bakılmaksızın, web sunucunuzun tutarlı bir başlık değeri görmesi için host header'ları yeniden yazabilirsiniz. Örneğin Azure Front Door, istek ne olursa olsun uygulama sunucunuzun bir tek Host üst bilgi alması için Host üst bilgileri yeniden yazmanızı sağlar. Azure Front Door, uygulamanızın bu bilgiye bakarak kiracıyı bulması için özgün ana bilgisayar üst bilgisini X-Forwarded-Host üst bilgisine aktarır. Ancak, bir Host üst bilginin yeniden yazılması başka sorunlara neden olabilir. Daha fazla bilgi için Sunucu adı koruma bölümüne bkz.

Etki alanı doğrulaması

Sisteme dahil etmeden önce özel alan adlarının sahipliğini doğrulamanız gerekir. Aksi takdirde, bir müşteri yanlışlıkla veya kötü amaçlı olarak bir etki alanı adı talep edebilir ve bu da bazen etki alanı adının park edilmesi olarak adlandırılır.

Adventure Works'un invoices.adventureworks.com'yi özel etki alanı adı olarak kullanma talebini göz önüne alarak, Contoso'nun katılım sürecini değerlendirin. Ne yazık ki, birisi özel etki alanı adını eklemeye çalıştığında yazım hatası yaptı ve S'leri kaçırdı. Bu yüzden bunu invoices.adventurework.com olarak ayarladılar. Sonuç olarak, Adventure Works için trafik istenilen şekilde ilerlemiyor. Ancak Adventure Work adlı başka bir şirket kendi özel etki alanını Contoso'nun platformuna eklemeye çalıştığında, etki alanı adının zaten kullanımda olduğu söylenir.

Özellikle self servis veya otomatik bir işlemde bu sorunu önlemek için bir etki alanı doğrulama adımı gerektirebilirsiniz. Etki alanının eklenebilmesi için müşterinin bir CNAME kaydı oluşturmasını isteyebilirsiniz. Alternatif olarak, rastgele bir dize oluşturabilir ve müşteriden dize değerini içeren bir DNS TXT kaydı eklemesini isteyebilirsiniz. Doğrulama başarılı olana kadar etki alanı adı eklenemez.

Sallanma DNS ve alt etki alanı devralma saldırıları

Özel etki alanı adlarıyla çalışırken, platformunuzu sallama DNS veya alt etki alanı devralma adı verilen bir saldırı sınıfına maruz bırakırsınız. Bu saldırılar, müşteriler özel etki alanı adlarını hizmetinizden ayırdığında, ancak dns sunucularından kaydı silmediklerinde gerçekleşir. Bu DNS girdisi, var olmayan bir kaynağa işaret eder ve ele geçirilmeye karşı savunmasızdır.

Aşağıdaki senaryo gerçekleşirse Fabrikam'ın Contoso ile ilişkisinin nasıl değişebileceğini düşünün:

  1. Fabrikam artık Contoso ile çalışmamaya karar vediğinden iş ilişkilerini sonlandırıyor.

  2. Contoso, Fabrikam kiracısını sistemden çıkarır ve fabrikam.contoso.com'i devre dışı bırakır.

  3. Fabrikam, invoices.fabrikam.com CNAME kaydını silmeyi unutuyor.

  4. Kötü amaçlı bir aktör yeni bir Contoso hesabı oluşturur ve adını fabrikamverir.

  5. Saldırgan, özel etki alanı adını invoices.fabrikam.com yeni kiracısına ekler.

  6. Contoso, CNAME tabanlı etki alanı doğrulaması sırasında Fabrikam'ın DNS sunucusunu denetler. DNS sunucusunun için invoices.fabrikam.comöğesine işaret fabrikam.contoso.comeden bir CNAME kaydı döndürdüğünü görürler. Contoso, özel etki alanı doğrulama işleminin başarılı olduğunu düşünüyor.

  7. Fabrikam çalışanları siteye erişmeye çalışırsa istekler çalışıyor gibi görünür. Saldırgan Contoso kiracısını Fabrikam'ın markasıyla ayarlarsa, çalışanlar siteye erişme ve hassas veriler sağlama konusunda kandırılabilir ve saldırgan bu verilere erişebilir.

Sallanan DNS saldırılarına karşı korunmak için aşağıdaki stratejileri kullanın:

  • Etki alanı adının kiracının hesabından kaldırılabilmesi için CNAME kaydının önce silinmesi gerekmektedir.

  • Kiracı tanımlayıcılarının yeniden kullanılmasını yasaklar. Ayrıca her kiracının etki alanı adıyla eşleşen bir ada ve her ekleme girişimi için değişen rastgele oluşturulmuş bir değere sahip bir TXT kaydı oluşturmasını zorunlu kılar.

TLS sertifikaları

TLS, modern uygulamaların temel bileşenlerinden biridir. Web uygulamalarınıza güven ve güvenlik sağlar. Çok kiracılı uygulamalar için TLS sertifikalarının sahipliğini ve yönetimini dikkatle göz önünde bulundurun.

Genellikle, bir alan adının sahibi sertifikalarını düzenler ve yeniler. Örneğin Contoso, us.contoso.com için TLS sertifikalarını ve *.contoso.com için joker sertifikayı oluşturur ve yeniler. Benzer şekilde, Fabrikam fabrikam.com ve invoices.fabrikam.com etki alanı kayıtlarını yönetir.

Etki alanı sahibi Sertifika Yetkilisi Yetkilendirmesi (CAA) DNS kayıt türünü kullanabilir. CAA kayıtları, etki alanı için yalnızca belirli yetkililerin sertifikalar oluşturabilmesini sağlar.

Müşterilerin kendi etki alanlarını getirmesine izin verirseniz, kendi adına sertifika vermeyi mi yoksa kendi etki alanlarını getirmelerini mi istediğinizi göz önünde bulundurun. Her seçeneğin avantajları ve dezavantajları vardır:

  • Bir müşteri için sertifika verirseniz, sertifika yenileme işlemini işleyebilirsiniz, böylece müşterinin bu sertifikayı tutması gerekmez. Ancak, müşterilerin etki alanı adlarında CAA kayıtları varsa, onlar adına sertifika vermenizi yetkilendirmeleri gerekebilir.

  • Müşteriler sertifika verir ve size kendi sertifikalarını sağlarsa, özel anahtarları güvenli bir şekilde alır ve yönetirsiniz. Hizmetlerinde kesinti yaşanmasını önlemek için, süresi dolmadan önce müşterilerinize sertifikayı yenilemelerini anımsatmalısınız.

Çeşitli Azure hizmetleri, özel etki alanları için sertifikaların otomatik yönetimini destekler. Örneğin, Azure Front Door ve App Service özel etki alanları için sertifikalar sağlar ve yenileme işlemini otomatik olarak işler. Bu özellik, sertifikaları operasyon ekibinizden yönetme yükünü ortadan kaldırır. Ancak yine de sahipliği ve yetkiyi göz önünde bulundurmanız gerekir. CAA kayıtlarının yerinde olduğunu ve doğru yapılandırıldığını onaylayın. Müşterilerinizin etki alanlarının, platformun yönettiği sertifikalara izin verdiğinden emin olun.

Katkıda Bulunanlar

Microsoft bu makaleyi korur. Bu makaleyi aşağıdaki katkıda bulunanlar yazdı.

Asıl yazar:

Diğer katkıda bulunanlar:

  • Daniel Scott-Raynsford | İş Ortağı Teknoloji Stratejisti
  • Arsen Vladimirskiy | Azure için FastTrack’te Baş Müşteri Mühendisi

Nonpublic LinkedIn profillerini görmek için LinkedIn'de oturum açın.

Sonraki Adımlar

Birçok hizmet, etki alanı adlarını yönetmek için Azure Front Door kullanır. Daha fazla bilgi için bkz . Çok kiracılı bir çözümde Azure Front Door kullanma.

Mimariyle ilgili önemli noktalara genel bakışa dönün. Veya Azure Well-Architected Framework'lerini gözden geçirin.