我正在创建一个不使用数据库的 Rails 应用程序。相反,模型是使用包装遗留系统的 Ruby API 进行管理的。
我有一个 Ruby 调用,可以让我验证用户名/密码组合。在这种情况下是否可以使用 Devise(或其他一些现成的身份验证解决方案)?
我希望我可以覆盖 Devise 中的一些方法,并且仍然可以获得很多好处。
彼得。
我正在创建一个不使用数据库的 Rails 应用程序。相反,模型是使用包装遗留系统的 Ruby API 进行管理的。
我有一个 Ruby 调用,可以让我验证用户名/密码组合。在这种情况下是否可以使用 Devise(或其他一些现成的身份验证解决方案)?
我希望我可以覆盖 Devise 中的一些方法,并且仍然可以获得很多好处。
彼得。
有可能的。
您可以通过 Devise 和 Warden 覆盖默认身份验证并使用远程服务。
这篇博文详细介绍了如何:
http://4trabes.com/2012/10/31/remote-authentication-with-devise/
让我们知道怎么回事...
祝你好运
如果我理解正确,你想在你的项目中使用 Devise 来包装旧的遗留身份验证系统。您可能需要定义 legacy_username 和 legacy_password 方法,创建迁移以采用 Devise gem,我相信您会找到出路。也许这个链接可以帮助你:http ://www.davidverhasselt.com/2012/05/13/how-to-migrate-passwords-from-legacy-systems-to-devise/
而且,也许这 - 如何在设计中创建自定义加密器 - https://github.com/plataformatec/devise/wiki/How-To:-Create-a-custom-encryptor
我希望它会有所帮助。