Silverlight安全上下文



我想知道Silverlight是否有一个安全上下文,你可以用[PrincipalPermission(SecurityAction.Demand, Role = "Administrator")]标记部分代码。

从我目前收集到的所有研究来看,为了获得一个"用户对象",你必须编写一个服务(或者使用他们想要使我们的生活复杂化的讨厌的RIA废话),并来回传递一个自定义的用户对象(继承自UserBase对象),该对象可以被xaml (silverlight)运行时和wcf服务识别。

假设这是正确的,我如何限制访问特定的屏幕在silverlight应用程序?

如何将当前安全主体设置为与从服务返回的用户实例相同?

我不想重新发明轮子,我希望我可以使用ASP中的授权技术。. NET/Windows在silverlight代码中通过使用PrincipalPermission属性或silverlight等效属性装饰屏幕。

任何帮助将非常感激!谢谢你,

马丁

只要应用程序在System.ServiceModel.DomainServices.Client.ApplicationServices.WebContext中实现WebContextBase对象。WebCon-textBase命名空间(来自WCF RIA sdk)的安全上下文应该是有效的。WebContextBase实现了IPrincipal接口,该接口反过来使用了[PrincipalPermission(SecurityAction)]。需求,角色= "管理员")]属性

为了使此工作,在解决方案的web项目中需要添加AuthorizationDomainService,并实现默认或自定义成员&提供者的角色。

我不确定我是否理解PrincipalPermission的东西将如何帮助你。

你的应用程序必须允许用户导航到他们无法访问的屏幕,然后才能发挥作用。设计你的应用程序,让用户只能导航到他们可以访问的功能,这会更有意义。

考虑它,而不是保护"屏幕",尝试保护显示在"屏幕"上的数据(这可以在服务器端执行)。

顺便说一下,答案是否定的。Silverlight不支持安全主体的概念。

相关内容

  • 没有找到相关文章

最新更新