检索有关 HTTP 请求的技术和安全信息
应用程序可以获取有关 HTTP 请求的 TCP/IP 环境的信息(包括正在使用的安全选项),以及有关 Web 客户机已提供的客户机证书的信息。
关于此任务
CICS® 管理 Web 客户机与服务器之间的 TCP/IP 连接,应用相应的安全措施,并管理认证 Web 客户机身份的过程。 CICS 对每个连接执行的操作由您在接收 Web 客户机请求的端口的 TCPIPSERVICE 定义中设置的选项确定。 用户编写的应用程序可以检查此过程获取的信息是否可用于确定如何处理该请求。 例如,您可以获取发送 HTTP 请求的 Web 客户机的主机名和 IP 地址,或检查连接的安全和加密级别。
EXTRACT TCPIP 命令提供有关 TCP/IP 连接和 TCPIPSERVICE 定义中指定的安全性选项的信息。 EXTRACT CERTIFICATE 命令提供从安全套接字层 (SSL) 握手期间从 Web 客户机接收的任何 X.509 客户机证书获取的信息。
过程
- 要获取发送 HTTP 请求的 Web 客户机的主机名和 IP 地址,请使用具有 CLIENTNAME 和 CLIENTADDR 选项的 EXTRACT TCPIP 命令。IP 地址以二进制数字或字符串形式提供,该字符串包含其冒号十六进制或点分十进制表示法。
- 要获取运行应用程序的主机系统 (即 CICS 本身) 的主机名和 IP 地址,请使用带有 SERVERNAME 和 SERVERADDR 选项的 EXTRACT TCPIP 命令。 同样,此 IP 地址也以二进制数字形式提供,或以包含其冒号十六进制或点分十进制表示法的字符串形式提供。
- 要获取接收请求的端口号,可以使用具有 PORTNUMBER 选项的 EXTRACT TCPIP 命令。端口号作为二进制数字或字符串提供。 也可以使用具有 PORTNUMBER 选项的 WEB EXTRACT 命令。
- 要获取与请求关联的 TCPIPSERVICE 资源定义的名称,使用具有 TCPIPSERVICE 选项的 EXTRACT TCPIP 命令。
- 要识别 TCPIPSERVICE 定义中指定的认证类型(基本认证、客户机证书认证或没有认证),使用具有 AUTHENTICATE 选项的 EXTRACT TCPIP 命令。CICS(r) 作为 HTTP 服务器: 认证和标识 说明了有关不同认证类型的更多信息。
- 要识别是否在 TCPIPSERVICE 定义中指定了安全套接字层 (SSL) 支持和使用的 SSL 加密级别,那么使用具有 SSLTYPE 和 PRIVACY 选项的 EXTRACT TCPIP 命令。使用 CICS Web Support 的 SSL 说明了有关 SSL 的更多信息。
- 要从 X.509 证书(该证书是在 SSL 握手期间从 Web 客户机接收的)检索信息,请使用 EXTRACT CERTIFICATE 命令。CICS 已通过根据安全管理器数据库和您可以设置的证书撤销列表对所提供的证书进行检查来验证该证书。证书包含两类字段:一类字段标识证书的对象(有时称为所有者或用户);另一类字段标识颁发证书的认证中心(颁发者)。 可以通过指定 OWNER 或 ISSUER 选项来选择您需要的信息。 您还可以使用 SERIALNUM 和 USERID 选项来检索证书的序列号以及与该证书关联的 RACF® 用户标识。对安全协议的支持 说明了有关证书内容及其使用方式的更多信息。