glassfish SSO实施是否实施任何标准?如果有,有哪些?
如果我的应用程序依赖 Glassfish SSO,我的应用程序是否可移植 - 如果我将应用程序部署到另一个 Web 容器(如 tomcat),SSO 是否可以工作?
GlassFish 的实现似乎是基于 Tomcat 阀门org.apache.catalina.authenticator.SingleSignOn而不是 Java/Java EE 标准。
应该可以将应用程序移植到基于 Tomcat 的其他应用程序服务器,但我建议先进行一些测试。
Glassfish 与许多(所有?)容器一样,在处理基于容器的安全性时使用领域的概念。我不知道是否有定义领域的标准,但可以肯定的是,我们编写的代表领域的代码在 Tomcat、Glassfish 和 Jetty 中运行,并且像 Apache Karaf 这样的 OSGi 容器也具有看起来相同的领域(但我还没有真正尝试过那个)。
SSO 实现完全在容器端 - 如果多个应用程序使用相同的领域,那么您可以配置容器以跨这些应用程序启用 SSO。SSO 的 Glassfish 实现是一个 tomcat 阀门这一事实对应用程序完全隐藏 - 只要容器支持领域,并且可以配置为使用这些领域跨应用程序启用 sso,那么应用程序就可以跨任何此类容器移植。
警告 - 这一切都基于我(有限的)现实世界的经验。我不知道 Realms 有多常见,也不知道它们之间是否有任何标准合规性。但是对于我们的使用,它们似乎(到目前为止)是一个合理的、可移植的抽象。