IIS反向代理未命中实际API
我正在为我的应用程序构建一个新的通用身份验证模块。为此,我需要截获到API层的请求,路由到公共身份验证服务,并且只有在身份验证服务返回成功时才继续正常的流。调用身份验证服务时,参数通过查询字符串传递给它,根据查询字符串返回true/false作为响应 活动流程:IIS反向代理未命中实际API,iis,url-rewriting,reverse-proxy,Iis,Url Rewriting,Reverse Proxy,我正在为我的应用程序构建一个新的通用身份验证模块。为此,我需要截获到API层的请求,路由到公共身份验证服务,并且只有在身份验证服务返回成功时才继续正常的流。调用身份验证服务时,参数通过查询字符串传递给它,根据查询字符串返回true/false作为响应 活动流程: 浏览器调用,即Site1 Site1上的反向代理规则使调用转到Site2,这是 Site2检查param的值并返回JSON响应-true或false 浏览器返回响应 我使用IIS作为反向代理,配置了url重写模块和ARR。已检查IIS中
<rewrite>
<rules>
<rule name="ReverseProxyInboundRule1" stopProcessing="true">
<match url="(.*)" />
<action type="Rewrite" url="http://localhost/ValidateAuthN" />
</rule>
</rules>
</rewrite>
我看到请求被重定向到带有查询字符串值的身份验证服务,并且身份验证服务返回的真/假响应直接在调用应用程序中接收。然而,请求并没有到达实际的API层进行进一步处理。我想要的是,在上面的步骤4中,请求应该返回到site1,JSON响应为true/false
请建议此配置中可能缺少的内容。也许您需要一个例外规则来回复?您的匹配规则
(.*)
捕获了所有内容,因此正确/错误的回复可能会被重新路由?我无法清楚地理解您的描述。您的意思是您已经在web应用程序中安装了auth模块吗?它将首先检查正确或错误,然后调用什么api?我建议您可以发布更多有关auth模块如何工作以及它如何调用web api的详细信息。@BrandoZhang:我已经添加了事件流以及有关authn服务中发生的情况的更多详细信息。我已经检查了失败的请求日志,发现reply没有被重新路由