我有一组启用了AspNetCompatibility的WCF服务,并从jQuery中使用它们。我的Web应用程序需要进行身份验证。仅使用逻辑(因为我缺乏足够的知识),这意味着WCF只能被当前已登录的用户访问和限制吗?我知道一个人可以捕获通信数据并尝试稍后重用它(我没有ssl),但他必须已登录。
对还是错,或者只是我的乐观主义愚蠢?
我有一组启用了AspNetCompatibility的WCF服务,并从jQuery中使用它们。我的Web应用程序需要进行身份验证。仅使用逻辑(因为我缺乏足够的知识),这意味着WCF只能被当前已登录的用户访问和限制吗?我知道一个人可以捕获通信数据并尝试稍后重用它(我没有ssl),但他必须已登录。
对还是错,或者只是我的乐观主义愚蠢?
是的,因为您启用了ASP.NET兼容性并且正在使用ASP.NET安全性,只要WCF资源具有正确的<authorization>
设置,它就应该受到ASP.NET安全性的保护。至少,这意味着您应该在WCF资源上定义如下授权:
<authorization>
<deny users="?" /> <!-- deny all anonymous users -->
<allow users="*" /> <!-- allow all authenticated users -->
</authorization>