DEFINE AUTHINFO (定义认证信息对象)
使用 MQSC 命令 DEFINE AUTHINFO 来定义认证信息对象。 这些对象包含在 LDAP 服务器上使用 OCSP 或证书撤销列表 (CRL) 执行证书撤销检查所需的定义,以及检查应用程序提供的认证凭证所需的定义。
使用 MQSC 命令
有关如何使用 MQSC 命令的信息,请参阅 使用 MQSC 命令管理 IBM® MQ。
您可以从源发出此命令 2CR。 有关源符号的说明,请参阅 可在 IBM MQ for z/OS®上发出 MQSC 和 PCF 命令的源。
同义词:DEF AUTHINFO
语法图中主线上方显示的值是 IBM MQ随附的缺省值,但您的安装可能已更改这些值。 有关如何使用这些图的说明,请参阅 如何读取语法图。
TYPE (CRLLDAP) 的语法图
TYPE (OCSP) 的语法图
TYPE (IDPWOS) 的语法图
TYPE (IDPWLDAP) 的语法图
DEFINE AUTHINFO 的使用说明
在 IBM i上, AUTHTYPE (CRLLDAP) 和 AUTHTYPE (OCSP) 的认证信息对象仅通过使用 AMQCLCHL.TAB。 证书由每个认证中心的 "数字 Certificate Manager " 定义,并针对 LDAP 服务器进行验证。
DEFINE AUTHINFO 的参数描述
- name
- 认证信息对象的名称。 此参数是必需的。
该名称不得与当前在此队列管理器上定义的任何其他认证信息对象名相同 (除非指定了 REPLACE 或 ALTER )。 请参阅 用于命名 IBM MQ 对象的规则。
- ADOPTCTX
- 是否将提供的凭证用作此应用程序的上下文。 这意味着它们用于授权检查,显示在管理屏幕上,并显示在消息中。
- YES
- MQCSP 结构中提供的已成功验证的认证凭证中的用户标识将采用作为用于此应用程序的上下文。 因此,此用户标识已检查凭证以获取使用 IBM MQ 资源的授权。
- NO
- 将对 MQCSP 结构中提供的凭证执行认证,但不会采用这些凭证以供进一步使用。 使用运行应用程序的用户标识执行授权。
- AUTHENMD
- 认证方法。 是使用操作系统还是使用可插入认证方法 (PAM) 来认证用户密码。
![[AIX]](ngaix.gif)
OS- 使用传统的 UNIX 密码验证方法。
![[AIX]](ngaix.gif)
PAM- 使用 PAM 来认证用户密码。
只能在 AIX and Linux上设置 PAM 值。
仅当运行 REFRESH SECURITY TYPE (CONNAUTH) 命令后,对此属性的更改才会生效。
此属性仅对 IDPWOS的 AUTHTYPE 有效。
- AUTHORMD
- 授权方法。
- OS
- 使用操作系统组确定用户的关联权限。
这是 IBM MQ 先前的工作方式,并且是缺省值。
- SEARCHGRP
- LDAP 存储库中的组条目包含一个属性,该属性列出属于该组的所有用户的专有名称。 成员资格由 FINDGRP中定义的属性指示。 此值通常是 member 或 uniqueMember。
- SEARCHUSR
- LDAP 存储库中的用户条目包含一个属性,该属性列出指定用户所属的所有组的专有名称。 要查询的属性由 FINDGRP 值 (通常为 memberOf) 定义。
- SRCHGRPSN
- LDAP 存储库中的组条目包含一个属性,该属性列出属于该组的所有用户的短用户名。 包含短用户名的用户记录中的属性由 SHORTUSR指定。成员资格由 FINDGRP中定义的属性指示。 此值通常为 memberUid。注: 仅当所有用户短名称都不同时,才应使用此授权方法。
许多 LDAP 服务器使用组对象的一个属性来确定组的成员资格,因此应将该值设置为 SEARCHGRP 。
Microsoft Active Directory 通常将组成员资格存储为用户属性。 IBM Tivoli Directory Server 支持这两种方法。
通常,通过用户属性检索成员资格将比搜索将用户列为成员的组更快。
- AUTHTYPE
- 认证信息的类型。
- CRLLDAP
- 证书撤销列表检查是使用 LDAP 服务器完成的。
- IDPWLDAP
- 连接认证用户标识和密码检查是使用 LDAP 服务器完成的。
注意: 此选项在 IBM MQ for z/OS 上不可用 - IDPWOS
- 连接认证用户标识和密码检查是使用操作系统完成的。
- OCSP
- 使用 OCSP 完成证书撤销检查。具有 AUTHTYPE(OCSP) 的认证信息对象不适用于以下平台上的队列管理器:
IBM i
z/OS
此参数是必需的。
您不能将一个身份验证信息对象定义为 LIKE 一个具有不同 AUTHTYPE 的身份验证信息对象。 创建身份验证信息对象后,不能更改 AUTHTYPE 。
- BASEDNG
- 组的基本 DN。
- BASEDNU(基准 DN)
- 为了能够找到短用户名属性 (请参阅 SHORTUSR ) 必须使用基本 DN 设置此参数,才能在 LDAP 服务器中搜索用户。
此属性仅对 IDPWLDAP的 AUTHTYPE 有效。
- CHCKCLNT
- 该属性决定了客户端应用程序的身份验证要求,仅对 AUTHTYPE 的 IDPWOS 或 IDPWLDAP 有效。 可能的值为:
- NONE
- 不检查客户机应用程序提供的认证凭证。 如果用户标识和密码或认证令牌 由客户机应用程序提供,那么将忽略凭证。 ADOPTCTX 将不起作用,并且 MQCSP 中包含的任何用户标识以后都不会用于授权检查。
- OPTIONAL
- 客户机应用程序不需要提供认证凭证。
- REQUIRED
- 所有客户机应用程序都必须在 MQCSP 结构中提供认证凭证。
- REQDADM
- 所有使用特权用户标识的客户机应用程序都必须在 MQCSP 结构中提供认证凭证。 任何使用非特权用户 ID 的客户端应用程序都不需要提供身份验证凭据,而是按照 OPTIONAL 设置进行处理。
重要说明:- 此属性可由与客户机连接匹配的 CHLAUTH 规则的 CHCKCLNT 属性覆盖。 因此,队列管理器上的 CONNAUTH AUTHINFO CHCKCLNT 属性决定了对不匹配 CHLAUTH 规则或匹配的 CHLAUTH 规则有 CHCKCLNT ASQMGR 的客户端连接的默认客户端检查行为。
- 如果选择 NONE ,且客户端连接与 CHCKCLNT REQUIRED (或 z/OS 以外平台上的 REQDADM )的 CHLAUTH 记录相匹配,则连接失败。 您会收到以下消息:
Multiplatforms上的AMQ9793 。
z/OS上的CSQX793E 。
- 该参数仅在 TYPE(USERMAP), TYPE(ADDRESSMAP) 和 TYPE (SSLPEERMAP) 时有效,并且仅当 未设置为 时有效。 USERSRC NOACCESS
- 此参数仅适用于服务器连接通道的入站连接。
- CHCKLOCL
- 该属性决定本地绑定应用程序的身份验证要求,仅对 AUTHTYPE 的 IDPWOS 或 IDPWLDAP 有效。
- CLASSGRP
- 用于 LDAP 存储库中的组记录的 LDAP 对象类。
- CLASSUSR( LDAP 类别名称 )
- 用于 LDAP 存储库中的用户记录的 LDAP 对象类。
CMDSCOPE- 此参数仅适用于 z/OS ,并指定当队列管理器是队列共享组的成员时该命令的运行方式。CMDSCOPE 必须为空或本地队列管理器 (如果 QSGDISP 设置为 GROUP)。
- ' '
- 该命令在输入该命令的队列管理器上运行。
- qmgr-名称
- 如果队列管理器在队列共享组中处于活动状态,那么该命令将在您指定的队列管理器上运行。
仅当您正在使用共享队列环境并且已启用命令服务器时,才能指定除输入该队列管理器的队列管理器以外的队列管理器名称。
- *
- 该命令在本地队列管理器上运行,并且还会传递到队列共享组中的每个活动队列管理器。 * 的效果与在队列共享组中的每个队列管理器上输入命令的效果相同。
- CONNAME(连接名称)
- 运行 LDAP 服务器的主机的主机名, IPv4 点分十进制地址或 IPv6 十六进制表示法,带有可选端口号。
如果将连接名称指定为 IPv6 地址,那么只有具有 IPv6 堆栈的系统才能解析此地址。 如果 AUTHINFO 对象是队列管理器的 CRL 名称列表的一部分,请确保使用队列管理器生成的客户机通道表的任何客户机都可以解析连接名称。
在 z/OS上,如果 CONNAME 要解析为 IPv6 网络地址,那么需要支持 IPv6 以连接到 LDAP 服务器的级别 z/OS 。CONNAME 的语法与通道的语法相同。 例如
其中 nnn 是端口号。conname(' hostname (nnn)')字段的最大长度取决于您的平台:
在 AIX, Linux, and Windows上,最大长度为 264 个字符。
在 IBM i上,最大长度为 264 个字符。
在 z/OS上,最大长度为 48 个字符。
该属性仅对 AUTHTYPE 的 CRLLDAP 和 IDPWLDAP 有效,此时该属性为必选属性。
当与 AUTHTYPE IDPWLDAP 一起使用时,可以是以逗号分隔的连接名称列表。
- DESCR(字符串 )
- 纯文本注释。 它在操作员发出 DISPLAY AUTHINFO 命令时提供有关认证信息对象的描述性信息 (请参阅 DISPLAY AUTHINFO (显示认证信息))。
它必须只包含可显示的字符。 最大长度为 64 个字符。 在 DBCS 安装中,它可以包含 DBCS 字符(最大长度为 64 个字节)。
注: 如果使用的字符不在此队列管理器的编码字符集标识 (CCSID) 中,那么如果将信息发送到另一个队列管理器,那么可能无法正确转换这些字符。 - FAILDLAY(延迟时间)
- 如果为连接认证提供了认证凭证,并且由于凭证不正确而导致认证失败,那么这是在将失败返回到应用程序之前的延迟 (以秒为单位)。
这有助于避免应用程序在接收到故障后连续重试的忙碌循环。
该值必须在 0-60 秒范围内。 缺省值为 1。
该属性仅对 AUTHTYPE 的 IDPWOS 和 IDPWLDAP 有效。
- FINDGRP
- LDAP 条目中用于确定组成员资格的属性的名称。
当 AUTHORMD= SEARCHGRP 时, FINDGRP 属性通常设置为 member 或 uniqueMember 。
当 AUTHORMD= SEARCHUSR 时, FINDGRP 属性通常设置为 memberOf 。
当 AUTHORMD= SRCHGRPSN 时, FINDGRP 属性通常设置为 memberUid 。
- GRPFIELD
- 用于表示组的简单名称的 LDAP 属性。
- LDAPPWD(LDAP 密码)
- 与正在访问 LDAP 服务器的用户的专有名称关联的密码。 其最大大小为 32 个字符。
该属性仅对 AUTHTYPE 的 CRLLDAP 和 IDPWLDAP 有效。
在 z/OS上,用于访问 LDAP 服务器的 LDAPPWD 可能不是 AUTHINFO 对象中定义的。 如果在 QMGR 参数 SSLCRLNL引用的名称列表中放置了多个 AUTHINFO 对象,那么第一个 AUTHINFO 对象中的 LDAPPWD 将用于访问所有 LDAP 服务器。 - LDAPUSER(LDAP 用户)
- 访问 LDAP 服务器的用户的专有名称。 (请参阅 SSLPEER 参数以获取有关专有名称的更多信息。)
该属性仅对 AUTHTYPE 的 CRLLDAP 和 IDPWLDAP 有效。
用户名的最大大小如下所示:
Multiplatforms 上的 1024 个字符
256 个字符 z/OS
在 z/OS上,用于访问 LDAP 服务器的 LDAPUSER 可能不是 AUTHINFO 对象中定义的。 如果在 QMGR 参数 SSLCRLNL引用的名称列表中放置了多个 AUTHINFO 对象,那么第一个 AUTHINFO 对象中的 LDAPUSER 将用于访问所有 LDAP 服务器。
在多平台上,可接受的最大行长定义为 BUFSIZ ,可在 stdio.h 中找到。 - LIKE(authinfo-name )
- 认证信息对象的名称,其中包含用于对此定义建模的参数。
在 z/OS 上,队列管理器会搜索具有您指定的名称和 QMGR 或 COPY 处置的对象。 LIKE 对象的处置不会复制到您定义的对象中。注:- 未搜索 QSGDISP (GROUP) 对象。
- LIKE 如果指定了 ,则"...... "将被忽略。 QSGDISP(COPY) 不过,定义的组对象是作为 LIKE 对象使用的。
- NESTGRP
- 组嵌套。
- NO
- 仅考虑初始发现的组进行授权。
- YES
- 将以递归方式搜索组列表以枚举用户所属的所有组。
递归搜索组列表时使用组的专有名称,而不考虑 AUTHORMD中选择的授权方法。
- OCSPURL(回复者URL
- 用来检查证书撤销的OCSP响应程序URL。 此值必须是包含 OCSP 响应程序主机名和端口号的 HTTP URL。 如果 OCSP 响应程序正在使用端口 80(这是 HTTP 的缺省端口),那么可以省略端口号。 在 RFC 1738 中定义了 HTTP URL。此字段区分大小写。 它必须以小写的字符串 http:// 开头。 根据 OCSP 服务器的实现情况, URL 的其余部分可能会区分大小写。 要保留大小写,请使用单引号来指定 OCSPURL 参数值,例如:
OCSPURL ('http://ocsp.example.ibm.com')此参数仅适用于必需的 AUTHTYPE(OCSP)。
QSGDISP- 此参数仅适用于 z/OS 。
指定要对其应用命令的对象的处置 (即,定义对象的位置及其行为方式)。
表 1. 每个 QSGDISP 值的行为 QSGDISP 定义 COPY 在执行命令的队列管理器的页集上定义对象。 它使用与 LIKE 对象具有相同名称的 QSGDISP(GROUP) 对象。
例如,如果发出以下命令,
队列管理器在共享配置库中搜索名为 auth_name的DEFINE AUTHINFO(auth_name) REPLACE QSGDISP(COPY)AUTHINFO定义。 如果找到匹配的AUTHINFO定义,那么队列管理器将在队列管理器页集上创建此定义的本地副本。对于本地队列,消息存储在每个队列管理器的页集上,并且仅可通过此队列管理器使用。
GROUP 对象定义位于共享的配置库中。 仅当队列管理器位于队列共享组中时,才允许 QSGDISP(GROUP)。
如果 QSGDISP(GROUP) 对象的 DEFINE 成功,则会生成
DEFINE AUTHINFO(auth_name) REPLACE QSGDISP(COPY)命令,并发送给队列共享组中的所有活动队列管理器,以在零页集上创建或刷新本地副本。无论生成的带有 QSGDISP(COPY) 的命令是否失败,针对组对象的 DEFINE 都会生效。
PRIVATE 不允许。 QMGR 在执行命令的队列管理器的页集上定义对象。
- REPLACE 和 NOREPLACE
- 是否要将具有相同处置的现有定义 (以及 z/OS上的现有定义) 替换为此定义。 此参数是可选的。 任何具有不同处置方式的对象都不会更改。
- REPLACE
- 该定义必须替换同名的任何现有定义。 如果不存在定义,那么会创建一个定义。
- NOREPLACE
- 该定义不得替换任何同名的现有定义。
- SECCOMM
- 是否应使用 TLS 安全地连接到 LDAP 服务器
- YES
- 使用 TLS 安全地连接到 LDAP 服务器。
所使用的证书是队列管理器的缺省证书,在队列管理器对象上的 CERTLABL 中指定,或者如果该证书为空白,请参阅 数字证书标签,了解需求中描述的证书。
该证书位于队列管理器对象上 SSLKEYR 中指定的密钥存储库中。 将协商 IBM MQ 和 LDAP 服务器都支持的 cipherspec。
如果队列管理器配置为使用 SSLFIPS(YES) 或 SUITEB 密码规范,那么在与 LDAP 服务器的连接中也会考虑此问题。
- ANON
- 与 LDAP 服务器的连接是使用 TLS 安全地进行的,就像 SECCOMM(YES) 具有一个差异一样。
未将证书发送到 LDAP 服务器; 将以匿名方式建立连接。 要使用此设置,请确保在队列管理器对象上的 SSLKEYR中指定的密钥存储库不包含标记为缺省值的证书。
- NO
- 与 LDAP 服务器的连接不使用 TLS。
- SHORTUSR(用户名)
- 要在 IBM MQ中用作短用户名的用户记录中的字段。
- USRFIELD( LDAP 字段名称 )
- 如果应用程序提供的用于认证的用户标识不包含 LDAP 用户记录中字段的限定符,即不包含等号 (
=) ,那么此属性标识 LDAP 用户记录中用于解释所提供用户标识的字段。此字段可以为空。 如果是这种情况,那么任何未限定的用户标识都将使用 SHORTUSR 参数来解释所提供的用户标识。
此字段的内容将与 "
=' 与应用程序提供的值一起进行签名,以形成要位于 LDAP 用户记录中的完整用户标识。 例如,应用程序提供了fred用户,此字段的值为cn,那么将搜索 LDAP 存储库以查找cn=fred。此属性仅对 IDPWLDAP的 AUTHTYPE 有效。

![[MQ 9.3.4 2023 年 10 月]](ng934.gif)
有关在