摘要:
Windows Communication Foundation (WCF) 身份验证服务使你能够使用ASP.NET成员资格,从可以发送和使用SOAP消息的任何应用程序中对用户进行身份验证。这可以包括不使用.NET Framework的应用程序。因此,这些不同的应用程序的用户不需要对每个应用程序使用单独的凭据。用户在使用任意客户端应用程序时,均可通过提供相同的凭据登录到应用程序中。本节就使用WCF身份验证服务的几个关键点做实践性分析。 阅读全文
摘要:
通过前文共同体验了强名称对程序集的保护方式和原理,但是这种保护的强度到底有多大呢?能有效地防御恶意篡改者吗?先看下面的例子。
回到上篇文章的代码清单9-7,重新对StrongNameReferenceLib项目进行强名称签名,然后编译StrongName项目。在StrongName项目的bin目录里有StrongNam.exe和StrongNameReferenceLib.dll两个文件,然后使用ILDasm打开StrongNameReferenceLib.dll文件,转储为il文件,这里使用记事本打开il文件,如图9-19所示。 阅读全文
摘要:
引用强名称程序集的过程对我们来说都是透明的,无需做额外的工作。可以通过这种方式来检验强名称程序集的作用。
首先创建一个类库项目StrongNameReferenceLib,对其进行强名称签名。 阅读全文
摘要:
强名称是由程序集的标识加上公钥和数字签名组成的。其中,程序集的标识包括简单文本名称、版本号和区域性信息(如果提供的话)。强名称是使用相应的私钥,通过程序集文件(包含程序集清单的文件,并因而也包含构成该程序集的所有文件的名称和散列)生成的。Microsoft® Visual Studio® .NET 和在 .NET Framework SDK 中提供的其他开发工具能够将强名称分配给一个程序集。强名称相同的程序集应该是相同的。
通过签发具有强名称的程序集可以确保名称的全局唯一性。强名称满足以下要求:
1) 强名称依赖于唯一的密钥对来确保名称的唯一性。程序集名称不会与任何其他程序集名称相同,因为用一个私钥生成的程序集的名称与用其他私钥生成的程序集的名称不相同。
2) 强名称保护程序集的版本沿袭。强名称可以确保没有人能够生成程序集的后续版本。用户可以确信,他们所加 阅读全文