Kerberos 认证命令

使用 wsadmin 命令来创建,修改或删除 Kerberos 作为 WebSphere® Application Server的认证机制。

注: 在尝试使用 createKrbAuthMechanism 命令在安全性配置文件中创建 KRB5 认证机制安全性对象字段之前,需要下列各项:
  • 如果您还没有 Kerberos 配置文件(krb5.inikrb5.conf),请使用 createkrbConfigFile 命令任务来创建 Kerberos 配置文件。 有关更多信息,请参阅有关创建 Kerberos 配置文件的内容。
  • 对于运行 WebSphere 应用程序服务器的每台机器,必须具有包含 Kerberos 服务主体名称 (SPN) <service name>/<fully qualified hostname>@KerberosRealm的 Kerberos 密钥表文件 (krb5.keytab)。 服务名称可以是任何内容;缺省值为 WAS

    例如,如果有两台应用程序服务器 host1.austin.ibm.comhost2.austin.ibm.com,那么 Kerberos 密钥表文件必须包含 <service name>/host1.austin.ibm.comservice name>/host2.austin.ibm.com SPN 及其 Kerberos 密钥。

创建 Kerberos 认证机制

使用 createKrbAuthMechanism 命令在安全性配置文件中创建 KRB5 认证机制安全性对象字段。

wsadmin 提示符下,输入以下命令:

$AdminTask help createKrbAuthMechanism
表 1. 命令参数 可以将以下参数与 createKrbAuthMechanism 命令配合使用。
选项 描述
<krb5Realm> 此参数是可选的。 它表示 Kerberos 领域名。 如果未指定此参数,将使用 Kerberos 配置文件中的缺省 Kerberos 领域。
<krb5Config> 这是必需参数。 它表示配置(krb5.ini 或 krb5.conf)文件的目录位置和文件名。
<krb5Keytab> 此参数是可选的。 它表示 Kerberos 密钥表文件的目录位置和文件名。 如果未指定此参数,那么使用 Kerberos 配置文件中的缺省密钥表。
<serviceName> 这是必需参数。 它表示 Kerberos 服务名称。 缺省 Kerberos 服务名称是 WAS
<trimUserName> 此参数是可选的。 它将从 Kerberos 领域名前面的“@”开始移除主体用户名的后缀。 此参数是可选的。 缺省值为 true
[z/OS]注: 如果在 z/OS 上同时使用本地操作系统注册表并选择 KERB segment of an SAF user profile 单选按钮将 Kerberos 主体映射到 SAF 标识,那么必须将此字段设置为 true
<enabledGssCredDelegate> 此参数不是必需的。 它用于表示是否抽取客户机 GSS 委派凭证并将其置于主体集中。 缺省值为 true
<allowKrbAuthForCsiInbound> 此参数是可选的。 它为入站公共安全互操作性 (CSI) 启用 Kerberos 认证机制。 缺省值为 true
<allowKrbAuthForCsiOutbound> 这是必需参数。 它为出站 CSI 启用 Kerberos 认证机制。 缺省值为 true
注: Kerberos 配置文件名和 Kerberos 密钥表文件名路径不必是绝对路径。 您可以改为对路径使用 WebSphere 变量。 如果具有混合平台环境,那么可以对 Kerberos 配置文件使用变量 ${CONF_OR_INI}。 安全性配置会将其扩展为 "ini" (对于 Windows) 或 "conf" (对于非 Windows 平台)。例如:
${WAS_INSTALL_ROOT}\etc\krb5\krb5.${CFG_OR_INI}
以下是 createKrbAuthMechanism 命令的示例:
wsadmin>$AdminTask createKrbAuthMechanism { 
		-krb5Realm  WSSEC.AUSTIN.IBM.COM 
		-krb5Config C:\\WINNT\\krb5.ini 
		-krb5Keytab C:\\WINNT\\krb5.keytab 
		-serviceName WAS }

修改 Kerberos 认证机制

使用 modifyKrbAuthMechanism 命令在安全性配置文件中更改 KRB5 认证机制安全性对象字段。

wsadmin 提示符下,输入以下命令:

$AdminTask help modifyKrbAuthMechanism
表 2。 命令参数 可以将以下参数与 modifyKrbAuthMechanism 命令配合使用。
选项 描述
<krb5Realm> 此参数是可选的。 它表示 Kerberos 领域名。 如果未指定此参数,将使用 Kerberos 配置文件中的缺省 Kerberos 领域。
<krb5Config> 这是必需参数。 它表示配置(krb5.ini 或 krb5.conf)文件的目录位置和文件名。
<krb5Keytab> 此参数是可选的。 它表示 Kerberos 密钥表文件的目录位置和文件名。 如果未指定此参数,那么使用 Kerberos 配置文件中的缺省密钥表。
<serviceName> 这是必需参数。 它表示 Kerberos 服务名称。 缺省 Kerberos 服务名称是 WAS
<trimUserName> 此参数是可选的。 它将从 Kerberos 领域名前面的“@”开始移除主体用户名的后缀。 此参数是可选的。 缺省值为 true
<enabledGssCredDelegate> 此参数不是必需的。 它用于表示是否抽取客户机 Kerberos 和 GSS 委派凭证并将其置于 Kerberos 认证令牌 (KRBAuthnToken) 中。 缺省值为 true
注: 如果此参数为 true,并且运行时无法抽取 Kerberos GSS 授权凭证,那么运行时将记录一条警告消息。
<allowKrbAuthForCsiInbound> 此参数是可选的。 它为入站公共安全互操作性 (CSI) 启用 Kerberos 认证机制。 缺省值为 true
<allowKrbAuthForCsiOutbound> 此参数是可选的。 它为出站 CSI 启用 Kerberos 认证机制。 缺省值为 true
注: Kerberos 配置文件名和 Kerberos 密钥表文件名路径不必是绝对路径。 您可以改为对路径使用 WebSphere 变量。 如果具有混合平台环境,那么可以对 Kerberos 配置文件使用变量 ${CONF_OR_INI}。 安全性配置会将其扩展为 "ini" (对于 Windows) 或 "conf" (对于非 Windows 平台)。例如:
${WAS_INSTALL_ROOT}\etc\krb5\krb5.${CFG_OR_INI}

以下是 modifyKrbAuthMechanism 命令的示例:

wsadmin>$AdminTask modifyKrbAuthMechanism {
			-krb5Realm  WSSEC.AUSTIN.IBM.COM 
			-krb5Config C:\\WINNT\\krb5.ini 
			-krb5Keytab C:\\WINNT\\krb5.keytab 
			-serviceName WAS }

删除 Kerberos 认证机制

使用 deleteKrbAuthMechanism 命令在安全性配置文件中移除 KRB5 认证机制安全性对象字段。

wsadmin 提示符下,输入以下命令:

$AdminTask help deleteKrbAuthMechanism

以下是 deleteKrbAuthMechanism 命令的示例:

	wsadmin>$AdminTask deleteKrbAuthMechanism

设置活动认证机制

使用 setActiveAuthMechanism 命令在安全性配置中设置活动认证机制属性。

wsadmin 提示符下,输入以下命令:

$AdminTask help setActiveAuthMechanism
表 3。 命令参数 可以将以下参数与 setActiveAuthMechanism 命令配合使用。
选项 描述
<authMechanismType> 此参数不是必需的。 它表示认证机制类型。 缺省值为 KRB5

以下是 setActiveAuthMechanism 命令的示例:

wsadmin> $AdminTask setActiveAuthMechanism {-authMechanismType KRB5 }