5.8.3. 为 Microsoft Windows Domain 配置 JBoss Negotiation


本节描述了如何配置当 JBoss EAP 运行在 Microsoft Windows 服务器上时使用 JBoss Negotiation 所要求的帐号,它也是活动目录域的一部分。
在本节里,用来访问服务器的主机名被称为 {hostname},安全区被称为 {realm},域被称为 {domain},而运行 JBoss EAP 实例的服务器被称为 {machine_name}

过程 5.6. 为 Microsoft Windows Domain 配置 JBoss Negotiation

  1. 清除现有的 Service Principal Mapping

    在 Microsoft Windows 网络里,某些映射是自动创建的。删除这些自动创建的映射以使得服务器的标识符可以正确映射到用于协商的服务主体。这些映射让客户端的 Web 浏览器信任服务器并尝试 SPNEGO。客户端将用域控制器检验映射是否是 HTTP{hostname} 格式。
    下面是删除现有映射的步骤:
    • 用这个命令来列出注册了域的映射:setspn -L {machine_name}
    • 用下列命令来删除现有的映射:setspn -D HTTP/{hostname} {machine_name} and setspn -D host/{hostname} {machine_name}
  2. 创建一个主机用户帐号。

    注意

    确保主机用户名和 {machine_name} 不一样。
    在本节后面的内容里,主机用户名被称为 {user_name}
  3. 定义 {user_name}{hostname} 之间的映射。

    • 运行下列命令来配置 Service Principal Mapping:ktpass -princ HTTP/{hostname}@{realm} -pass * -mapuser {domain}\{user_name}
    • 提示时输入用户的密码。

      注意

      重置用户密码,这是导出 keytab 的一个前提条件。
    • 运行下列命令 setspn -L {user_name} 来检验这个映射。
  4. 导出用户的 keytab 到安装了 JBoss EAP 的服务器上。

    运行下列命令来导出 keytab:ktab -k service.keytab -a HTTP/{hostname}@{realm}

    注意

    这个命令导出 HTTP/{hostname} 主体的票据到在 JBoss 用来配置主机安全域的 keytab service.keytab
  5. 在安全域里定义主体:
    <module-option name="principal">HTTP/{hostname}@{realm}</module-option>
    
    
    Copy to Clipboard Toggle word wrap
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat