在 IIS Express 中托管 webapi,因此它只能由父 Web 应用程序访问
Posted
技术标签:
【中文标题】在 IIS Express 中托管 webapi,因此它只能由父 Web 应用程序访问【英文标题】:Host a webapi in IIS Express so it can only be accessed by a parent web application 【发布时间】:2020-02-11 20:00:44 【问题描述】:我有 2 个独立的 webapi 应用程序,我希望第一个是普通的 webapi 应用程序,任何授权的人都可以通过 Internet 访问它。对于第二个,我需要它不能公开访问并且只对第一个可用(因此第二个应用程序以某种方式“嵌套”在第一个应用程序中)。 谁能告诉我如何实现这一点(应用程序目前托管在 IIS Express 中,但将在 iis 中用于生产)? 非常感谢
【问题讨论】:
您可以使用 URL 重写模块来阻止外部访问,因为只有在其规则中您才能检查 URL 和传入的 IP 地址。 您的问题解决了吗?如果您的问题解决了,那么我请求您将有用的建议标记为答案。这将帮助面临同样问题的其他人。 【参考方案1】:如果您关心安全性(每个人都应该如此),您可以将 IIS 配置为仅允许特定计算机、计算机组或域访问您的网站。流程如下:
1)打开 IIS 控制台并转到您网站的属性。
2)双击IP地址和域限制。
3)单击添加允许条目...(在右侧窗格中)以添加允许访问该网站的 IP 地址或 IP 地址范围。单击确定。 重复此步骤以将其他 IP 地址添加到列表中。
添加允许的 IP 地址后,单击编辑功能设置...,然后为未指定的客户端选择拒绝访问。点击确定。
现在,只有指定 IP 地址的用户才能访问该网站。
【讨论】:
以上是关于在 IIS Express 中托管 webapi,因此它只能由父 Web 应用程序访问的主要内容,如果未能解决你的问题,请参考以下文章