X.509 证书

TLS 使用 证书 进行认证。 认证在连接时发生,并且独立于应用程序或应用程序协议。

要查看哪些 CICS® 访问方法支持证书,请参阅哪种访问方法可以使用哪种身份验证方法?

为什么使用证书?

TLS 是一种广泛采用的安全协议,用于保护因特网上的通信。 TLS 的主要用例是加密服务器之间的通信。 它还可用于在启用客户机认证 (有时称为 相互认证) 时在服务器之间建立信任。

当许多客户机需要连接到 CICS 时, TLS 客户机认证可能不实用,因为创建和管理证书可能是一项重要工作,例如在证书到期时。

有关 TLS 的更多信息,请参阅 TLS

证书的工作方式

TLS 客户机认证涉及确保与您通信的站点是他们声称的站点。 使用 TLS 时,将通过交换证书来完成认证,这些证书是采用 ITU-T 标准 X.509中描述的格式的数据块。 X.509 证书由外部机构 (称为 认证中心) 签发和数字签名。

证书包含:
  • 两个 专有名称,用于唯一地标识 签发者 (发放证书的认证中心) 和 主体集 (向其发放证书的个人或组织)。 专有名称包含多个可选组件:
    • 公共名称
    • 组织单元
    • 组织
    • 位置
    • 省/自治区/直辖市
    • 国家或地区
  • 数字签名。 认证中心使用公用密钥密码术来创建签名:
    1. 安全散列算法用于创建证书内容的摘要。
    2. 摘要使用认证中心的专用密钥进行加密。
    数字签名向接收方保证,自证书发放以来,不会对其进行任何更改:
    1. 使用认证中心的公用密钥对签名进行解密。
    2. 制作证书内容的新摘要,并与解密的签名进行比较。 任何差异都指示证书可能已更改。
  • 主体的域名。 接收方将此名称与证书的实际发送方进行比较。
  • 主题的公用密钥。

证书用于向服务器认证客户机,向客户机认证服务器; 在这两种情况下,使用的机制基本相同。 但是,服务器证书是必需的-即,服务器必须将其证书发送到客户机,但客户机证书是可选的: 某些客户机可能不支持客户机证书; 其他客户机可能未安装证书。 服务器可以决定是否需要对连接进行客户机认证。

通过客户机证书认证,服务器会提示客户机提供证书,然后服务器将该证书与用户注册表中的用户标识进行验证和关联。 证书中的身份必须映射到用户注册表中的用户标识。 图 1 演示了 Exchange。
图 1。 TLS 客户机认证流程
TLS 客户机认证流程
  1. 客户机发出请求。
  2. 在握手期间,服务器将其证书和其他信息发送到客户机。
  3. 客户机验证服务器客户机。
  4. 如果需要客户机 (相互) 认证,那么客户机会将其证书和其他信息发送到服务器。 服务器将验证客户机证书。

客户机证书通常由认证中心 (CA) 的专用密钥签署。 要验证证书,服务器需要使用认证中心的公用密钥。 也可能是 CA 证书本身由另一个 CA 签署。 这样的序列称为 证书路径,服务器必须有权访问该路径中所有 CA 证书的公用密钥。

在 CICS 中支持 TLS 客户机认证

CICS 可以在客户机认证流程中扮演服务器或客户机的角色。 当 CICS 作为服务器时,客户端会收到 CICS 的提示,要求提供证书,由 CICS 验证并与 RACF® 中的用户 ID 关联。当 CICS 作为客户端时,服务器会提示 CICS 提供证书,该证书由服务器验证。

您可以通过以下方式使用 CICS 实现 TLS 客户机认证:
  • 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