【发布时间】:2015-06-22 15:19:51
【问题描述】:
目前正在处理对 ASP Web 服务 (.asmx) 的 ajax 调用。
在我发布到 url/.asmx/WebMethod 的情况下,我是否会暴露任何类型的信息?
在“WebMethod”中,我正在运行一个调用 API 并传递 json 字符串的 PostJsonAsync。
在我仍在学习的过程中,有人告诉我调用任何公共 [WebMethod] 都会公开代码,但我不确定这怎么可能。
用户是否可以访问我拥有的 WebMethod 服务器端代码并查看可用的 API 调用?
我尝试了一些次要的安全方法。我们正在使用 Sitefinity CMS。我所做的是调用一个接收 CurrentUserIdentity 并返回 GUID 的 WebMethod。如果当前用户已登录,则返回一个有效的 Guid,否则返回一个全零的 Guid。
然后,我调用包含我的 API 调用的 WebMethod 并发布一个 json 对象以及有效或无效的 GUID。然后,服务器端 WebMethod 代码将验证 GUID 是否有效,并根据是否可以生成 UserProfile 继续。
对我来说,这似乎是安全的,但有人告诉我,这仍然会暴露 WebMethod 以及 API。但是,我只是不了解暴露的内容和可以使用的内容。
如果有人可以将我引导到任何对此有更多信息的资源,或者如果有人可以就 WebService 安全性向我提供建议,我将不胜感激。
提前致谢。
【问题讨论】:
标签: asp.net ajax web-services post sitefinity