从Azure到HTTP到https端点

时间:2019-03-18 05:33:46

标签: amazon-web-services azure api-gateway

使用AWS,我可以使用API​​ Gateway和CloudFront将http转换为https端点,并且获得如下所示的URL,

https://4z9giyi2c1.execute-api.us-west-2.amazonaws.com/test/petstore/pets?type=fish

我如何使用Azure?

3 个答案:

答案 0 :(得分:0)

对此有一个开源扩展:

  1. 转到您的Azure应用服务library(data.table) library(tidyverse) input <- data.table( id = c('aa', 'ss', 'dd', 'qq'), '2017' = c('tv', NA, NA, 'web'), '2018' = c(NA, 'web', NA, NA), '2019' = c(NA, NA, 'book', 'tv') ) ""-> input[is.na(input)] input[, ALL:=paste0(.SD,collapse=" "), .SDcols =2:length(input), by=seq_len(nrow(input))] 栏,您可以在此处找到Development Tools选项卡,然后单击“添加”。

  2. 在存在扩展名Extensions之前,我找不到它,但是我找到了一个新扩展名Redirect HTTP to HTTPS

enter image description here

  1. 添加扩展程序并重新启动网络。

有关此扩展名check the source code on github的更多详细信息。最重要的文件是applicationhost.xdt。它将写规则“将HTTP重定向到HTTPS”。

Security Settings: HTTPS Redirect w/KeepAlive Support, Headers incl HSTS, CSP, and More. "Medium strength".

答案 1 :(得分:0)

  

更新

CloudFront 是AWS CND,它是服务器的分布式网络,可以有效地向用户交付Web内容。 CDN将缓存的内容存储在边缘服务器上靠近最终用户的存在点(POP)位置,以最大程度地减少延迟。 Azure的CDN为Azure Content Delivery Network (CDN)

如果您的目标是对应用程序实施HTTPS,则CDN可能不是最佳的选择,因为CDN用于向分散在全球的客户交付具有低延迟和高可用性的静态内容。虽然,您可以将HTTPS与CDN一起使用,但这会产生使用CDN服务的费用。

  

因此,如果您的主要目标是使用HTTP,则以下过程适用于   将SSL绑定到您的自定义domian名称以强制HTTPS通信   与您的网站。

使用Microsoft Azure,您可以将Web应用程序与SSL证书绑定,以便通过https对其进行访问。为此,您需要拥有;

  1. 创建了App Service应用
  2. 将自定义DNS名称映射到您的App Service应用

  3. 从受信任的证书颁发机构获取SSL证书

  4. 具有用于签署SSL证书请求的私钥

在您的Azure门户中,访问要为其添加SSL证书的Web应用程序。然后,在应用程序的左侧导航中单击 SSL设置。然后点击上传证书以将其添加到您的网络应用中。

然后,在“ SSL绑定”部分中,单击添加绑定。在“添加SSL绑定”页面中,使用下拉菜单选择要保护的域名和要使用的证书。

实施HTTPS :-

您可以将所有HTTP请求重定向到HTTPS端口。  在您的应用页面的左侧导航栏中,选择 SSL设置。然后,在仅HTTPS 中,选择“打开”。

有关更多信息和完整教程,请访问Tutorial: Bind an existing custom SSL certificate to Azure App Service

  

但是,如果您打算将CDN服务与安全HTTP一起使用   连接,然后下面是使用Azure CDN启用   具有SSL的自定义域。

  1. 在Azure门户中,浏览至Microsoft的 Azure CDN 标准,Akamai的Azure CDN标准,Verizon的Azure CDN标准或Verizon配置文件的Azure CDN Premium。
  2. CDN端点列表中,选择包含您的自定义域的端点。
  3. 自定义域列表中,选择要为其启用HTTPS的自定义域。
  4. 证书管理类型下,选择托管的CDN。
  5. 选择打开以启用HTTPS。

有关更多信息,请参见Configure HTTPS on an Azure CDN custom domain

如果仅要将HTTP通信重定向到Azure CDN中的HTTP,则只需使用Azure CDN规则引擎创建URL重定向规则。有关更多信息,请参见HTTP-to-HTTPS redirection

答案 2 :(得分:0)

Azure Front Door是您所需要的选项。

此服务在一项服务中提供了组合的Web应用程序防火墙,Traffic Manager(用于路由)和CDN。更重要的是,与Azure提供的其他普通CDN不同,它允许SSL终止:

您可以将路由规则配置为仅接受http或https之一,或同时接受这两者,然后路由详细信息使您可以指定将请求传递为仅HTTPS,仅HTTP(您想要的)还是“匹配请求”:

Routing options within Front Door

然后,您可以为重定向到HTTPS的非HTTPS流量设置后续规则,以强制所有流量安全。