Java web应用之间的Spring安全性-而不是SSO

Java web应用之间的Spring安全性-而不是SSO,java,spring,spring-mvc,spring-security,Java,Spring,Spring Mvc,Spring Security,我使用的是spring security 3.1.4,我有以下问题: 我有两个网络应用,一个是管理员,另一个是用户。管理员使用控制器调用其他控制器。我希望此通信将使用spring security,我们考虑在用户应用程序中为管理员创建一个特殊的登录控制器,并创建一个具有所有身份验证信息的特殊管理员用户登录名、密码、角色。。每次我想通过管理员应用程序进行通信时,我都会使用这个控制器。这是一个有效且通用的解决方案吗?从安全的角度来看,拥有一个通用的硬编码ID,提供上帝般的访问,这听起来很危险。如果可

我使用的是spring security 3.1.4,我有以下问题:
我有两个网络应用,一个是管理员,另一个是用户。管理员使用控制器调用其他控制器。我希望此通信将使用spring security,我们考虑在用户应用程序中为管理员创建一个特殊的登录控制器,并创建一个具有所有身份验证信息的特殊管理员用户登录名、密码、角色。。每次我想通过管理员应用程序进行通信时,我都会使用这个控制器。这是一个有效且通用的解决方案吗?

从安全的角度来看,拥有一个通用的硬编码ID,提供上帝般的访问,这听起来很危险。如果可能的话,我宁愿尝试设置某种会话共享。这可能会有帮助:是否可以为管理员应用程序创建我自己的预验证令牌并使用它?您似乎建议的是使用您自己的SSO。当然,你可以这么做。但是,请记住,您编写的任何自定义代码都有可能使您面临安全问题。通常,任何超出规范的操作都会导致安全问题,因为您偏离了最佳实践。如果您确实推出了自己的SSO解决方案,那么在构建预授权令牌时要非常小心。你不想让黑客很容易猜到。好吧,我明白,有没有更传统的方法?请记住,管理员应用程序没有用户登录,我可以像SSO一样传递给其他应用程序。我认为,更传统的方法是使用SSO。但您说过您不想使用任何SSO,尽管您似乎对自己的SSO感到满意。由于Spring Security使用会话,会话共享似乎是一个不错的选择,但您可能会受到应用程序部署方式等因素的限制,这可能会让您面临安全漏洞。