IPrincipal和IIdentity

IPrincipal和IIdentity
IPrincipal:用户对象表示用户的安全上下文,代码当前即以该用户的名义运行,包括用户的标示(IIdentity)和他们所属的任何角色。所有的用户对象都需要实现

IPrincipal。(msdn中的说明)
如果想对现有的asp.net应用程序应用用户角色验证理,那么可以通过IPrincipal借口自定义一个CustomPrincipal来实现用户角色验证。
IIdentity:
定义标示对象的基本功能;代表特定用户的标示对象,代码当前以该用户的名义运行。
(msdn中的说明)

IPrincipal和IIdentity在asp.net程序实例的上下文中可以找到。
常见的做法是:
asp.net应用程序中会员类实现了IIdentity借口,然后CustomPrincipal类通过组合的方式封装该会员类,同时CustomPrincipal实现了IPrincipal接口;
当前代码获取用户标示时,最直接的做法是直接调用HttpContext.Current.User接口(一直以来认为HttpContext.Current.User是个类,后来才发现,是个接口!),

HttpContext.Current.User接口在默认上下文中,我还不清楚是由哪个类来的;不过,HttpContext.Current.User接口是可以赋值的,这样可以在实例化CustomPrincipal后,

赋值给HttpContext.Current.User接口。赋值的操作可以放在HttpApplication实例中的AuthenticateRequest事件。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值