Windows Azure Web Site (14) Azure Web Site IP白名单
《Windows Azure Platform 系列文章目录》
我们知道,在Azure Cloud Service和Virtual Machine,可以通过Endpoint ACL (Access Control List)访问控制列表。来设置IP白名单规则。
具体请参考:Windows Azure Virtual Network (10) 使用Azure Access Control List(ACL)设置客户端访问权限
在默认情况下,Azure Web Site是没有IP白名单的。也就是说,所有Internet上的用户,都可以访问Azure上的服务。
那这样会产生一个问题,假设我要在Azure Web Site上实现IP白名单,应该如何实现呢?在这章笔者简单介绍一下。
我们可以通过Web.config文件,来定义system.webServer节点,设置哪些IP可以访问Azure Web Site。
1.设置IP白名单
IP白名单的规则是这样设置的
(1)默认禁止所有的访问
(2)增加允许访问的公网IP地址

上图中,我们设置了system.webServer节点。
在ipSecurity节点中
- allowUnlisted设置为true。则允许所有公网IP访问Azure Web Site服务
- allowUnlisted设置为false。则默认所有公网IP不允许访问Azure Web Site服务
- denyAction设置为NotFound,则所有被禁止访问Azure Web Site服务的公网IP,报错信息为Not Found
在上图中,我们设置的规则是:
(1)默认情况下,所有公网IP不允许访问Azure Web Site服务
(2)增加一条IP白名单规则,允许公网IP地址为167.220.232.192的公网IP,访问Azure Web Site服务
(3)增加一条IP白名单规则,允许公网IP地址为202.96.0.0,子网为255.255.0.0的公网IP,访问Azure Web Site服务
显示效果:
(1)我本地计算器的公网IP地址为167.220.232.192,可以访问Azure上的服务

(2)我在Azure上的一台虚拟机,公网IP是42.159.227.98。这个IP不在上面的IP白名单里,所以报错信息为我们定义的Not Found。如下图:

2.设置IP黑名单
IP黑名单的规则是这样设置的
(1)默认允许所有的访问
(2)增加禁止访问的公网IP地址
system.webServer节点设置,如下图所示:

- allowUnlisted设置为true。则允许所有公网IP访问Azure Web Site服务
- 增加一条IP黑名单规则,禁止公网IP地址为167.220.232.192的公网IP,访问Azure Web Site服务
显示效果:
(1)我本地计算器的公网IP地址为167.220.232.192,禁止访问Azure上的服务

(2)我在Azure上的一台虚拟机,公网IP是42.159.227.98。这个IP不在上面的IP黑名单里,所以显示正常:

参考资料:
https://azure.microsoft.com/en-us/blog/ip-and-domain-restrictions-for-windows-azure-web-sites/
https://msdn.microsoft.com/en-us/library/ms691353(v=vs.90).aspx
Windows Azure Web Site (14) Azure Web Site IP白名单的更多相关文章
- Azure SQL Database (23) Azure SQL Database Dynamic Data Masking动态数据掩码
<Windows Azure Platform 系列文章目录> 我们在使用关系型数据的时候,有时候希望: - 管理员admin,可以查看到所有的数据 - 普通用户,某些敏感字段,比如信用卡 ...
- dubbo白名单通过filter,spring web通过拦截器或者filter即可
在开发中,有时候需要限制访问的权限,白名单就是一种方法.对于Java Web应用,Spring的拦截器可以拦截Web接口的调用:而对于dubbo接口,Spring的拦截器就不管用了. dubbo提供了 ...
- Windows Azure Web Site (13) Azure Web Site备份
<Windows Azure Platform 系列文章目录> 我们在使用Windows Azure Web Site的时候,经常会遇到需要对Web Site进行备份的情况.在这里笔者简单 ...
- Windows Azure Web Site (17) Azure Web Site 固定公网IP地址
<Windows Azure Platform 系列文章目录> 在之前的文档中,笔者介绍了Azure Web Site是一个多租户的环境,每个部署单元有一个可以通过Internet访问的入 ...
- [New Portal]Windows Azure Web Site (3) 创建Web Site和云端数据库
<Windows Azure Platform 系列文章目录> 在前一章的内容里,我介绍了使用Windows Azure Management Portal创建Web Site.本章,我将 ...
- Windows Azure Web Site (18) Azure Web App设置MIME
<Windows Azure Platform 系列文章目录> 在笔者之前的文章中,介绍了我们在使用Azure Web App,可以把静态资源保存到Azure Storage中: Wind ...
- [Windows Azure] Adding Sign-On to Your Web Application Using Windows Azure AD
Adding Sign-On to Your Web Application Using Windows Azure AD 14 out of 19 rated this helpful - Rate ...
- How to: Add SharePoint 2010 Search Web Parts to Web Part Gallery for Upgraded Site Collections
When you upgrade to Microsoft SharePoint Server 2010, some of the new SharePoint Enterprise Search W ...
- Azure 部署 Asp.NET Core Web App
在云计算大行其道的时代,当你在部署一个网站时,第一选择肯定是各式各样的云端服务.那么究竟使用什么样的云端服务才能够以最快捷的方式部署一个 ASP.NET Core 的网站呢?Azure 的 Web A ...
随机推荐
- halcon车牌的识别
read_image (Audi2, 'audi2') fill_interlace (Audi2, ImageFilled, 'odd') dev_set_color('green') thresh ...
- Controller的生命周期是Transient还是PerWebRequest?
当我们用在MVC总使用IoC时,大家的Controller生命周期(lifestyle)是以哪种方式注册的呢? 之前我一直没有思考过这个问题.众所周知在MVC开发过程中,大部分的组件都是以PerWeb ...
- 手机淘宝UWP
各位园主好! bug 走势: 哪天bug 足够少,哪天就可以发布了 :) 2015/10/23: 49 2015/10/26: 40 2015/10/27: 36 2015/10/28: 30 20 ...
- 详解SQL集合运算
以前总是追求新东西,发现基础才是最重要的,今年主要的目标是精通SQL查询和SQL性能优化. 本系列[T-SQL基础]主要是针对T-SQL基础的总结. [T-SQL基础]01.单表查询-几道sql查询题 ...
- Nim语言的模块化编程
前言 Nim支持把一大段程序分成若干个模块 一个模块就是一个源代码文件 每个模块都拥有它自己的名称空间 模块化可以起到封装(信息隐藏)和分步编译的作用 一个模块可以通过import语句获得另一个模块的 ...
- C#可扩展编程之MEF学习笔记(五):MEF高级进阶
好久没有写博客了,今天抽空继续写MEF系列的文章.有园友提出这种系列的文章要做个目录,看起来方便,所以就抽空做了一个,放到每篇文章的最后. 前面四篇讲了MEF的基础知识,学完了前四篇,MEF中比较常用 ...
- DNS拾遗(二)
MX Record补充 MX记录有优先级的概念,数字越小表示优先级越高.所以一个域可以配置多个不同优先级的MX记录,如果邮件通过第一优先级记录无法递送,则采用第二优先级,以此类推. TXT Recor ...
- html嵌套MP4、PDF的简单方案
你需要一个jquery.media插件,http://malsup.com/jquery/media/ 然后: <html><head><script src=" ...
- 推荐10个很棒的AngularJS学习指南
AngularJS 是非常棒的JS框架,能够创建功能强大,动态功能的Web app.AngularJS自2009发布以来,已经广泛应用于Web 开发中.但是对想要学习Angular JS 的人而言,只 ...
- NSDate NSString相互转化
时间戳是经常用到的,今天就总结一下 //设置转化格式 NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; [formatter s ...