使用 ktab 命令来管理 Kerberos 密钥表文件

Kerberos 密钥表管理器命令 (Ktab) 允许产品管理员管理本地 Kerberos 密钥表文件中存储的 Kerberos 服务主体名称和密钥。通过 IBM 软件开发包 (SDK) 或 Sun Java Development Kit (JDK) 1.6 或更高版本,可以使用 ktab 命令合并两个 Kerberos 密钥表文件。

[Solaris]要合并 ktab 文件,必须安装 Java Development Kit (JDK) V1.6 SR3 累积修订,该修订会将 JDK 升级到 V1.6.0_07。

[HP-UX]要合并 ktab 文件,必须安装软件开发包 (SDK) V1.6 SR3 累积修订,该修订会将 JDK 升级到 V1.6.0.02。

[AIX][Windows][Linux]要合并 ktab 文件,必须安装 Java Development Kit (JDK) V1.6 SR3 累积修订,该修订会将 SDK 升级到 V1.6.0 Java Technology Edition SR3。

Kerberos 密钥表文件中列示的 Kerberos 服务主体 (SPN) 名称和密钥允许在主机上运行的服务以验证入局 Kerberos 或 SPNEGO 令牌请求。在配置 Kerberos 或 SPNEGO Web 认证之前,WebSphere® Application Server 管理员必须在运行 WebSphere Application Server 的主机上设置 Kerberos 密钥表文件。
不推荐使用的功能部件 不推荐使用的功能部件:

在 WebSphere Application Server V6.1 中引入了一个信任关联拦截器 (TAI),TAI 使用“简单且受保护的 GSS-API 协商机制” (SPNEGO) 来对安全资源的 HTTP 请求进行安全地协商和认证。在 WebSphere Application Server V7.0 中,现已不推荐使用此功能。

SPNEGO Web 认证已取代此功能,以提供下列增强功能:

  • 使用管理控制台在 WebSphere Application Server 端配置以及启用 SPNEGO Web 认证和过滤器。
  • 不必停止及重新启动 WebSphere Application Server 即可动态地重新装入 SPNEGO。
  • 在 SPNEGO Web 认证失败时,可以回退到应用程序登录方法。
depfeat
要点:
  • 一定要保护密钥表文件,并且只允许经授权的产品用户读取这些文件。
  • 使用 Ktab 对 Kerberos 密钥表文件所作的更新对 Kerberos 数据库没有影响。如果更改 Kerberos 密钥表文件中的密钥,那么还必须对 Kerberos 数据库作出相应的更改。
本节中的随后内容通过将 Ktab 与 -help 操作数配合使用对 Ktab 的语法进行阐述。
$ ktab -help

Usage: java com.ibm.security.krb5.internal.tools.Ktab [options]
Available options:
-l                              list the keytab name and entries
-a <principal_name> [password]  add an entry to the keytab
-d <principal_name>             delete an entry from the keytab
-k <keytab_name>                specify keytab name and path with FILE: prefix
-m <source_keytab_name> <destination_keytab_name>      specify merging source keytab file name and destination keytab file name
以下示例说明如何使用 Ktab 将 krb5Host1.keytab 文件合并到 krb5.keytab 文件中:
[root@wssecjibe bin]# ./ktab -m /etc/krb5Host1.keytab /etc/krb5.keytab
Merging keytab files:   source=krb5Host1.keytab   destination=krb5.keytab
Done!
[root@wssecjibe bin]# ls /etc/krb5.*
/etc/krb5Host1.keytab/etc/krb5.keytab
/etc/krb5.keytab
以下示例说明如何在 LINUX 平台上使用 Ktab 将新的主体名称添加到 Kerberos 密钥表文件,其中 ot56prod 是 Kerberos 主体名称的密码:
[root@wssecjibe bin]# ./ktab -a	
HTTP/wssecjibe.austin.ibm.com@WSSEC.AUSTIN.IBM.COM ot56prod -k /etc/krb5.keytab
Done!
Service key for principal HTTP/wssecjibe.austin.ibm.com@WSSEC.AUSTIN.IBM.COM saved

以下示例说明如何在 Windows 平台上使用 Ktab 来列示 Kerberos 密钥表文件的内容。
[root@wssecjibe bin]# ./ktab

        KVNO    Principal
        ----    ---------

        1       HTTP/wssecjibe.austin.ibm.com@WSSEC.AUSTIN.IBM.COM

[root@wssecjibe bin]# ls /etc/krb5.*
/etc/krb5.conf 
/etc/krb5.keytab
[AIX Solaris HP-UX Linux Windows]提示: 可以从 install_root/java/jre/bin 目录运行 ktab 命令。
[z/OS]提示: 可以从 install_root/java/J5.0/bininstall_root/java64/J5.0_64/bin 目录运行 ktab 命令。

指示主题类型的图标 参考主题



时间戳记图标 最近一次更新时间: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=rsec_SPNEGO_kerb
文件名:rsec_SPNEGO_kerb.html