Çok kullanıcılı bir çözümde etki alanı adlarını kullanırken dikkat edilmesi gerekenler
Birçok çok kiracılı web uygulamalarında, etki alanı adı bir kiracıyı tanımlamanın, yönlendirme isteklerine yardımcı olmak ve müşterilerinize markalı bir deneyim sağlamak için bir yol olarak kullanılabilir. İki yaygın yaklaşım, alt etki alanları ve özel etki alanı adları kullanmaktır. Bu sayfada, göz önünde bulundurabilirsiniz yaklaşımlar ve bunların karşıtlıkları hakkında teknik karar verenler için rehberlik sağlaruz.
Alt
Her kiracı ortak bir paylaşılan etki alanı adı altında benzersiz bir alt etki alanı elde ediyor olabilir. Contoso tarafından yapılan örnek bir çok kullanıcılı çözümü düşünalım. Müşteriler fatura oluşturmalarını yönetmeye yardımcı olmak için Contoso'nun ürününü satın alır. Contoso'nun tüm kiracılarına etki alanı adı altında kendi alt etki alanları contoso.com atanabilir. Veya bölgesel dağıtımlar kullanıyorsanız ve etki alanları altında alt etki alanları us.contoso.comeu.contoso.com atabilirsiniz. Bu makalede, bunlar kök etki alanları olarak ifade edilir. Her müşteri, kök etki alanınız altında kendi alt etki alanına sahip olur. Örneğin, Tailwind Toys'a atanabilir tailwind.contoso.com ve Adventure Works'e adventureworks.contoso.com atanabilir.
Not
Birçok Azure hizmeti bu yaklaşımı kullanır. Örneğin, bir Azure depolama hesabı sanız, bu hesaba kullanabileceğiniz bir alt etki alanları kümesi atanır, <your account name>.blob.core.windows.net örneğin.
Etki alanı ad alanınızı yönetme
Kendi etki alanı adınız altında alt etki alanları oluşturdukken, benzer adlara sahip birden çok müşteriniz olabilir. Tek bir kök etki alanını paylaştığından, belirli bir etki alanını alan ilk müşteri tercih ettiği adı elde eder ve sonraki müşterilerin alternatif alt etki alanı adlarını kullanmaları gerekir çünkü tam etki alanı adlarının genel olarak benzersiz olması gerekir.
Joker karakter DNS
Alt etki alanları yönetimini basitleştirmek için joker DNS girişlerini kullanmayı göz önünde bulundurarak. , vb. için DNS girişleri oluşturmak yerine, için bir joker giriş oluşturabilir ve tüm alt etki alanları tek BIR IP adresine (A kaydı) veya kurallı ad tailwind.contoso.comadventureworks.contoso.com*.contoso.com (CNAME kaydı) yönlendirebilirsiniz.
Not
Bu özelliği kullanmak için web katmanı hizmetlerinizin joker karakter DNS'yi desteklemesini sağlar. Azure Front Door ve Azure App Service azure hizmetleri joker karakter DNS girişlerini destekler.
Çok parçalı kök etki alanları olan alt etki alanları
Birçok çok kullanıcılı çözüm birden çok fiziksel dağıtıma yayılır. Bu durum genellikle veri konumu gereksinimlerine uymanız veya kaynakları kullanıcılara coğrafi olarak daha yakın bir yerde dağıtarak daha iyi performans sağlamak istediğiniz durumlarla ilgilidir. Tek bir bölge içinde bile, ölçeklendirme stratejinizin bir parçası olarak kiracılarınızı bağımsız dağıtımlara dağıtmanız da gerekir. Her kiracı için alt etki alanları kullanmayı planlıyorsanız, çok parçalı bir alt etki alanı yapısını göz önünde bulundursanız.
İşte bir örnek: Contoso dört müşterisi için çok müşterili bir uygulama yayımlar. Adventure Works ve Tailwind Traders, Birleşik Devletler ve verileri Contoso platformunun paylaşılan bir ABD örneğinde depolanır. Fabrikam ve Worldwide Importers Avrupa'dadır ve verileri Bir Avrupa örneğinde depolanır.
Contoso tüm müşterileri için tek bir kök etki alanı (contoso.com)kullanmayı seçtiyse, şöyle olabilir:

