标识 HTTP 用户

标识过程即建立用户身份的过程。 这涉及如何针对 HTTP 应用程序协议建立用户身份。

关于此任务

对于 HTTP 应用程序协议,您可以使用下列方式标识用户:
  • 可以使用 HTTP 基本认证,从 web 客户机获取用户标识。
  • 如果 Web 浏览器发送客户机证书,那么您可以使用与该证书关联的用户标识。
    您可以通过两种方式将证书与 RACF® 用户标识相关联:
    • 您可以使用 RACF 命令将证书与用户标识关联。
    • CICS® 可以自动发出 RACF 命令,以将证书与用户标识 (通过 HTTP 基本认证从 Web 客户机获取) 相关联。
    使 RACF 用户标识与证书相关联 指示您如何执行此操作。
仅对于应用程序生成的响应,CICS 还可以代表 web 客户机在以下位置提供用户标识:
  • 在请求的处理路径中使用的分析器程序中。
  • 在请求的 URIMAP 定义的 USERID 属性中。
  • 作为 CICS 缺省用户标识。
如果使用 URIMAP 定义或分析器程序来设置客户机未提供的用户标识,或者允许使用 CICS 缺省用户标识,那么不会认证客户机的身份。 仅当与您自己的客户机系统通信时才执行此操作,前提是该系统已经认证了其用户,并在安全的环境中与服务器通信。
当应用程序提供 HTTP 响应(应用程序生成的响应)时,用户标识的优先顺序是:
  1. 使用分析器程序设置的用户标识。 该用户标识可以覆盖从 Web 客户机中获取的用户标识或 URIMAP 定义提供的用户标识。
  2. 使用基本认证从 Web 客户机获取的用户标识,或与 Web 客户机发送的客户机证书关联的用户标识。 如果连接需要进行认证,但客户机不提供已认证的用户标识,那么请求将被拒绝。
  3. 在请求的 URIMAP 定义中指定的用户标识。
  4. CICS 缺省用户标识(如果不能确定其他用户标识)。

当由指定 CICS 文档模板或 z/OS UNIX 文件(静态响应)的 URIMAP 定义提供 HTTP 响应时,用于 Web 客户机的用户标识是使用基本认证从 Web 客户机获取的用户标识,或者是与 Web 客户机发送的客户机证书关联的用户标识。 对于静态响应,不能代表 Web 客户机提供用户标识,也不能覆盖从 Web 客户机获取的已认证的用户标识。

对于静态响应,如果针对事务指定进行资源安全检查,那么 CICS 只使用提供的用户标识。 静态响应不需要缺省用户标识。 如果 Web 客户机未提供用户标识,那么不执行任何资源安全检查,即使已对该事务启用了资源安全性。

注: CICS 在此处描述的过程中使用密码验证来验证用户标识。 对于用于登录到 CICS 区域的每个用户标识, CICS 每天强制一次完整验证请求。 使用 RACROUTE REQUEST = VERIFY 宏的完整验证请求使 RACF 记录用户标识的上次访问日期和时间,并写入用户统计信息。

下列用于标识用户的方法由 TCPIPSERVICE 定义的 AUTHENTICATE 和 SSL 属性确定:

表 1. 如何标识 HTTP 客户机的用户
AUTHENTICATE SSL 如何标识用户
NO 或 YES 客户机未提供用户标识。 可由分析器程序或 URIMAP 定义提供用户标识,或者允许使用 CICS 缺省用户标识(如果可用)。
CLIENTAUTH 或 ATTLSAWARE

如果客户机发送与用户标识关联的证书,那么应用该用户标识,除非该标识已由分析器程序覆盖。

如果客户机发送未与用户标识关联的证书,那么分析器程序或 URIMAP 定义将提供用户标识,或者允许使用 CICS 缺省用户标识(如果适用)。

BASIC 所有值

如果客户机发送与用户标识关联的证书,那么应用该用户标识,除非该标识已由分析器程序覆盖。

如果客户机发送未与用户标识关联的证书,那么使用 HTTP 基本认证从客户机获取用户标识,并在证书中注册用户标识。

如果客户机未发送证书,那么将使用 HTTP 基本认证(可由分析器程序改写)从客户机获取用户标识。

CERTIFICATE CLIENTAUTH 或 ATTLSAWARE

如果客户机发送与用户标识关联的证书,那么应用该用户标识,除非该标识已由分析器程序覆盖。

如果客户发送未与用户标识关联的证书,或者没有发送证书,那么将拒绝连接。

AUTOREGISTER CLIENTAUTH 或 ATTLSAWARE

如果客户机发送与用户标识关联的证书,那么应用该用户标识,除非该标识已由分析器程序覆盖。

如果客户机发送未与用户标识关联的证书,那么使用 HTTP 基本认证从客户机获取用户标识,并在证书中注册用户标识。

如果客户机未发送证书,那么将拒绝连接。

AUTOMATIC NO 或 YES 使用 HTTP 基本认证从客户机获取的用户标识。 可以由分析器程序覆盖。
AUTOMATIC CLIENTAUTH 或 ATTLSAWARE

如果客户机发送与用户标识关联的证书,那么应用该用户标识,除非该标识已由分析器程序覆盖。

如果客户机发送未与用户标识关联的证书,那么使用 HTTP 基本认证从客户机获取用户标识,并在证书中注册用户标识。

如果客户机未发送证书,那么使用 HTTP 基本认证从客户机获取用户标识。

注:
  1. 该表没有列出无效且无法在 TCPIPSERVICE 定义中指定的 AUTHENTICATE 和 SSL 属性值的组合。
  2. 如果使用 HTTP 基本认证,那么 CICS 将验证密码。 如果密码无效,将拒绝连接。