我已经上传了我的ReactJS SPA到Blob存储,我已经启用了静态网站托管。
现在我有了这个主要端点URL:https://myapp1.z11.web.core.windows.net/
,我可以用它查看网站。
但是,为了让客户可以访问我的网站,我必须在网络配置的“公共网络访问”部分中执行“从所有网络启用”。
公开意味着什么?这是否意味着存储在容器中的文件都可以从公共互联网上下载?或者,这仅仅意味着静态网站可以从公众那里访问?
这是一个坏的做法,使它公开?有哪些风险?
我试着把Azure FrontDoor放在Blob存储静态网站的前面。然而,问题在于:
1.我仍然需要为blob存储中的所有网络启用公共网络访问,以允许frontdoor访问网站。
1.如果我想保持Blob的私人而不是公共,建议使用与FrontDoor Premium的私人链接。然而,保费太贵了,这是绝对排除。
Azure应该提供一种简单的方法,使托管静态网站的Blob存储私有,并仅允许来自标准/经典FrontDoor示例的流量。AWS通过他们的CloudFront和S3水桶提供了这样的功能,它们真的很方便。
FrontDoor提供了针对XSS和DDoS的保护,而Blob存储静态网站不提供这些保护。
1条答案
按热度按时间bmp9r5qi1#
已创建启用blob存储的静态网站,使其具有主端点URL:
https://XXXXX.z13.web.core.windows.net/
我可以用它查看网站。的数据
启用**
Public network access
**意味着您的网站可以从公共互联网访问。这并不意味着容器中的文件可以直接通过Blob存储URL从公共互联网下载。任何人都可以访问和检索内容。的
将您的网站公开为各种风险,未经授权的访问它可能是危险的,如果容器包含私人或任何敏感信息,你不想访问任何其他人。
在Azure中,Front Door确实提供了DDoS攻击的额外好处如果您想保持Blob的私密性,则应仅使用Front Door Premium的私密链接。在您的情况下,Premium太贵,您可以使用其他服务,如Azure CDN内容交付网络或应用程序网关。
或者,您可以使用公共网络访问下的选定网络选项:
的
创建网络访问规则,将允许访问Blob存储中托管的静态网站的虚拟网络和IP地址列入白名单:
的
的
这样,只有指定网络内或具有指定IP地址的用户或服务才能访问网站。你可以通过 Kartik Bhiwapurkar 检查So thread的类似问题
参考文献:
Azure on the Cheap - Azure Storage Static Website and Azure Front Door通过 * 杰弗里chilberto*
Running an Azure Storage Static Site, protected by Azure Front Door -Azure Readiness Starts Here的