我们有以下技术堆栈
这是当前的实现方式
一切正常,并按预期进行。
现在,当我去APIM->分析->请求时,我看到WAF IP列在这里,而不是客户端IP。因此,在这种情况下,我们将无法跟踪谁在使用什么
我知道我们可以选择通过订阅密钥进行跟踪,但这还不够。
有人可以建议如何配置以获得正确的IP吗?
答案 0 :(得分:1)
我相信您可以在here中找到答案。 您只需要配置服务器以从相关标头中检索正确的IP。
引用相关部分:
需要原始客户端IP。如果您的应用程序需要真实的客户端IP地址,请确保已启用从“ X-Forwarded-For”或“ Incap-Client-IP”标头中检索此值的功能。使用Imperva时,您的服务器将看到Imperva IP,而不是实际的客户端IP。但是,默认情况下,Imperva将原始客户端IP地址插入两个HTTP标头中:“ X-Forwarded-For”和Imperva标头“ Incap-Client-IP”。
但是请注意,您应该以给定的XFF值获取第一个IP,否则,第二个标头real-client-IP的使用可能会受到第三方代理等的影响。
希望有帮助。
答案 1 :(得分:1)
向Microsoft提出支持请求后,我们得到了想要的东西
这就是我们的成就
现在,我们可以将其导出为csv格式,并可以根据客户端IP跟踪使用情况。
答案 2 :(得分:0)
这对于Azure APIM中的内置报告是不可能的。如果您可以在标题中使WAF将客户端IP转发到APIM,则可以构建自己的报告基础结构,但这将非常复杂。