Skip to content

General

xun edited this page Jul 2, 2023 · 5 revisions

流程梳理

首先梳理一下 SAST Link 的登录注册流程,我不知道把这个流程放到什么地方了,所以丢这里了。

注册

SAST Link 的注册分为以下几步:

1. 验证帐号有效性

这一步会验证帐号是否已经注册过,也就是看我们的数据库中是否有这个帐号。如果没有则允许注册。

其中这个接口属于/verify/account路径,属于 api -> v1 -> user.go 文件中的 VerifyAccount 函数,关于接口的定义及参数请查看 API-Doc.md(API 文档)。

在这一步之后我们会给用户签发一个 Token,这个 Token 在后面会起作用。实际上这里的 Token 在我们的代码中是被叫做 Ticket 的,来自windpo

2. 发送验证邮件

上一步通过之后,会发送验证码给用户邮箱。但是这个接口需要使用 Token 验证,请查看 Api 文档。

这一步会更新 Ticket,将 Ticket 在 redis 中的 value 更新,以说明这个用户这一步已完成。下面的每一步也是这样。

3. 验证验证码

发送验证邮件之后,需要验证验证码,这也是单独的一个接口,同样的,这个接口也需要使用第一步签发的 Token 进行验证,同时也会验证验证码是否正确。

4. 注册

以上步骤完成之后,真正进入注册步骤,这一步只需要填写密码,但是也是需要第一步的 Token 进行验证。

以上的 Token 会在每一步之后会在 redis 中进行更新,以记录用户的执行步骤。Token 会存储用户名。

登录

1. 验证帐号有效性

登录时也需要验证帐号有效性,与注册使用的是同一个接口,只是其中有个 flag 参数不同,详情请查看 Api 文档。

这一步同样会给用户签发一个 Ticket,用于用户登录。这里的 Ticket 被称为 LOGIN_TICKET。

2. 登录

这个接口接受一个 password 的参数和一个 LOGIN_TICKET 的 Ticket。

Clone this wiki locally