C# 您可以使用RIA服务为实体属性添加安全性吗?
RIA服务允许您向域服务方法添加一个属性,如:RequiresRole(“Admin”)。这将自动检查调用该方法的用户是否具有正确的安全性。我想对实体上的属性执行类似的操作。例如,只有“经理”角色的用户才允许更改“比率”属性,但任何用户都可以更改“评论”属性。这可能吗?您可以使用。您可以创建一个属性,如RequiresManagerRole,该属性将检查用户是否处于Manager角色,如果用户不处于Manager角色,则不允许更改 然而,对于用户来说,这可能不是一个很好的体验。您可能希望以某种方式将只读属性绑定到表单中,以确定该属性是否可编辑。您可以使用IValueConverter执行此操作,并在值转换器中检查用户角色以确定其是否为只读 更新:好的,我想Brad看到了这个问题,并且。这应该能够解决您想要做的事情,但采取了不同的方法。您可以使用。您可以创建一个属性,如RequiresManagerRole,该属性将检查用户是否处于Manager角色,如果用户不处于Manager角色,则不允许更改 然而,对于用户来说,这可能不是一个很好的体验。您可能希望以某种方式将只读属性绑定到表单中,以确定该属性是否可编辑。您可以使用IValueConverter执行此操作,并在值转换器中检查用户角色以确定其是否为只读C# 您可以使用RIA服务为实体属性添加安全性吗?,c#,.net,silverlight,wcf-ria-services,C#,.net,Silverlight,Wcf Ria Services,RIA服务允许您向域服务方法添加一个属性,如:RequiresRole(“Admin”)。这将自动检查调用该方法的用户是否具有正确的安全性。我想对实体上的属性执行类似的操作。例如,只有“经理”角色的用户才允许更改“比率”属性,但任何用户都可以更改“评论”属性。这可能吗?您可以使用。您可以创建一个属性,如RequiresManagerRole,该属性将检查用户是否处于Manager角色,如果用户不处于Manager角色,则不允许更改 然而,对于用户来说,这可能不是一个很好的体验。您可能希望以某种方
更新:好的,我想Brad看到了这个问题,并且。这应该可以解决您想要做的事情,但采取了不同的方法。支持属性安全性的更好方法是重写DomainService.Query方法,这样可以避免加载过多的数据。更多关于它的博客。支持属性安全性的更好方法是重写DomainService.Query方法,这样可以避免加载过多的数据。写了更多关于它的博客