DNS girişleri (bu yapılandırmayı desteklemek için gereklidir) şöyle olabilir:
| Alt etki alanı | 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 |
Her yeni müşteri için yeni bir alt etki alanı gerekir ve alt etki alanı sayısı her müşteriyle birlikte artar.
Alternatif olarak Contoso aşağıdaki gibi dağıtım veya bölgeye özgü kök etki alanları kullanabilir:

Bu dağıtım için DNS girişleri aşağıdaki gibi olabilir:
| Alt etki alanı | CNAME için |
|---|---|
*.us.contoso.com |
us.contoso.com |
*.eu.contoso.com |
eu.contoso.com |
Contoso'da her müşteri için alt etki alanı kayıtları oluşturması gerekmektedir. Bunun yerine, her coğrafyanın dağıtımı için tek bir joker DNS kaydı vardır ve bu gövdenin altına eklenen tüm yeni müşteriler CNAME kaydını otomatik olarak devralır.
Her yaklaşımın avantajları ve dezavantajları vardır. Tek bir kök etki alanı kullanırken, her bir kiracının yeni bir DNS kaydının oluşturularak daha fazla işletim yüküne neden olması gerekir. Ancak, kiracıları dağıtımlar arasında taşımanız gerekirse daha fazla esnekliğe sahip olursanız CNAME kaydını, trafiğini başka bir dağıtıma yönlendirecek şekilde değiştirebilirsiniz. Bu durum diğer kiracıları etkilemez. Birden çok kök etki alanı kullanırken yönetim yükü daha düşüktür ve müşteri adlarını birden çok bölgesel kök etki alanı arasında yeniden kullanabilirsiniz çünkü her biri kendi ad alanını etkili bir şekilde temsil eder.
Özel etki alanı adları
Müşterilerimizin kendi etki alanı adlarını getirmesini sağlamak istiyor olabilir. Bazı müşteriler bunu markalamalarının önemli bir yönü olarak görüyor. Özellikle kendi TLS sertifikalarını sağlamak zorunda olan müşterilerin güvenlik gereksinimlerini karşılamak için de gerekli olabilir. Müşterilerin kendi etki alanı adlarını getirmesini sağlamak basit görünse de, bu yaklaşımda bazı gizli karmaşıklıklar vardır ve bu, dikkate alınması gereken noktalardır.
Ad çözümlemesi
Sonuç olarak, her etki alanı adının bir IP adresine çözümlenmiş olması gerekir. Sizin de göreceğiniz gibi, bu yaklaşımın tek bir örneği mi yoksa çözüm mü birden çok örneğini dağıtmanıza bağlı olabilir.
Örneğimize geri döneceğiz. Contoso'nun müşterilerinden biri olan Fabrikam, Contoso'nun hizmetine erişmek için özel etki alanı adı invoices.fabrikam.com olarak kullanmak istedi. Contoso kendi platformlarının birden çok dağıtımına sahip olduğu için, yönlendirme gereksinimlerini karşılamak için alt etki alanları ve CNAME kayıtlarını kullanmaya karar veriyor. Contoso ve Fabrikam aşağıdaki DNS kayıtlarını yapılandırıyor:
| Name | Kayıt türü | Değer | Yapılandıran |
|---|---|---|---|
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 perspektifinden bakıldığında, bu kayıt zinciri için istekleri Contoso'nun Avrupa dağıtımının invoices.fabrikam.com IP adresine doğru şekilde çözümler.
Konak üst bilgisi çözümlemesi
Ad çözümlemesi, sorunun yalnızca yarısıdır. Tüm web bileşenlerinin (Contoso'nun Avrupa dağıtımında) istek üst bilgisinde Fabrikam'ın etki alanı adıyla gelen isteklerin nasıl işleyyebli Host olduğunu biliyor olması gerekir. Contoso'nun kullandığı belirli web teknolojilerine bağlı olarak, bu durum her kiracının etki alanı adı için daha fazla yapılandırma gerektirir ve bu da kiracı eklemeye ek işletim yükü getirir.
Ayrıca, gelen isteğin üst bilgisinden bağımsız olarak web sunucunuz tutarlı bir üst bilgi değeri görmesi için ana bilgisayar üst bilgilerini Host yeniden yazmayı da göz önünde bulundurabilirsiniz. Örneğin, Azure Front Door yeniden yazmanızı sağlar, böylece istekten bağımsız olarak uygulama sunucunuz tek bir Host üst bilgi Host alır. Azure Front Door, kiracıyı çözümlemek için uygulamanın incelenemesi için üst bilgide özgün ana X-Forwarded-Host bilgisayar üst bilgisini yayır.
Etki alanı doğrulaması
Eklemeden önce özel etki alanlarının sahipliğini doğrulamak önemlidir. Aksi takdirde, bir müşterinin yanlışlıkla veya kötü amaçlı bir şekilde etki alanı adını riske atabilirsiniz.
Contoso'nun özel etki alanı adı olarak kullanmak isteyen Adventure Works için invoices.adventureworks.com ekleme işlemini düşünalım. Ne yazık ki, birisi özel etki alanı adını eklemeye çalıştıkları zaman yazım hatası yapmış ve 'leri atlar. Bu nedenle, olarak invoices.adventurework.com ayarlanır. Trafiğin doğru şekilde akmasa da, Adventure Work adlı başka bir şirket özel etki alanını Contoso'nun platformuna eklemeye çalıştığında, etki alanı adının zaten kullanımda olduğu söylenmektedir.
Özel etki alanlarıyla çalışırken, özellikle de bir self servis veya otomatik işlem içinde etki alanı doğrulama adımının gerekli olması yaygın bir durumtur. Bu, etki alanı eklenmeden önce CNAME kayıtlarının ayar gerektirir. Alternatif olarak, Contoso rastgele bir dize oluşturabilir ve Adventure Works'den dize değeriyle bir DNS TXT kaydı eklemesini sorabilir. Bu, doğrulama tamamlanana kadar etki alanı adının eklenmesini önler.
Dalgalı DNS ve alt etki alanı alma saldırıları
Özel etki alanı adlarına sahipken, sallama DNS veya alt etki alanı devretme adlı bir saldırı sınıfına karşı savunmasız oluruz. Bu saldırı, müşteriler özel etki alanı adlarını hizmetinize bağsıyor ancak dns sunucularından kaydı silemez. Bu DNS girişi daha sonra mevcut olmayan bir kaynağı gösterir ve bir devretmeye karşı savunmasızdır.
Fabrikam'ın Contoso ile ilişkisinin nasıl değişeceğini düşünalım:
- Fabrikam artık contoso ile çalışmamaya karar verdi ve iş ilişkilerini sonlandırmıştır.
- Contoso, Fabrikam kiracısı offboarded sahiptir ve için,
fabrikam.contoso.comartık çalışmamaları istenir. Ancak Fabrikam, için CNAME kaydını silmeyi unuttuinvoices.fabrikam.com. - Kötü amaçlı aktör yeni bir contoso hesabı oluşturur ve bu hesaba ad verir
fabrikam. - Saldırgan, özel etki alanı adını yeni kiracının bulunduğu panolarla aynı
invoices.fabrikam.comşekilde harekete yenilerini. Contoso CNAME tabanlı etki alanı doğrulaması gerçekleştirdiğinden, Fabrikam 'ın DNS sunucusunu denetler. DNS sunucusunun öğesine işaret eden bir CNAME kaydı döndürdüğünü görürlerinvoices.fabrikam.comfabrikam.contoso.com. Contoso, özel etki alanı doğrulamanın başarılı olduğunu varsayar. - Herhangi bir fabrikam çalışanı siteye erişmeyi denediğinde, istekler çalışır şekilde görünür. Saldırgan, contoso kiracılarını fabrikam 'ın markasıyla ayarlarsa, çalışanlar siteye erişme ve duyarlı veriler sağlama gibi bir saldırgan daha sonra erişebileceği şekilde değişebilir.
Etki alanı adının kiracının hesabından kaldırılabilmesi için, üyenin DNS saldırılarına karşı korumaya yönelik yaygın bir strateji, CNAME kaydının silinmesini gerektirir. Ayrıca, kiracı tanımlayıcılarının yeniden kullanılmasını da düşünebilirsiniz ve daha sonra rastgele oluşturulmuş bir TXT kaydı (her ekleme denemesinde farklı olan) kullanarak özel etki alanı ekleme işleminizi güçlendirebilirsiniz.
TLS/SSL sertifikaları
Aktarım Katmanı Güvenliği (TLS), modern uygulamalarla çalışırken önemli bir bileşendir. Web uygulamalarınız için güven ve güvenlik sağlar. TLS sertifikalarının sahipliği ve yönetimi, çok kiracılı uygulamalar için dikkatli bir dikkat gerektiren bir şeydir.
Genellikle, bir etki alanı adının sahibi sertifikalarını vermekten ve yenilemekten sorumlu olur. Örneğin contoso, için TLS sertifikalarını ve için bir joker sertifika vermekten ve yenilemekten sorumludur us.contoso.com*.contoso.com . Benzer şekilde, Fabrikam genellikle etki alanı için tüm kayıtları yönetmekten sorumludur fabrikam.cominvoices.fabrikam.com . CAA (sertifika yetkilisi yetkilendirme) DNS kayıt türü, etki alanı sahibi tarafından yalnızca belirli yetkililer kendi etki alanı için sertifika oluşturanın oluşturulmasını sağlamak için kullanılabilir.
Müşterilerin kendi etki alanlarını getirmesine izin vermeyi planlıyorsanız, sertifikayı müşterinin adına mi vermek istediğinizi, yoksa müşterilerin kendi sertifikalarını mı getirip getirmeyeceğinizi düşünün. Her seçeneğin avantajları ve dezavantajları vardır. Müşteri için bir sertifika verirseniz, sertifikanın yenilenmesini işleyebilir, böylelikle müşterinin güncel kalmasını sağlamak zorunda kalmamanız gerekir. Ancak, müşterilerin etki alanı adlarında CAA kayıtları varsa, bu kişilerin adına sertifika verme yetkisi vermesi gerekebilir. Müşterilerin kendi sertifikalarını vermesini ve size kendi sertifikalarını sağlamasını düşünüyorsanız, özel anahtarları güvenli bir şekilde alıp yönetmekten ve müşterilerinizin süresi dolmadan önce sertifikayı yenilemelerini hatırlatmak zorunda kalabilirsiniz.
Çeşitli Azure Hizmetleri, özel etki alanları için sertifikaların otomatik yönetimini destekler. Örneğin, Azure ön kapısı ve App Service özel etki alanları için sertifikalar sağlar ve yenileme işlemini otomatik olarak işler. Bu, Operations takımınızdan sertifikaları yönetme yükünü ortadan kaldırır. Ancak, CAA kayıtlarının etkin ve doğru şekilde yapılandırılmış olup olmadığı gibi sahiplik ve yetki sorusunu göz önünde bulundurmanız gerekir. Ayrıca, müşterilerinizin platformu tarafından yönetilen sertifikalara izin verecek şekilde yapılandırıldığından emin olmanız gerekir.
Sonraki adımlar
Mimari noktalara genel bakışkonusuna geri dönün. ya da Microsoft Azure Well-Architected çerçevesinigözden geçirin.