X.509 证书
TLS 使用 证书 进行认证。 认证在连接时发生,并且独立于应用程序或应用程序协议。
要查看哪些 CICS® 访问方法支持证书,请参阅哪种访问方法可以使用哪种身份验证方法?
为什么使用证书?
TLS 是一种广泛采用的安全协议,用于保护因特网上的通信。 TLS 的主要用例是加密服务器之间的通信。 它还可用于在启用客户机认证 (有时称为 相互认证) 时在服务器之间建立信任。
当许多客户机需要连接到 CICS 时, TLS 客户机认证可能不实用,因为创建和管理证书可能是一项重要工作,例如在证书到期时。
有关 TLS 的更多信息,请参阅 TLS。
证书的工作方式
TLS 客户机认证涉及确保与您通信的站点是他们声称的站点。 使用 TLS 时,将通过交换证书来完成认证,这些证书是采用 ITU-T 标准 X.509中描述的格式的数据块。 X.509 证书由外部机构 (称为 认证中心) 签发和数字签名。
- 两个 专有名称,用于唯一地标识 签发者 (发放证书的认证中心) 和 主体集 (向其发放证书的个人或组织)。 专有名称包含多个可选组件:
- 公共名称
- 组织单元
- 组织
- 位置
- 省/自治区/直辖市
- 国家或地区
- 数字签名。 认证中心使用公用密钥密码术来创建签名:
- 安全散列算法用于创建证书内容的摘要。
- 摘要使用认证中心的专用密钥进行加密。
- 使用认证中心的公用密钥对签名进行解密。
- 制作证书内容的新摘要,并与解密的签名进行比较。 任何差异都指示证书可能已更改。
- 主体的域名。 接收方将此名称与证书的实际发送方进行比较。
- 主题的公用密钥。
证书用于向服务器认证客户机,向客户机认证服务器; 在这两种情况下,使用的机制基本相同。 但是,服务器证书是必需的-即,服务器必须将其证书发送到客户机,但客户机证书是可选的: 某些客户机可能不支持客户机证书; 其他客户机可能未安装证书。 服务器可以决定是否需要对连接进行客户机认证。
- 客户机发出请求。
- 在握手期间,服务器将其证书和其他信息发送到客户机。
- 客户机验证服务器客户机。
- 如果需要客户机 (相互) 认证,那么客户机会将其证书和其他信息发送到服务器。 服务器将验证客户机证书。
客户机证书通常由认证中心 (CA) 的专用密钥签署。 要验证证书,服务器需要使用认证中心的公用密钥。 也可能是 CA 证书本身由另一个 CA 签署。 这样的序列称为 证书路径,服务器必须有权访问该路径中所有 CA 证书的公用密钥。
在 CICS 中支持 TLS 客户机认证
CICS 可以在客户机认证流程中扮演服务器或客户机的角色。 当 CICS 作为服务器时,客户端会收到 CICS 的提示,要求提供证书,由 CICS 验证并与 RACF® 中的用户 ID 关联。当 CICS 作为客户端时,服务器会提示 CICS 提供证书,该证书由服务器验证。
- CICS 自由
CICS Liberty 使用 Java Secure Sockets Extension (JSSE) 作为 TLS 实现。 JSSE 提供了用于处理握手协商 (包括交换证书) 的框架和 Java 实现。 证书存储在密钥库或 RACF 密钥环中。 有关将 TLS 与 CICS Liberty 配合使用的更多信息,请参阅 配置机密性和完整性。
- CICS
CICS 为 IPIC 请求, Web 请求和 CICS Web Service 提供 TLS 支持。 证书存储在 RACF 密钥环中。 有关将 TLS 用于不同 TCP/IP 客户机的更多信息,请参阅 动态数据。
- 应用程序透明传输层安全性 (AT-TLS)
应用透明传输层安全(AT-TLS)是 z/OS® Communications Server 的一项功能。 证书存储在 RACF 密钥环中。 有关更多信息,请参阅 AT-TLS。