12.1.1 安全连接.htm
来自「Windows2000后台服务程序开发手册」· HTM 代码 · 共 734 行 · 第 1/5 页
HTM
734 行
Black><B style="LINE-HEIGHT: 25px">说明</B></FONT> </P>
<P><FONT style="LINE-HEIGHT: 25px" face=arial color=#000000
size=2>本章稍后的〈CryptoAPI〉一节将说明用来做凭证管理的CryptoAPI函数。有关CryptoAPI的更多资讯,请参阅《Platform
SDK》文件。</FONT></P>
<HR style="LINE-HEIGHT: 25px">
<P><FONT style="LINE-HEIGHT: 25px" face=arial color=#3e74d7
size=3><B style="LINE-HEIGHT: 25px">Security Support Provider
Interface(SSPI)<BR style="LINE-HEIGHT: 25px"> </B></FONT></P>
<P><FONT style="LINE-HEIGHT: 25px" face=arial color=#000000
size=2>Windows能够使用不同的安全性通讯协定而通讯,例如我们已经讨论过的NTLM及Kerberos(在本章稍后将会讨论SSL)。这些通讯协定的系统内部实作是模组单元,即Security
Support Providers,或SSPs(一个单独的SSP有时候被称为<FONT
style="LINE-HEIGHT: 25px" face=arial color=#3e80d7 size=2><B
style="LINE-HEIGHT: 25px"> 安全性封包(security
package) </B></FONT>,或<FONT style="LINE-HEIGHT: 25px"
face=arial color=#3e80d7 size=2><B
style="LINE-HEIGHT: 25px"> 封包(package) </B></FONT>)。这个实作可让系统以标准化的方法使用多种安全性通讯协定,也可以让Windows的开发人员建立新的SSPs,并把它们并入系统中(事实上,它也能让协力厂商建立与Windows一起使用的SSPs)。</FONT></P>
<P><FONT style="LINE-HEIGHT: 25px" face=arial color=#000000
size=2>您可能会猜测系统也为SSPs提供了程序设计介面,它可让您的软件使用系统所提供的安全性通讯协定。这个介面被称为Security
Support Provider
Interface,或是SSPI。SSPI是个非常强大的一组函数。以下是它所提供的一些特色:</FONT></P><FONT
style="LINE-HEIGHT: 25px" face=arial color=#000000 size=2>
<UL style="LINE-HEIGHT: 25px">
<LI style="LINE-HEIGHT: 25px">通讯传输独立。<BR
style="LINE-HEIGHT: 25px">
<LI style="LINE-HEIGHT: 25px">多种SSPs的一般介面。<BR
style="LINE-HEIGHT: 25px">
<LI style="LINE-HEIGHT: 25px">验证(包括模拟)。<BR
style="LINE-HEIGHT: 25px">
<LI style="LINE-HEIGHT: 25px">讯息私密性(加密)。<BR
style="LINE-HEIGHT: 25px">
<LI style="LINE-HEIGHT: 25px">讯息完整性(签章)。<BR
style="LINE-HEIGHT: 25px"> </LI></UL></FONT>
<P><FONT style="LINE-HEIGHT: 25px" face=arial color=#000000
size=2>每个特色都由SSPI函数管理,所以您的程序代码不必处理加密及实作安全性通讯协定的细节。您的程序代码可以做它所擅长的事,从客户端来回地传递资讯以及执行代表它们的任务。</FONT></P>
<P><FONT style="LINE-HEIGHT: 25px" face=arial color=#000000
size=2>在讨论SSPI提供的协定之前,我想要先针对传输独立作些说明。SSPI建立从客户端传送到服务器的<FONT
style="LINE-HEIGHT: 25px" face=arial color=#3e80d7 size=2><B
style="LINE-HEIGHT: 25px"> 安全性二进位大型物件(Blobs) </B></FONT>,反之亦然。SSPI也将取得资料并修改它,建立服务器及客户端软件来回间传送之加密或签章的安全性Blobs。您可以传送由SSPI函数传回的Blob,接收端会传递Blob到它的SSPI函数中,而函数负责转译资讯。SSPI函数并不会实际传递这个资料,而是透过软件来传送。</FONT></P>
<P><FONT style="LINE-HEIGHT: 25px" face=arial color=#000000
size=2>SSPI的传输独立给予软件极大的弹性。由于软件的工作是传递SSPI所建立的资料,您可以使用任何想要的通讯机制,包括通讯端、命名管道、NetBEUI及IPX/SPX。实际上,SSPI的其中一位设计者想要指出您可以将经由SSPI函数所回传的安全性Blobs记录至一个像乌龟的构造中,此时电脑可以读取Blob并将它传回SSPI(想像第一个服务器的授权者模拟一个客户端的情形,二者之间就像透过一个爬虫类通讯一样)。</FONT></P>
<P><FONT style="LINE-HEIGHT: 25px" face=arial color=#000000
size=2>很难想像到常见用户端/服务器环境中的SSPI竟无法符合您的需要,最可能的情况是您被强迫支持SSPI不支援的现行通讯协定。在这种情况下,您可能会被迫使用CryptoAPI或一些其他的函数组,以处理密码学及其他的细节。然而,假如您喜欢从基础开始设计客户端及服务器的工作,或者结合已经使用SSPI支援协定的软件,那么您应该在程序代码中使用SSPI。</FONT></P>
<P><FONT style="LINE-HEIGHT: 25px" face=arial color=#000000
size=2>表12-1中显示在编写本书时SSPI所支援的安全性通讯协定,包括哪种平台可用的通讯协定及每个通讯协定的专门特色。这个资讯可以帮助您决定最适当的通讯协定。</FONT></P>
<CENTER style="LINE-HEIGHT: 25px">
<P></P>
<P class=content_page><STRONG><FONT
color=#ff0033>[1]</FONT></STRONG> <A
href="http://www.acejoy.com/Html/Article/network/6620061103183849_P2.html">[2]</A> <A
href="http://www.acejoy.com/Html/Article/network/6620061103183849_P3.html">[3]</A> <A
href="http://www.acejoy.com/Html/Article/network/6620061103183849_P4.html">[4]</A> <A
href="http://www.acejoy.com/Html/Article/network/6620061103183849_P2.html">下一页</A></P></DIV><BR><BR></CENTER></DIV></DIV></TD></TR></TBODY></TABLE>
<TABLE style="CLEAR: both" cellSpacing=0 cellPadding=0 width="97%">
<TBODY>
<TR>
<TD align=right>
<TABLE>
<TBODY>
<TR>
<TD>阅读:<SPAN id=news_hits></SPAN>
<SCRIPT src="12.1.1 安全连接.files/GetHits.htm"
type=text/JavaScript></SCRIPT>
次<BR>录入:<A
href="http://www.acejoy.com/User/Info.Asp?UserName=admin">admin</A><BR><BR></TD></TR></TBODY></TABLE></TD></TR>
<TR>
<TD align=right>【 <A
href="http://www.acejoy.com/Comment.asp?ChannelID=1&Action=Write&InfoID=66">评论</A>
】 【 <A
href="http://www.acejoy.com/User/SendMail.asp?Title=Windows2000 服务器端应用程序开发设计指南-安全连接(1)"
target=_blank>推荐</A> 】 【 <A href="javascript:window.print()">打印</A>
】 </TD></TR></TBODY></TABLE>
<TABLE style="CLEAR: both" width="97%" align=center>
<TBODY>
<TR>
<TD>上一篇:<A
title="标题:Windows2000 服务器端应用程序开发设计指南-使用者环境 作者:Jeffrey Richter Jason D. Clark 更新:2006-11-2 10:17:03 点击:853"
href="http://www.acejoy.com/Html/Article/network/6520061102101703.html">Windows2000
服务器端应用程序开发设计指南-使用者环境</A><BR>下一篇:<A
title="标题:Windows2000 服务器端应用程序开发设计指南-安全连接(2) 作者:Jeffrey Richter Jason D. Clark 更新:2006-11-3 18:41:18 点击:376"
href="http://www.acejoy.com/Html/Article/network/6720061103184118.html">Windows2000
服务器端应用程序开发设计指南-安全连接(2)</A> </TD></TR></TBODY></TABLE></TD>
<TD class=mr></TD></TR></TBODY></TABLE></DIV></DIV>
<DIV class=mframe>
<TABLE cellSpacing=0 cellPadding=0 width="100%" align=center>
<TBODY>
<TR>
<TD class=tl></TD>
<TD class=tm><SPAN class=tt>相关新闻</SPAN> </TD>
<TD class=tr></TD></TR></TBODY></TABLE>
<TABLE cellSpacing=0 cellPadding=0 width="100%" align=center>
<TBODY>
<TR>
<TD class=ml></TD>
<TD class=mm>
<TABLE height="100%" cellSpacing=5 cellPadding=0 width="100%" border=0>
<TBODY>
<TR>
<TD vAlign=top>
<SCRIPT language=javascript
src="12.1.1 安全连接.files/GetCorrelative.htm"></SCRIPT>
</TD></TR></TBODY></TABLE></TD>
<TD class=mr></TD></TR></TBODY></TABLE>
<TABLE cellSpacing=0 cellPadding=0 width="100%" align=center>
<TBODY>
<TR>
<TD class=tl></TD>
<TD class=tm><SPAN class=tt>本文评论</SPAN> </TD>
<TD class=tr></TD></TR></TBODY></TABLE>
<TABLE cellSpacing=0 cellPadding=0 width="100%" align=center>
<TBODY>
<TR>
<TD class=ml></TD>
<TD class=mm>
<P> </P>
<TABLE height="100%" cellSpacing=5 cellPadding=0 width="100%" border=0>
<TBODY>
<TR>
<TD vAlign=top>
<SCRIPT language=javascript
src="12.1.1 安全连接.files/Comment.htm"></SCRIPT>
</TD></TR></TBODY></TABLE></TD>
<TD class=mr></TD></TR></TBODY></TABLE>
<TABLE cellSpacing=0 cellPadding=0 width="100%" align=center>
<TBODY>
<TR>
<TD class=ml></TD>
<TD class=mm></TD>
<TD class=mr></TD></TR></TBODY></TABLE></DIV>
<TABLE id=footer cellSpacing=0 cellPadding=0 border=0>
<TBODY>
<TR style="LINE-HEIGHT: 130%" align=middle>
<TD height=23> <A
href='javascript:window.external.addFavorite("http://www.acejoy.com","ACE开发者")'><FONT
color=#000000>加入收藏</FONT></A> - <A
href="http://www.acejoy.com/Help.asp?Action=aboutweb" target=_blank><FONT
color=#000000>关于本站</FONT></A> - <A class=Bottom
href="http://www.acejoy.com/Help.asp?Action=Copyright" target=_blank><FONT
color=#000000>版权申明</FONT></A> - <A class=Bottom
href="http://www.acejoy.com/Help.asp?Action=aboutweb" target=_blank><FONT
color=#000000>联系站长</FONT></A> - <A class=Bottom
href="http://www.acejoy.com/LinkSite.asp" target=_blank><FONT
color=#000000>友情链接</FONT></A> </TD></TR>
<TR align=middle>
<TD height=23>Copyright© 2004-2006 <A
href="http://www.acejoy.com/">http://www.acejoy.com/</A> .All Righ
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?