【发布时间】:2011-10-18 13:54:40
【问题描述】:
我有一组启用了 AspNetCompatibility 的 WCF 服务并从 jQuery 中使用它们。我的 Web 应用程序需要身份验证。在这里只使用逻辑(因为我缺乏足够的知识)这是否意味着 WCF 可以访问并且仅限于当前登录的用户?我知道有人可以捕获通信数据并尝试稍后重用(我没有 ssl),但为此他应该登录。
我自己的乐观是对的、错的还是愚蠢的?
【问题讨论】:
标签: asp.net wcf-security
我有一组启用了 AspNetCompatibility 的 WCF 服务并从 jQuery 中使用它们。我的 Web 应用程序需要身份验证。在这里只使用逻辑(因为我缺乏足够的知识)这是否意味着 WCF 可以访问并且仅限于当前登录的用户?我知道有人可以捕获通信数据并尝试稍后重用(我没有 ssl),但为此他应该登录。
我自己的乐观是对的、错的还是愚蠢的?
【问题讨论】:
标签: asp.net wcf-security
是的,因为您启用了 ASP.NET 兼容性并且因为您正在使用 ASP.NET 安全性,只要您对 WCF 资源具有正确的<authorization> 设置,它就应该受到 ASP.NET 安全性的保护。至少,这意味着您应该在 WCF 资源上具有如下定义的授权:
<authorization>
<deny users="?" /> <!-- deny all anonymous users -->
<allow users="*" /> <!-- allow all authenticated users -->
</authorization>
仅当您允许“*”时,您的 WCF 服务才不会被未经身份验证的用户访问。
您可以在标题为在 ASP.NET 兼容模式下托管 WCF 服务的部分下阅读有关此 here in this MSDN article 的更多信息。
【讨论】: