|
在安全領(lǐng)域,認(rèn)證和授權(quán)是兩個(gè)重要的主題。認(rèn)證是安全體系的第一道屏障,守護(hù)著整個(gè)應(yīng)用或者服務(wù)的第一道大門。當(dāng)訪問者叩門請(qǐng)求進(jìn)入的時(shí)候,認(rèn)證體系通過驗(yàn)證對(duì)方提供憑證確定其真實(shí)身份。作為看門人的認(rèn)證體系,只有在證實(shí)了訪問者的真實(shí)身份的情況下才會(huì)為其打開城門,否則將之舉之門外。
當(dāng)訪問者入門之后,并不意味著它可以為所欲為。為了讓適合的人干適合的事,就需要授權(quán)機(jī)制為具體的人設(shè)置具體的權(quán)限,并根據(jù)這些權(quán)限設(shè)置決定試圖調(diào)用的操作或者訪問的資源對(duì)該訪問者是否是安全的。對(duì)于一個(gè)安全保障體系來說,授權(quán)是目的。但是授權(quán)的執(zhí)行是假定已經(jīng)通過認(rèn)證體系確定了訪問者真實(shí)身份,因?yàn)橛糜谶M(jìn)行授權(quán)采用的權(quán)限集是基于真?zhèn)€確定的身份的。在真正進(jìn)入對(duì)WCF授權(quán)的具體介紹之前,我們有必要來了解一下這個(gè)“身份”的問題。
目錄
一、IIdentity
二、WinodwsIdentity
三、GenericIdentity
四、X509Identity
五、服務(wù)安全上下文中的身份
一、IIdentity
在.NET的安全應(yīng)用編程接口中,身份通過System.Security.Principal.IIdentity接口表示。從下面表示IIdentity接口定義的代碼片斷中,我們可以看到這個(gè)接口定義其實(shí)很簡單,它具有如下三個(gè)只讀屬性:
- Name:身份所代表的用戶的名稱;
- IsAuthenticated:身份所代表的用戶是否經(jīng)過認(rèn)證;
- AuthenticationType:身份認(rèn)證所采用的類型。
public interface IIdentity
{
string AuthenticationType { get; }
bool IsAuthenticated { get; }
string Name { get; }
}
NET技術(shù):[WCF權(quán)限控制]從兩個(gè)重要的概念談起:Identity與Principal,轉(zhuǎn)載需保留來源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。