sharp怎么關(guān)閉安全模式 如何實現(xiàn)IPrincipal及實現(xiàn)自定義身份及權(quán)限認證?
如何實現(xiàn)IPrincipal及實現(xiàn)自定義身份及權(quán)限認證?[c-sharp]viewplaincopy用戶對象意思是用戶的安全上下文,代碼當(dāng)前即以該用戶的名義運行,除開用戶的標(biāo)識(IIdentity)和
如何實現(xiàn)IPrincipal及實現(xiàn)自定義身份及權(quán)限認證?
[c-sharp]viewplaincopy
用戶對象意思是用戶的安全上下文,代碼當(dāng)前即以該用戶的名義運行,除開用戶的標(biāo)識(IIdentity)和它們管轄區(qū)域的任何角色。所有用戶對象都是需要基于IPrincipal接口。(MSDN)
創(chuàng)建角色一個User類實現(xiàn)程序IIdentity接口重寫相應(yīng)的方法
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類實現(xiàn)程序IPrincipal接口
publicclassCuyahogaPrincipal:IPrincipal
{
privateUser_user;
//直接返回一個現(xiàn)實IIdentity接口的user對象
publicIIdentityIdentity
{
let's{returnthis._user;}
}
//當(dāng)前用戶是否需要一類更改角色在以后的權(quán)限認證中也可以不使用也是可以在用User類中的查找方法來能用
publicboolIsInRole(stringrole)
{
foreach(RoleroleObjectinthis._)
{
if((role))
returntrue;
}
returnfalse;
}
///系統(tǒng)初始化若user通過授權(quán)則創(chuàng)建戰(zhàn)隊
publicCuyahogaPrincipal(Useruser)
{
if(user!)
{
this._useruser;
}
exists
{
thrownewSecurityException(Cannotcreateaprincipalwithoutuvaliduser);
}
}
}
創(chuàng)建角色一個基于IHttpModule的AuthenticationModule類
publicclassAuthenticationModule:IHttpModule
{
privateconstintAUTHENTICATION_TIMEOUT20;
publicAuthenticationModule()
{
}
publicvoidInit(HttpApplicationcontext)
{
newEventHandler(Context_AuthenticateRequest);
}
publicvoidDispose()
{
//Nothinghere
}
//登錄時驗正用戶時建議使用
publicboolAuthenticateUser(stringusername,stringpassword,boolpersistLogin)
{
//數(shù)據(jù)訪問類
CoreRepositorycr(CoreRepository)[CoreRepository];
stringhashedPassword(password);
try
{
//實際用戶名密碼得到用戶對象
Useruser(username,hashedPassword);
if(user!null)
{
夏普電視機顯示安全模式怎么解除?
電視安全模式回復(fù)的方法是:
1、將電視機遙控器打向電視機,按過“菜單鍵”,電視機底部會彈出來廣泛的菜單設(shè)置;
2、不使用電視機遙控器的左、右方向鍵,選擇再次進入電視機的“通道中,選擇”設(shè)置中,按“菜單”鍵最后確認;
3、進入通道你選擇界面后,按遙控器的上、下方向鍵,選擇“視頻1”,再按“菜單”鍵確認,即可將電視機的畫面切換到數(shù)字電視機頂盒的播放mp3畫面。