Использование пользовательских доменов и SSL в решении SaaS в Azure Web App
В настоящее время мы планируем предоставить решение SaaS с поддоменами, которые будут размещаться в Azure в качестве службы приложений. В настоящее время у нас есть следующее сопоставление CNAME в DNS-провайдере, и оно отлично работает для всех поддоменов. Также сопоставлен домен в службе приложений Azure.
CNAME *.contoso.com contoso.azurewebsites.net
Также мы планируем добавить поддержку использования собственных доменов клиента. Например, domain-a.com является доменом клиента и будет указывать на domain1.contoso.com. Это работает нормально, если мы делаем следующее вручную / автоматически.
domain-a.com -> domain1.contoso.com (клиент добавит следующее сопоставление в свой DNS, и я должен добавить этот домен в службу приложений Azure)
У меня следующие вопросы.
- Можно ли обеспечить поддержку, не добавляя домен клиента в службу приложений Azure?
- Как обеспечить поддержку SSL для домена клиента?
1 ответ
Можно ли обеспечить поддержку, не добавляя домен клиента в службу приложений Azure?
Чтобы служба приложений обслуживала запросы к домену вашего клиента, вам необходимо привязать собственное доменное имя к вашей службе приложений. Либо направив запись A или CNAME в службу приложений. Если вы этого не сделаете, это просто не будет работать.
Однако если вы разместите брандмауэр веб-приложений Azure или брандмауэр приложений другого типа перед своей службой приложений, вам не нужно настраивать доменное имя в службе приложений. Но тогда вам все равно нужно настроить домены на брандмауэре, чтобы вам не пришлось настраивать домены где-нибудь в вашей инфраструктуре Azure.
Как обеспечить поддержку SSL для домена клиента?
Я думаю, что ваши клиенты, которые, вероятно, владеют своим доменным именем, будут запрашивать сертификат у поставщика сертификатов. Получив его, они могут передать его вам. Или вы можете сделать это от имени клиента и предложить это как услугу своим клиентам.
В качестве альтернативы вы можете использовать сервис Let's Encrypt, который предлагает бесплатные SSL-сертификаты. Но что еще более важно, процесс запроса, настройки и обновления этих сертификатов по большей части выполняется автоматически. Для Let's Encrypt есть расширение службы приложений Azure, которое позволяет использовать Let's Encrypt. Я считаю, что это в бета-версии. Но я использовал это и отлично работает. В этой статье также подробно объясняется, что вам нужно сделать, чтобы настроить расширение.