使用Happstack web开发工具包进行身份验证时,推荐使用哪些软件?



上周,我们三个人花了两天时间尝试使用Happstack构建一个简单的web应用程序。我们关注的问题之一是身份验证,似乎曾经有一个看起来非常好的Happstack.Auth包。不幸的是,原来的项目似乎已经被放弃了,虽然有一个分支,但我们无法让这个分支构建。

人们推荐在Happstack中进行身份验证的替代方案是什么?happstack-auth可行吗?

您可以考虑使用happstack-authenticate作为替代方案,

darcs get http://src.seereason.com/happstack-authenticate/

happstack-authenticate构建在authenticate和pwstore之上,提供:

  1. 标准用户名/密码认证
  2. openid身份验证
  3. facebook connect

代码被设计成可以与多个不同的模板解决方案一起使用。不过,目前只有HSP模板。

现在还没有,但将来会的。我希望它成为事实上的happstack身份验证解决方案。

你可以在这里看到它的动作:

http://www.seereason.com/

源代码包括一个演示目录,其中包含一个自包含的示例。

代码可以工作——尽管还有一些特性需要添加。例如,如果您被重定向到登录页面,那么在您登录后,您最终应该被转发回您试图访问的原始页面。

目前最大的缺点是文档。这个问题将得到解决。

你会注意到happstack-authenticate使用web-route作为类型安全的url,使用acid-state来存储身份验证信息。但是,这些设计选择不必泄漏到应用程序的其余部分。

您使用的是什么模板解决方案?我对添加对其他系统的支持很感兴趣。

——杰里米

注。如果您查看代码,它可能看起来比预期的要复杂一些。这是因为它的设计允许:

  1. 单个配置文件的多个认证方法

    例如,您可以将多个openid帐户链接到相同的配置文件。也许是因为您担心您可能会失去访问您的主要开放帐户的权限。或者,您可能希望团队中的每个人都使用共享帐户登录。(例如,在像twitter这样的网站上,您可能希望多人能够通过公司帐户发布tweet)。

  2. 单个身份验证方法的多个配置文件

    在像twitter这样的网站上,你可能有多个帐户。例如,我有自己的推特账号,我的照片,我的音乐,我的快乐,我的季节,还有更多。与其对每个帐户进行单独的身份验证,不如进行单个身份验证,然后选择我想要的"配置文件"。

当然,使用happstack-authenticate的

站点不必支持这些选项。

相关内容

  • 没有找到相关文章

最新更新