1 Star 0 Fork 0

PengHengBen / devcloud-mini

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
model.go 671 Bytes
一键复制 编辑 原始数据 按行查看 历史
chris Peng 提交于 2024-01-08 10:27 . 补充分布式鉴权
package user
import (
"github.com/infraboard/mcube/pb/resource"
"golang.org/x/crypto/bcrypt"
)
func NewUser(in *CreateUserRequest) *User {
// 先Hash再保存
in.MakePasswordHash()
return &User{
Meta: resource.NewMeta(),
Spec: in,
}
}
func (i *User) CheckPassword(password string) error {
return bcrypt.CompareHashAndPassword([]byte(i.Spec.Password), []byte(password))
}
func NewCreateUserRequest() *CreateUserRequest {
return &CreateUserRequest{
RoleIds: []string{},
}
}
func (r *CreateUserRequest) MakePasswordHash() {
bytes, err := bcrypt.GenerateFromPassword([]byte(r.Password), 10)
if err != nil {
panic(err)
}
r.Password = string(bytes)
}
Go
1
https://gitee.com/penghengben/devcloud-mini.git
git@gitee.com:penghengben/devcloud-mini.git
penghengben
devcloud-mini
devcloud-mini
52595909206d

搜索帮助