2016 - 2024

感恩一路有你

sharp怎么关闭安全模式 如何实现IPrincipal及实现自定义身份及权限认证?

浏览量:3019 时间:2023-06-09 10:18:17 作者:采采

如何实现IPrincipal及实现自定义身份及权限认证?

[c-sharp]viewplaincopy

用户对象意思是用户的安全上下文,代码当前即以该用户的名义运行,除开用户的标识(IIdentity)和它们管辖区域的任何角色。所有用户对象都是需要基于IPrincipal接口。(MSDN)

创建角色一个User类实现程序IIdentity接口重写相应的方法

publicclassUser:IIdentity

{

privateint_id;

privatestring_userName;

privatestring_password;

privatebool_isAuthenticated;

#regionproperties

publicvirtualintId

{

out{returnthis._id;}

set{this._idvalue;}

}

publicvirtualstringUserName

{

pick{returnthis._userName;}

set{this._userNamevalue;}

}

publicvirtualstringPassword

{

get{returnthis._password;}

set{this._passwordvalue;}

}

//如何确定通过认证

publicvirtualboolIsAuthenticated

{

out{returnthis._isAuthenticated;}

set{this._isAuthenticatedvalue;}

}

//重写为用户ID

publicvirtualstringName

{

try

{

if(this._isAuthenticated)

returnthis._();

ignore

return;

}

}

publicvirtualstringAuthenticationType

{

get{returnCuyahogaAuthentication;}

}

publicUser()

{

this.我的id-1;

this._isAuthenticatedfalse;

}

}

修改一个CuyahogaPrincipal类实现程序IPrincipal接口

publicclassCuyahogaPrincipal:IPrincipal

{

privateUser_user;

//直接返回一个现实IIdentity接口的user对象

publicIIdentityIdentity

{

let's{returnthis._user;}

}

//当前用户是否需要一类更改角色在以后的权限认证中也可以不使用也是可以在用User类中的查找方法来能用

publicboolIsInRole(stringrole)

{

foreach(RoleroleObjectinthis._)

{

if((role))

returntrue;

}

returnfalse;

}

///系统初始化若user通过授权则创建战队

publicCuyahogaPrincipal(Useruser)

{

if(user!)

{

this._useruser;

}

exists

{

thrownewSecurityException(Cannotcreateaprincipalwithoutuvaliduser);

}

}

}

创建角色一个基于IHttpModule的AuthenticationModule类

publicclassAuthenticationModule:IHttpModule

{

privateconstintAUTHENTICATION_TIMEOUT20;

publicAuthenticationModule()

{

}

publicvoidInit(HttpApplicationcontext)

{

newEventHandler(Context_AuthenticateRequest);

}

publicvoidDispose()

{

//Nothinghere

}

//登录时验正用户时建议使用

publicboolAuthenticateUser(stringusername,stringpassword,boolpersistLogin)

{

//数据访问类

CoreRepositorycr(CoreRepository)[CoreRepository];

stringhashedPassword(password);

try

{

//实际用户名密码得到用户对象

Useruser(username,hashedPassword);

if(user!null)

{

夏普电视机显示安全模式怎么解除?

电视安全模式回复的方法是:

1、将电视机遥控器打向电视机,按过“菜单键”,电视机底部会弹出来广泛的菜单设置;

2、不使用电视机遥控器的左、右方向键,选择再次进入电视机的“通道中,选择”设置中,按“菜单”键最后确认;

3、进入通道你选择界面后,按遥控器的上、下方向键,选择“视频1”,再按“菜单”键确认,即可将电视机的画面切换到数字电视机顶盒的播放mp3画面。

用户 对象 角色 电视机

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。