【问题标题】:Authentication with SpringSecurity Core使用 Spring Security Core 进行身份验证
【发布时间】:2012-11-10 07:53:42
【问题描述】:

我需要帮助为我的公司集成系统。我们创建了一个数据库,将所有信息集中在一个身份验证服务器中。

对于身份验证,我们使用这样的内部 url:

http://autentication/ServletAutentication?login=XXXXXXXXXX&password=YYYYYYYYY

其中 XXXXXXXX 是 MD5 算法中的 YYYYYYYYY 用户名和加密密码。如何获取返回 XML:

<autentication>
            <login> XXXXXXXX </ login>
            <password> true </ password>
</autentication>

需要进行身份验证。权限由 SpringSecurity Core 控制。

认证后,将保存在上次访问日期。

有谁知道我如何在 SpringSecurity Core 插件中实现这一点?

【问题讨论】:

  • Spring Security 不能以这种方式工作......而且它不应该,因为像这样(尤其是使用 http 而不是 https)在 url 中传递密码(或它的 MD5 哈希)是不安全的.
  • GreyBeardedGeek,感谢您的回复!即使 URL 不安全,环境也是受控的,不需要这种安全性。访问这个 URL 的返回是一个 XML 与 webservice 中的身份验证结果。你觉得有什么方法可以实现吗?
  • 无法理解:您是要为现有的“身份验证服务器”实现 grails 客户端还是自己创建此服务器?
  • 嗨,伊戈尔·阿塔莫诺夫!感谢您的回复!我只是想让用户保存另一个密码。该服务器已经是 protno 并且被其他应用程序使用。在语言中,Grails 难以实现命令。我最初的想法是:当用户登录时,在spring security core中对用户进行身份验证之前,调用使用MD5加密的登录名和密码的url。 (续...)
  • 如果服务器接受登录,然后由存储在 spring 安全核心中的用户身份验证和密码进行追求,这些密码也将密码存储在本地,因为他们还没有弄清楚如何在不维护这个的情况下继续进行身份验证本地数据。如果在服务器上更改密码,身份验证会自动复制到 Grails 中的应用程序。 (续...)

标签: grails spring-security grails-plugin


【解决方案1】:

鉴于您并不认为自己需要真正的安全,您当然可以实现自己的非安全安全方案 - 只需创建一个控制器,在数据库中查看用户名和密码哈希值,然后然后返回 xml,将会话 cookie 添加到响应中以跟踪登录状态。

另一方面,试图破解 Spring Security 以完全做它不应该做的事情可能不值得。

【讨论】:

  • GreyBeardedGeek 您好,感谢您的回复!我们真正想要做的是,创建一个动作来在远程服务器上执行此身份验证服务。目标是保存用户密码以进行更多装饰。因此,当在应用程序中创建并键入用户密码时,这将使用验证身份验证服务器返回的 XML 是否正确并正常进行身份验证所需的参数调用 url。(续...)
  • 问题是我不知道如何调用Grail中的url,也不知道如何处理XML中收到的响应。我认为它会很酷。你知道执行这些命令吗?你觉得这个逻辑行得通吗?
  • 不,我认为这既是一个非常糟糕的主意,又是“重新发明轮子”。如果听起来您正在尝试进行单点登录。现有的 SSO 解决方案有很多,您可能应该只使用其中之一。
猜你喜欢
  • 2011-09-18
  • 2012-11-27
  • 2013-12-16
  • 1970-01-01
  • 2011-10-17
  • 2018-08-09
  • 2017-04-15
  • 2011-08-14
相关资源
最近更新 更多