对于那些在Go中构建RESTful API和JS前端应用程序的人,您是如何管理身份验证的?您是否在使用任何特定的库或技术?
我很惊讶地发现关于这件事的讨论如此之少.我牢记如下答案,并尽量避免开发我自己的实现:
Authentication Form in ASP.Net个
每个人都在单独编写自己的解决方案吗?
对于那些在Go中构建RESTful API和JS前端应用程序的人,您是如何管理身份验证的?您是否在使用任何特定的库或技术?
我很惊讶地发现关于这件事的讨论如此之少.我牢记如下答案,并尽量避免开发我自己的实现:
Authentication Form in ASP.Net个
每个人都在单独编写自己的解决方案吗?
这个问题有很多观点--而且有一个很受欢迎的问题徽章--所以我知道这个话题有很多潜在的兴趣,很多人都在问完全相同的问题,但在互联网上找不到答案.
大多数可用的信息都会产生与手波浪一样的文本,作为"读者练习".)
不过,我终于找到了一个具体的例子,这个例子(慷慨地)是由高郎坚果邮件列表中的一位成员提供的:
https://groups.google.com/forum/#!msg/golang-nuts/GE7a_5C5kbA/fdSnH41pOPYJ个
这提供了一个建议的架构和服务器端实现,作为自定义身份验证的基础.客户端代码仍由您决定.
(我希望这篇文章的作者能看到这一点:谢谢!)
摘录(并重新格式化):
"我建议做如下设计:
create table User (
ID int primary key identity(1,1),
Username text,
FullName text,
PasswordHash text,
PasswordSalt text,
IsDisabled bool
)
create table UserSession (
SessionKey text primary key,
UserID int not null, -- Could have a hard "references User"
LoginTime <time type> not null,
LastSeenTime <time type> not null
)