快速业务通道

.NET 实现自定义ContextUser的Identity和Principal实现自定义用户信息,权限验证

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-04-10

.NET 实现自定义ContextUser的Identity和Principal 

在传统的.NET中,我们可以通过

  1. User.Identity.Name;//获取用户名   
  2.   
  3. User.Identity.IsAuthenticated;//判断用户是否己验证   
  4.   
  5. User.IsInRole("Admin");//判断用户是否含有指定角色  

但这样的机制,在实际开发中,难以满足开发需要.仅仅通过User.Identity.Name;获取用户名,和User.Identity.IsAuthenticated;判断用户是否验证,是难以满足需要。如何获取用户更多信息,或者进行更详细的权限判断。

我们可以通过自定义Identity和Principal进行实现!

  1. /// <summary>   
  2.   
  3. /// 自定义当前用户标识对象   
  4.   
  5. /// </summary>   
  6.   
  7. public class MyIdentity:IIdentity  
  8.   
  9. {  
  10.  
  11.  
  12.  
  13.     #region 用户属性(可自定义更多信息)   
  14.   
  15.     private string _userName;//用户账号   
  16.   
  17.     private string _departmnet;//用户所在部门   
  18.   
  19.     private string _phone;//用户联系电话  
  20.  
  21.     #endregion   
  22.   
  23.   
  24.   
  25.     /// <summary>   
  26.   
  27.     /// 用户账号   
  28.   
  29.     /// </summary>   
  30.   
  31.     public string UserName  
  32.   
  33.     {  
  34.   
  35.         get { return _userName; }  
  36.   
  37.     }  
  38.   
  39.     /// <summary>   
  40.   
  41.     /// 用户所在部门   
  42.   
  43.     /// </summary>   
  44.   
  45.     public string Departmnet  
  46.   
  47.     {  
  48.   
  49.         get { return _departmnet; }  
  50.   
  51.     }  
  52.   
  53.     /// <summary>   
  54.   
  55.     /// 用户电话   
  56.   
  57.     /// </summary>   
  58.   
  59.     public string Phone  
  60.   
  61.     {  
  62.   
  63.         get { return _phone; }  

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号