在msdn中查找“认证”,可以找到你需要的内容

解决方案 »

  1.   

    安全设计过程是周期性的。应用程序的安全不是只取决于开发人员和管理员在设计阶段的警戒,还取决于他们在应用程序整个生存期中的警戒。由于新的威胁几乎每天都会出现,因而必须经常仔细检查应用程序是否有潜在的安全性缺陷。但是,应用程序的初始设计决定了这些缺陷可能发生的频繁度。安全威胁是任何潜在的、可能对应用程序产生不良影响的事件(恶意的或无意的)。应用程序或操作系统的脆弱性使得威胁有可能发生。对应用程序的攻击是恶意入侵者执行的操作,它利用某些脆弱性以实施威胁。涉及的风险是攻击可对应用程序甚至业务造成潜在损坏。分析威胁
    在选择正确的安全措施以前,必须先判断应用程序面临的威胁和风险。未考虑应用程序可能面临的实际威胁而实现的安全措施只会给您错误的安全感。您所选择的技术和方法将取决于您确定可能发生的威胁。您实现安全措施的程度将取决于应用程序可接受的风险级别、其数据可接受的风险级别以及费用。投入和费用应与寻求保护的对象的价值相辅相成。在 Microsoft,我们使用缩写 STRIDE,它描述以下安全威胁分类: 欺骗身份 
    篡改数据 
    可否认性 
    信息泄露 
    拒绝服务 
    特权升级 
    以下讲述每个类别以了解应用程序受到怎样的威胁,并确定建议的对策。欺骗身份
    身份欺骗在身份验证方法受到危害时发生。这可能在攻击者已攻击或可以重播用户的身份验证序列时发生。使用有效用户的凭据,攻击者可以模拟该用户,获取被模拟用户通常可访问的应用程序和数据区域的访问权限。例如,使用密码而未对密码加密的身份验证协议会向窃听者泄露凭据信息,然后窃听者可以使用该信息来模拟用户。使用加强的身份验证方法,如 Kerberos 身份验证和客户端身份验证证书来尽可能防止欺骗。有关更多信息,请参阅 Kerberos 协议概述。在 Cookie 和自已设计的身份验证方案中存储身份验证信息最不牢固也最容易受到危害。篡改数据
    数据篡改是故意毁坏或操作数据。篡改在将来的某些时候可能会也可能不会检测到。数据在传输中(以物理或电子方式)和存储时都会受到威胁。例如,未受保护的数据包可被截获和修改,或者数据可因为攻击者利用缓冲区溢出脆弱性所执行的恶意代码而损坏。除控制访问以外,敏感数据应使用哈希和数字签名加密。传输时,受保护数据应使用安全的端对端协议进行传输,此类协议有“安全套接字层”/“传输层安全”(SSL/TLS) 和“Internet 协议安全”(IPSec) 等。有关更多信息,请参阅 MSDN Magazine 中的下列文章:Web Security: Putting a Secure Front-End on Your COM+ Distributed Applications(Web 安全:在 COM+ 分布式应用程序上放置安全前端,http://msdn.microsoft.com/library/periodic/period00/websecure.htm)和 Web Security: Part 2: Introducing the Web Application Manager, Client Authentication Options, and Process Isolation(Web 安全第 2 部分:介绍 Web 应用程序管理器、客户端身份验证选项和进程隔离,http://msdn.microsoft.com/library/periodic/period00/websecure2.htm)。可否认性
    可否认性是否认某项操作已发生的意图。可否认性的一个示例是,否认您收到某项(实际上已收到),希望供应商再向您提供一个。应对您不希望未经授权的用户执行的操作加以记录。使用数字签名和时间戳也可获得此类不可否认性。有关更多信息,请参阅事件日志记录。此外,数字签名可用于帮助提供不可否认性。有关更多信息,请参阅哈希和数字签名。信息泄露
    信息泄露的严重度取决于所泄露信息的敏感度。例如,由于医疗数据高度敏感,因而它的泄露将是严重威胁。此外,对应用程序结构信息的泄露(如泄露基于服务器的应用程序的路径)也同样危险。为防止信息泄露而可以采取的很多步骤都与上面概述的防止数据篡改的步骤相同。但是,能够篡改数据通常需要能够修改数据,但公开数据却不需要。有关更多信息,请参阅密码系统和消息身份验证代码。拒绝服务
    应用程序可用性和可靠性直接受拒绝服务 (DoS) 攻击影响,DoS 是一种破坏形式,使应用程序不能供已授权用户使用。DoS 攻击在系统溢满通信量达到不能处理合法服务请求的程度时发生。启动 DoS 攻击的方法很多,但大多数最常见的方法是基于利用 TCP/IP 协议的缺点或操作系统的 TCP/IP 实现中的错误。这样,DoS 攻击很难抵制,甚至很难预知。更糟的是,DoS 攻击是最容易实施的攻击。最基本的 DoS 攻击是造成承载应用程序的计算机的物理毁坏。为防御 DoS 攻击,大多数对策会包括使用防火墙的筛选数据包来分隔合法数据包和恶意数据包。另外,可使用带宽限制和资源限制来防止重载的 Web 站点弄垮整台服务器。可以使用各种方法来帮助减轻这类威胁,但没有哪种方法是绝对的。有关更多信息,请参阅 Microsoft Internet Security and Acceleration Server(Microsoft Internet 安全和加速服务器,http://www.microsoft.com/china/ISAServer/)。特权升级
    当用户获得对其通常不可访问的应用程序部分或数据部分的特权访问时,便发生特权升级。例如,攻击者可以利用缓冲区溢出脆弱性来用与应用程序进程相同的安全上下文执行恶意代码。应用程序应使用最低可能的安全上下文运行。运行于公共语言运行库的托管应用程序只可执行其具有权限的代码。有关更多信息,请参阅保证应用程序的安全。另外,托管应用程序应使用类型安全的代码,它首先有助于防止缓冲区溢出的发生。有关更多信息,请参阅类型安全和安全性。使用 Visual C++ 开发时,应用程序应使用 /GS 编译器开关编译。/GS 开关在易遇到缓冲区溢出的函数中插入安全代码。有关更多信息,请参阅 /GS(缓冲区安全检查)。区分威胁优先次序
    确定了应用程序可能的威胁类型以后,接着必须根据潜在的损坏和实现适当安全措施的成本来区分威胁的优先次序。若要对威胁风险分配等级,请使用以下公式:风险 = 危险程度 / 投入危险程度是从 1 到 10 的数字,对受保护资源按重要性分等级(10 为最重要)。投入也是从 1 到 10 的数字,根据启动对资源的攻击所需的困难程度分等级。例如,一个电子商务站点可能确定其站点可用性最重要,并对危险程度分配等级 10。毕竟,如果客户不能购买,该站点也就赚不到钱。对站点可用性的常见威胁是 SYN 攻击,它是一种拒绝服务攻击,利用 IP 的三向握手模型。由于这类攻击相对易于实施,因而投入的级别将为 1。使用上面的公式,可以确定涉及的威胁风险等级为 10/1 或 10。对应用程序的每种潜在威胁执行该计算。应用安全策略
    编辑了按风险等级排列的原始安全威胁列表后,下一步是根据现有的安全策略(通常由应用程序使用者或管理人员制定)进行调整。这些策略可能要求对列表重新排序,而不管前面执行的计算。然后将得到的列表中的每一项放入三个类别之一。第一个类别由已决定忽略的威胁组成。该类别中的威胁可能是不值得为其花费的威胁或风险最小的威胁,如对 Intranet 应用程序进行 DoS 攻击的威胁。第二个类别由您委托第三方(如保险公司或应用程序服务提供商 (ASP))负责的威胁组成。最后,第三个类别由您直接采取措施通过使用技术或用户教育来防御的威胁组成。下面几节讨论该类别的威胁。根据威胁选择安全技术
    由于许多安全技术都可用于保护应用程序,因此,在选择特定技术之前最好了解一下一般对策的概念。这样做有助于确保根据技术的优点选择最佳技术,而不是因为技术具有最新的时髦用语而被选择。设计安全服务
    选择了将使用的安全技术后,下一个任务是设计安全服务来减轻所选定的风险。有一点很重要,应认识到建立良好的安全服务只是减少了应用程序被成功攻击的机会。应用程序 100% 不被攻破是不可能的,这就是持续警戒是安全性的一个重要方面的原因。实际上,计算机上保存的所有数据都有一定价值。有时其价值不大,如朋友之间问好的简单电子邮件。但有时候价值非凡,如与军事机密或商业策略有关的文档。在为数据确定适当的安全服务级别时,需要考虑以下内容: 数据的价值(创建数据的成本以及数据泄露给恶意用户时单位要付出的代价) 
    注意 数据泄露时单位的付出代价还包括因客户或股东信任受损而导致的无形代价。
    保护数据的成本 
    可用性权衡 
    请参见
    安全性
      

  2.   

    看看这个帖子,会对你有帮助
    http://expert.csdn.net/Expert/topic/1451/1451813.xml?temp=.574505