[WCF权限控制]从两个重要的概念谈起:Identity与Principal

  在安全领域,认证和授权是两个重要的主题。认证是安全体系的第一道屏障,守护着整个应用或者服务的第一道大门。当访问者叩门请求进入的时候,认证体系通过验证对方提供凭证确定其真实身份。作为看门人的认证体系,只有在证实了访问者的真实身份的情况下才会为其打开城门,否则将之举之门外。

  当访问者入门之后,并不意味着它可以为所欲为。为了让适合的人干适合的事,就需要授权机制为具体的人设置具体的权限,并根据这些权限设置决定试图调用的操作或者访问的资源对该访问者是否是安全的。对于一个安全保障体系来说,授权是目的。但是授权的执行是假定已经通过认证体系确定了访问者真实身份,因为用于进行授权采用的权限集是基于真个确定的身份的。在真正进入对WCF授权的具体介绍之前,我们有必要来了解一下这个“身份”的问题。

目录
一、IIdentity
二、WinodwsIdentity
三、GenericIdentity
四、X509Identity
五、服务安全上下文中的身份

  一、IIdentity

  在.NET的安全应用编程接口中,身份通过System.Security.Principal.IIdentity接口表示。从下面表示IIdentity接口定义的代码片断中,我们可以看到这个接口定义其实很简单,它具有如下三个只读属性:

  • Name:身份所代表的用户的名称;
  • IsAuthenticated:身份所代表的用户是否经过认证;
  • AuthenticationType:身份认证所采用的类型。
public interface IIdentity
{
string AuthenticationType { get; }
bool IsAuthenticated { get; }
string Name { get; }
}

NET技术[WCF权限控制]从两个重要的概念谈起:Identity与Principal,转载需保留来源!

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。