我有一个Web服务,需要能够验证最终用户的IP,该IP调用请求Web服务的服务器脚本。布局简单:
人员A转到网页B.网页B调用Web服务C以获取关于人员A的一些信息。网络服务C不会向网页B提供所请求的信息,而不确认该请求来自人员A的IP,而不是偷了人A的会议。
我认为对于基于浏览器的解决方案,原始站点(网页B)可以打开一个转到Web Service验证页面的iframe。将某种密钥传递给浏览器,这将指示用户的IP和Web Page B的IP,以便Web服务可以确认没有人抓住任何东西。
我有两个挑战,但我会先坚持下一个:
我不确定我的基于浏览器的计划是否真的有意义。如果有人窃取会话cookie,Web服务将如何知道?这个cookie会被网页B保存,因此更难窃取吗?这是一个合理的假设,即服务器只保留一个cookie或密钥而不是浏览器是安全的吗?
此外,基于iframe初始连接的Web服务是否需要服务器/ user-ip组合?我的意思是,通过iframe提供的会话密钥是否由Web服务存储,而网站B是否显示匹配?或者会话密钥是否更通用,这意味着Web服务由网站B传递密钥,Web服务根据有效的会话密钥应该是什么来验证这是一个有效的会话密钥?
答案 0 :(得分:0)
为什么没有为您的用户提供数字证书。证书在客户端请求Web服务时传递。 Web服务检查是否存在数字证书并作出相应的反应。数字证书与IP阻止相比具有显着优势。与用户身份验证一样,在实际进行Web方法调用之前,不会对数字证书进行安全检查。因此,访问者仍然可以查看Web服务或相关网页的WSDL页面。