📄 security.html
字号:
除了公共密钥以外,证书通常还包括以下信息: </p><div class="pSmartList1"><ul class="pSmartList1"><a name="wp527009"> </a><div class="pSmartList1"><li>持有者的姓名和其他标识,例如使用证书的 Web 服务器的 URL 或个人的电子邮件地址。</li></div><a name="wp527011"> </a><div class="pSmartList1"><li>发布证书的 CA 的名称。</li></div><a name="wp527013"> </a><div class="pSmartList1"><li>失效日期。</li></div></ul></div><a name="wp527017"> </a><p class="pParagraph">数字证书受 x.509 格式的技术规范约束。为检验 <code class="cCode">certificate</code> 区域中某个用户的身份,验证服务将使用 X.509 证书的通用名称字段作为主体名称对 X.509 证书进行检验。 </p><a name="wp527019"> </a><h5 class="pHeading4">关于证书链</h5><a name="wp527021"> </a><p class="pParagraph">Web 浏览器已预先配置了一组浏览器自动信任的 <em class="cEmphasis">root</em> CA 证书。来自其他证书授权机构的所有证书都必须附带<em class="cEmphasis">证书链</em>,以检验这些证书的有效性。证书链是由一系列 CA 发出的证书序列,最终以根 CA 证书结束。 </p><a name="wp527023"> </a><p class="pParagraph">证书最初生成时是一个<em class="cEmphasis">自签名</em>证书。自签名证书是其签发者(签名者)与主题(其公共密钥由该证书进行验证的实体)相同的证书。如果拥有者向 CA 发送证书签名请求 (CSR),然后输入响应,自签名证书将被证书链替换。链的底部是由 CA 发布的、用于验证主题的公共密钥的证书(回复)。链中的下一个证书是验证 CA 的公共密钥的证书。通常,这是一个自签名证书(即,来自 CA、用于验证其自身的公共密钥的证书)并且是链中的最后一个证书。 </p><a name="wp527025"> </a><p class="pParagraph">在其他情况下,CA 可能会返回一个证书链。在此情况下,链的底部证书是相同的(由 CA 签发的证书,用于验证密钥条目的公共密钥),但是链中的第二个证书是由其他 CA 签发的证书,用于验证您向其发送了 CSR 的 CA 的公共密钥。然后,链中的下一个证书是用于验证第二个 CA 的密钥的证书,依此类推,直至到达自签名的<em class="cEmphasis">根</em>证书。因此,链中的每个证书(第一个证书之后的证书)都需要验证链中前一个证书的签名者的公共密钥。</p><a name="wp527029"> </a><h4 class="pHeading3">关于安全套接字层</h4><a name="wp527031"> </a><p class="pParagraph"><em class="cEmphasis">安全套接字层</em> (SSL) 是用来确保 Internet 通信和事务安全的最常见的标准。Web 应用程序使用 HTTPS(基于 SSL 的 HTTP),HTTPS 使用数字证书来确保在服务器和客户机之间进行安全、保密的通信。在 SSL 连接中,客户机和服务器在发送数据之前都要对数据进行加密,然后由收件人对其进行解密。</p><a name="wp527033"> </a><p class="pParagraph">当 Web 浏览器(客户机)需要与某个安全站点建立连接时,则会发生 <em class="cEmphasis">SSL 握手</em>:</p><div class="pSmartList1"><ul class="pSmartList1"><a name="wp527035"> </a><div class="pSmartList1"><li>浏览器将通过网络发送请求安全会话的消息(通常请求以 <code class="cCode">https</code> 开头而非 <code class="cCode">http</code> 开头的 URL)。</li></div><a name="wp527037"> </a><div class="pSmartList1"><li>服务器通过发送其证书(包括公共密钥)进行响应。</li></div><a name="wp527039"> </a><div class="pSmartList1"><li>浏览器将检验服务器的证书是否有效,并且该证书是否是由其证书位于浏览器的数据库中的 CA(并且是受信任的 CA)所签发的。它还将检验 CA 证书是否已过期。</li></div><a name="wp527041"> </a><div class="pSmartList1"><li>如果证书有效,浏览器将生成一个一次性的、唯一的<em class="cEmphasis">会话密钥</em>,并使用服务器的公共密钥对该会话密钥进行加密。然后,浏览器将把加密的会话密钥发送给服务器,这样服务器和浏览器都有一份会话密钥。</li></div><a name="wp527043"> </a><div class="pSmartList1"><li>服务器可以使用其专用密钥对消息进行解密,然后恢复会话密钥。</li></div></ul></div><a name="wp527045"> </a><p class="pParagraph">握手之后,即表示客户机已检验了 Web 站点的身份,并且只有该客户机和 Web 服务器拥有会话密钥副本。从现在开始,客户机和服务器便可以使用该会话密钥对彼此间的所有通信进行加密。这样就确保了客户机和服务器之间的通信的安全性。</p><a name="wp527051"> </a><p class="pParagraph">SSL 标准的最新版本称为 TLS(传输层安全性)。Application Server 支持安全套接字层 (SSL) 3.0 和传输层安全性 (TLS) 1.0 加密协议。 </p><a name="wp527061"> </a><p class="pParagraph">要使用 SSL,Application Server 必须拥有接受安全连接的每个外部接口或 IP 地址的证书。只有安装了数字证书之后,大多数 Web 服务器的 HTTPS 服务才能够运行。请使用“<a href="security.html#wp530046" tppabs="http://docs.sun.com/source/819-1553/security.html#wp530046">生成服务器证书</a>”中说明的过程来设置您的 Web 服务器可以用于 SSL 的数字证书。</p><a name="wp527065"> </a><h5 class="pHeading4">关于加密算法</h5><a name="wp527067"> </a><p class="pParagraph"><em class="cEmphasis">加密算法</em>是用于加密或解密的加密算法。SSL 和 TLS 协议支持用于服务器和客户机彼此进行验证、传输证书和建立会话密钥的各种加密算法。 </p><a name="wp527069"> </a><p class="pParagraph">某些加密算法比其他加密算法更强大且更安全。客户机和服务器可以支持不同的加密算法套件。从 SSL3 和 TLS 协议中选择加密算法。在安全连接期间,客户机和服务器同意在通信中使用它们均已启用的最强大的加密算法,因此通常需要启用所有加密算法。</p><a name="wp527071"> </a><h5 class="pHeading4">使用基于名称的虚拟主机</h5><a name="wp527073"> </a><p class="pParagraph">对安全应用程序使用基于名称的虚拟主机可能会带来问题。这是 SSL 协议本身的设计限制。必须先进行 SSL 握手(客户机浏览器在这时接受服务器证书),然后才能访问 HTTP 请求。这样,在验证之前就无法确定包含虚拟主机名的请求信息,因此也不能将多个证书指定给单个 IP 地址。 </p><a name="wp527075"> </a><p class="pParagraph">如果单个 IP 地址上的所有虚拟主机都需要通过同一证书的验证,则添加多个虚拟主机将不会影响服务器上正常的 SSL 操作。但是请注意,大多数浏览器会将服务器的域名与证书中列出的域名(如果有的话,也主要适用于官方的 CA 签名证书)进行比较。如果域名不匹配,这些浏览器将显示警告。通常在生产环境中,只将基于地址的虚拟主机与 SSL 一起使用。 </p><a name="wp527081"> </a><h3 class="pHeading2">关于防火墙 </h3><a name="wp527087"> </a><p class="pParagraph"><em class="cEmphasis">防火墙</em>控制两个或多个网络之间的数据流,并管理网络之间的链接。防火墙可以包含硬件和软件元素。本节介绍了一些常用的防火墙体系结构及其配置。此处的信息主要是针对 Application Server 的。有关特定防火墙技术的详细信息,请参阅防火墙供应商提供的文档。</p><a name="wp527089"> </a><p class="pParagraph">通常,需要对防火墙进行配置,以便客户机访问所需的 TCP/IP 端口。例如,如果 HTTP 侦听器正在端口 8080 上运行,则将防火墙配置为仅允许处理端口 8080 上的 HTTP 请求。同样地,如果为端口 8181 设置了 HTTPS 请求,则必须将防火墙配置为允许处理端口 8181 上的 HTTPS 请求。</p><a name="wp527091"> </a><p class="pParagraph">如果需要通过 Internet 对 EJB 模块进行直接的 RMI-IIOP 访问,RMI-IIOP 全称为 Remote Method Invocations over Internet Inter-ORB Protocol(通过基于 Internet 的 ORB 间协议的远程方法调用),则还需要打开 RMI-IIOP 侦听器端口,但强烈建议您不要这样做,因为这样可能会破坏安全性。 </p><a name="wp527097"> </a><p class="pParagraph">在双防火墙体系结构中,您必须将外部防火墙配置为允许处理 HTTP 和 HTTPS 事务。您必须将内部防火墙配置为允许 HTTP 服务器插件与防火墙后面的 Application Server 进行通信。</p><a name="wp527103"> </a><h3 class="pHeading2">使用管理控制台管理安全性</h3><a name="wp527105"> </a><p class="pParagraph">管理控制台提供了对安全性的以下方面进行管理的方法:</p><div class="pSmartList1"><ul class="pSmartList1"><a name="wp527111"> </a><div class="pSmartList1"><li><a href="security.html#wp527157" tppabs="http://docs.sun.com/source/819-1553/security.html#wp527157">服务器安全性设置</a></li></div><a name="wp527117"> </a><div class="pSmartList1"><li><a href="security.html#wp527175" tppabs="http://docs.sun.com/source/819-1553/security.html#wp527175">区域和 file 区域用户</a></li></div><a name="wp527123"> </a><div class="pSmartList1"><li><a href="security.html#wp527227" tppabs="http://docs.sun.com/source/819-1553/security.html#wp527227">JACC 提供者</a></li></div><a name="wp527129"> </a><div class="pSmartList1"><li><a href="security.html#wp527273" tppabs="http://docs.sun.com/source/819-1553/security.html#wp527273">审计模块</a></li></div><a name="wp527135"> </a><div class="pSmartList1"><li><a href="security.html#wp527329" tppabs="http://docs.sun.com/source/819-1553/security.html#wp527329">消息安全性</a></li></div><a name="wp527141"> </a><div class="pSmartList1"><li><a href="security.html#wp527401" tppabs="http://docs.sun.com/source/819-1553/security.html#wp527401">HTTP 和 IIOP 侦听器安全性</a></li></div><a name="wp527147"> </a><div class="pSmartList1"><li><a href="security.html#wp527455" tppabs="http://docs.sun.com/source/819-1553/security.html#wp527455">管理服务安全性</a></li></div><a name="wp527153"> </a><div class="pSmartList1"><li><a href="security.html#wp527483" tppabs="http://docs.sun.com/source/819-1553/security.html#wp527483">安全映射</a></li></div></ul></div><a name="wp527157"> </a><h4 class="pHeading3">服务器安全性设置</h4><a name="wp527163"> </a><p class="pParagraph">在“安全性设置”页面中,设置整个服务器的属性,包括指定默认区域、匿名角色和默认的主体用户名和密码。有关更多信息,请参见“<a href="security.html#wp527565" tppabs="http://docs.sun.com/source/819-1553/security.html#wp527565">配置安全性设置</a>”。</p><a name="wp527175"> </a><h4 class="pHeading3">区域和 file 区域用户</h4><a name="wp527181"> </a><p class="pParagraph">“<a href="security.html#wp526844" tppabs="http://docs.sun.com/source/819-1553/security.html#wp526844">了解用户、组、角色和区域</a>”中介绍了区域的概念。使用管理控制台可以执行以下任务:</p><div class="pSmartList1"><ul class="pSmartList1"><a name="wp527183"> </a><div class="pSmartList1"><li>创建新区域</li></div><a name="wp527185"> </a><div class="pSmartList1"><li>删除现有区域</li></div><a name="wp527187"> </a><div class="pSmartList1"><li>修改现有区域的配置</li></div><a name="wp527189"> </a><div class="pSmartList1"><li>添加、修改和删除 <code class="cCode">file</code> 区域中的用户</li></div><a name="wp527191"> </a><div class="pSmartList1"><li>设置默认区域</li></div></ul></div><a name="wp527197"> </a><p class="pParagraph">有关这些任务的详细信息,请参见“<a href="security.html#wp527702" tppabs="http://docs.sun.com/source/819-1553/security.html#wp527702">有关区域的管理控制台任务</a>”。</p><a name="wp527227"> </a><h4 class="pHeading3">JACC 提供者</h4><a name="wp527233"> </a><p class="pParagraph">“<a href="security.html#wp526728" tppabs="http://docs.sun.com/source/819-1553/security.html#wp526728">指定 JACC 提供者</a>”中介绍了 JACC 提供者。使用管理控制台可以执行以下任务:</p><a name="wp527235"> </a><p class="pParagraph">添加新的 JACC 提供者</p><div class="pSmartList1"><ul class="pSmartList1"><a name="wp527237"> </a><div class="pSmartList1"><li>删除或修改现有 JACC 提供者</li></div></ul></div><a name="wp527243"> </a><p class="pParagraph">有关这些任务的详细信息,请参见“<a href="security.html#wp528457" tppabs="http://docs.sun.com/source/819-1553/security.html#wp528457">有关 JACC 提供者的管理控制台任务</a>”。</p><a name="wp527273"> </a><h4 class="pHeading3">审计模块</h4><a name="wp527287"> </a><p class="pParagraph">“<a href="security.html#wp526742" tppabs="http://docs.sun.com/source/819-1553/security.html#wp526742">审计验证和授权决策</a>”中介绍了审计模块。审计是记录重要事件(例如错误或安全漏洞)以便随后进行检查的方法。所有验证事件都被记录到 Application Server 日志中。完整的访问日志提供了 Application Server 访问事件的顺序线索。</p><a name=
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -