【问题标题】:C# web api request allow only for listed domainsC# web api 请求仅允许列出的域
【发布时间】:2018-10-13 19:54:12
【问题描述】:

我在 api.domain.com 上托管了 web api,我的应用位于 app1.domain.com 和 app2.domain.com 中

我想允许 api.domain.com 只能从 app1.domain.com 和 app2.domain.com 访问

如何做到这一点?我尝试过允许访问控制,但我不想在浏览器 cosole 中显示允许的域

当我通过浏览器访问 api.domain.com 时应该显示 403 - Forbidden: Access is denied.

请帮忙

【问题讨论】:

标签: asp.net iis asp.net-web-api iis-8


【解决方案1】:

更具体地说是我上面的评论。您必须为 api 端点控制器启用 CORS 支持。

  • 将 CORS 添加到 VS 项目中
  • 然后在控制器上使用[EnableCors(origins: "https://app1.domain.com,https://app2.domain.com")] 属性。

【讨论】:

    【解决方案2】:

    您可以使用 IIS 的 IP 和域限制功能。此功能需要显式安装。

    【讨论】:

    • 拒绝所有请求请看这个问题stackoverflow.com/questions/49339424/…
    • @aas : 仅当直接从浏览器访问 service/api 时,通过 CORS 控制访问才有效。
    • 作为您的答案,我已经尝试过但无法正常工作,除了允许的 ip 之外,它被拒绝了所有请求,这意味着当我允许 app1.domain.com ip 并且来自我的浏览器的请求被拒绝但当我从app1.doamin.com 服务器浏览器是允许的,但我不想那样。正如我在问题中所问的那样,我需要
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-15
    • 2020-07-22
    • 2012-11-03
    • 2015-10-11
    • 2016-03-03
    相关资源
    最近更新 更多