使用AWS,我可以使用API Gateway和CloudFront将http转换为https端点,并且获得如下所示的URL,
https://4z9giyi2c1.execute-api.us-west-2.amazonaws.com/test/petstore/pets?type=fish
我如何使用Azure?
答案 0 :(得分:0)
对此有一个开源扩展:
转到您的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
选项卡,然后单击“添加”。
在存在扩展名Extensions
之前,我找不到它,但是我找到了一个新扩展名Redirect HTTP to HTTPS
。
有关此扩展名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对其进行访问。为此,您需要拥有;
将自定义DNS名称映射到您的App Service应用
从受信任的证书颁发机构获取SSL证书
具有用于签署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的自定义域。
有关更多信息,请参见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(您想要的)还是“匹配请求”:
然后,您可以为重定向到HTTPS的非HTTPS流量设置后续规则,以强制所有流量安全。