由于没有人回答这个问题:
让我用另一种方式问:
WCF RIA服务如何处理较低级别的身份验证/授权/安全性?
答案 0 :(得分:1)
根据我的调查,所有对RIA服务类的调用都是通过自定义IOperationInvoker类强制执行的(由自定义IOperationBehavior类强制执行)。这个调用者调用DomainService来执行操作。
在执行之前,方法调用将验证在相关操作上标记的任何/所有AuthorizationAttribute属性。每个AuthorizationAttribute(提供的两个是RequiresAuthenticationAttribute& RequiresRoleAttribute)都有机会通过抽象的IsAuthorized方法接受或拒绝该调用。
如果这些属性中的任何一个返回“AuthorizationResult.Allowed”以外的内容,则会返回一个UnauthorizedAccessException异常,并返回AuthorizationResult中的ErrorMessage。