我来自Ruby背景,我真的希望看到类似于Ruby on Rails 设备的东西,这是一个完整的用户管理系统.它负责从创建表单到散列和salting密码等所有内容.它还负责将数据存储到数据库,设置会话等.
我发现有一个名为goth的包允许社交登录(facebook,twitter ++),但它不处理用户凭据的存储.它也不允许使用电子邮件+密码进行"正常"注册.
我似乎在Go的这个主题上找到了一些有关如何创建自己的基本,非常不安全的用户登录系统的教程.
我真的很想看到一个系统,它负责用户身份验证,并允许通过OAuth/OAuth2进行社交登录.有这样的事吗?
我追求的解决方案很可能是Go Web框架的一部分或插件.
我正在考虑将我的Rails应用程序转移到更高性能的框架,因为我当前的rails应用程序正在使用大量RAM.于是我的目光转向了Go.但是,如果没有可靠的用户身份验证系统,我无法转换为Go.制作自己的用户身份验证系统不是一个很好的做法.
简答:不.
答案很简单:Ruby on Rails是一个框架,Go是一种语言.为Go制作"通用"认证系统将是一项艰巨的任务和/或必须非常注重设计,因为大多数auth系统依赖于会话存储和/或数据库.Rails可以这样做(使用libs.比如Devise),因为像ActiveRecord和ActionController这样的框架部分提供了一个Devise可以与之交谈的抽象API.
在大多数情况下,您需要将几个库连接起来以获得您需要的Go.将事物粘合在一起是一种常用的做事方式,单片/厨房水槽框架通常不受青睐.
对图书馆的一些建议:
这些不会为您提供不同的用户类型,为您编写查询等.我发现编写自己的"两个用户级别"(常规与管理员)身份验证使用服务器端会话,单个用户表和相当简单一个包含"需要身份验证"路由并检查会话的HTTP中间件,否则它会将用户重定向到登录页面(并保存当前URL以便重新定向).
| 归档时间: |
|
| 查看次数: |
1672 次 |
| 最近记录: |