Chinaunix首页 | 论坛 | 博客
  • 博客访问: 987839
  • 博文数量: 78
  • 博客积分: 1473
  • 博客等级: 上尉
  • 技术积分: 2124
  • 用 户 组: 普通用户
  • 注册时间: 2012-05-23 12:50
文章分类

全部博文(78)

文章存档

2016年(6)

2015年(2)

2014年(13)

2013年(4)

2012年(53)

分类: 嵌入式

2012-06-24 13:55:25

 

WCF角色服务能够从可以发送和使用SOAP消息的任何应用程序访问某个用户的角色。这可以包括不使用.NET Framework的应用程序。因此,这些不同应用程序的用户可以在每个应用程序中具有相同的角色。通常情况下,可以检查用户的角色来确定用户具有执行哪些操作的权限。

角色服务仅提供可通过ASP.NET角色管理获得的功能的一个子集。可以通过角色服务检索用户的角色或检查用户是否属于特定的角色。用户必须经过身份验证才能读取用户的角色。角色服务可使用任何类型的ASP.NET身份验证。

System.Web.ApplicationServices.RoleService.NET提供的角色服务实现,RoleService类公开了只应通过WCF服务访问的两个方法:

GetRolesForCurrentUser方法(返回已登录用户的所有角色)

IsCurrentUserInRole方法(确定用户是否属于指定的角色)

RoleService对象引发SelectingProvider事件。为SelectingProvider事件创建一个事件处理程序,以选择运行时要使用的角色提供程序。以下代码演示了如何在配置文件中启用角色服务:

 

   

     

   

 

角色服务的使用和WCF身份验证服务基本相似,这里不再举例,请读者参考上一篇博客《WCF身份验证服务》的内容。

另外可以在客户端通过Ajax来请求WCF角色服务,来实施客户端验证。

 ----------------------注:本文部分内容改编自《.NET安全揭秘》

阅读(1456) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~