5.4. 红帽 JBoss 企业应用平台上 Web 应用程序的 SSO
此情景演示了 Web 应用如何利用 JBoss EAP 上的集群和非集群 SSO。创建四个 JBoss EAP 实例: EAP1、EAP2、EAP3 和 EAP4。EAP1 和 EAP2 作为单机服务器运行,EAP 3 和 EAP4 则作为双节点集群运行。已将 sampleAppA 和 sampleAppB 这两个 Web 应用部署到四个 JBoss EAP 实例中的每一个。
5.4.1. 安全性 复制链接链接已复制到粘贴板!
JBoss EAP 通过结合使用 security、undertow 和 infinispan 子系统的组合,支持集群和非集群 SSO 使用 Web 应用。security 子系统提供一个安全域来执行身份验证和授权,而 infinispan 和 undertow 子系统则帮助在 JBoss EAP 实例或 JBoss EAP 集群上的所有 Web 应用之间缓存和分发 SSO 信息。所有四个 EAP 实例都有一个安全域( sso-domain),配置为使用 IdentityLoginModule。sampleAppA 和 sampleAppB 已配置为使用 sso-domain 安全域来保护路径 /secure/*,并要求 示例 的角色来访问它。在 sso-domain 登录模块中配置了以下凭证:
| username | 密码 | 角色 |
|---|---|---|
| jane | samplePass | 示例 |
所有四个 JBoss EAP 实例也已配置为使用 standalone-full-ha 或 full-ha 配置文件 启动,它添加了 infinispan 子系统和在这种情况下启用 SSO 所需的其他功能。还添加了 Web cache-container 和 SSO replication-cache,并且 undertow 子系统已配置为同时使用它们。EAP1 和 EAP2 已将 undertow 子系统配置为非集群 SSO,而包含 EAP3 和 EAP4 的集群已配置为使用集群 SSO。
集群 Web 应用和集群的 SSO 之间有区别。集群 Web 应用是在集群节点上分布的,以分散托管该应用的负载。在标记为 distributable 的群集应用中,对现有会话的所有新会话和更改都将复制到群集的其他成员。集群 SSO 允许复制安全上下文和身份信息,无论应用本身是否集群。尽管这些技术可以一起使用,但它们是互斥的,可以独立使用。