本文整理汇总了Golang中gitlab.com/thanzen/identity/models/user.User.Password方法的典型用法代码示例。如果您正苦于以下问题:Golang User.Password方法的具体用法?Golang User.Password怎么用?Golang User.Password使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类gitlab.com/thanzen/identity/models/user.User
的用法示例。
在下文中一共展示了User.Password方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: SaveNewPassword
// set a new password to user
func (this *UserService) SaveNewPassword(u *user.User, password string) error {
salt := GetUserSalt()
u.Password = fmt.Sprintf("%s$%s", salt, utils.EncodePassword(password, salt))
u.PasswordSalt = salt
_, err := orm.NewOrm().Update(u, "Password", "PasswordSalt", "Updated")
return err
}
示例2: RegisterUser
// register a user
func (this *UserService) RegisterUser(u *user.User, username, email, password string, userType *user.UserType, role *user.Role) error {
u.UserType = userType
// use random salt encode password
salt := GetUserSalt()
pwd := utils.EncodePassword(password, salt)
u.Username = strings.ToLower(username)
u.Email = strings.ToLower(email)
// save salt and encode password, use $ as split char
u.Password = fmt.Sprintf("%s$%s", salt, pwd)
u.PasswordSalt = salt
var err error
tr := orm.NewOrm()
tr.Begin()
if err = this.InsertWithScope(tr, u); err == nil {
roleService := RoleService{}
err = roleService.InsertUsersWithScope(tr, role, u)
}
if err == nil {
tr.Commit()
} else {
tr.Rollback()
}
return err
}
示例3: ResetPassword
func (this *AdminApiController) ResetPassword() {
var ChangePasswordModel = struct {
Id int64
Password string
}{}
this.CheckPermission(permissions.UserAdminUpdate)
var u user.User
json.Unmarshal(this.Ctx.Input.RequestBody, &ChangePasswordModel)
u.Id = ChangePasswordModel.Id
u.Password = ChangePasswordModel.Password
var err error
if u.Id > 0 {
err = this.UserService.SaveNewPassword(&u, u.Password)
if err != nil {
this.Ctx.Abort(500, err.Error())
}
} else {
this.Ctx.Abort(500, "invalid user id")
}
this.ServeJSON()
}
示例4: TestPasswordSpec
func TestPasswordSpec(t *testing.T) {
password := "abcDefg01!"
var err error
Convey("Authentication Testing", t, func() {
Convey("generateSalt()", func() {
salt := GetUserSalt()
So(salt, ShouldNotBeBlank)
So(len(salt), ShouldEqual, 10)
})
Convey("hashPassword()", func() {
hash := utils.EncodePassword(password, GetUserSalt())
So(hash, ShouldNotBeBlank)
So(len(hash), ShouldEqual, 100)
})
Convey("Create a user", func() {
u := new(user.User)
u.Username = "testuser"
u.Password = password
db := orm.NewOrm()
//ensure testuser not exist in the database
_, err = db.Raw("delete from role where role_info_id = (select id from user_info where user_name = ? limit 1)", u.Username).Exec()
if err != nil {
Println(err)
}
_, err = db.Raw("delete from user_info where user_name=?", u.Username).Exec()
if err != nil {
Println(err)
}
err := userServ.RegisterUser(u, "testuser", "[email protected]", password, &model.UserType{Id: 1}, &model.Role{Id: 2})
if err != nil {
Println(err)
}
So(err, ShouldEqual, nil)
So(u.Id, ShouldBeGreaterThan, 0)
Convey("VerifyUser()", func() {
So(userServ.VerifyUser(u, u.Username, password), ShouldEqual, true)
})
Convey("CanRegister()", func() {
var canName, canEmail bool = true, true
canName, canEmail, _ = userServ.CanRegistered("testuser", "[email protected]")
So(canName, ShouldEqual, false)
So(canEmail, ShouldEqual, false)
canName, canEmail, _ = userServ.CanRegistered("testuser", "[email protected]")
So(canName, ShouldEqual, false)
So(canEmail, ShouldEqual, true)
canName, canEmail, _ = userServ.CanRegistered("whatever", "[email protected]")
So(canName, ShouldEqual, true)
So(canEmail, ShouldEqual, false)
canName, canEmail, _ = userServ.CanRegistered("whatever", "[email protected]")
So(canName, ShouldEqual, true)
So(canEmail, ShouldEqual, true)
})
Convey("HasUser()", func() {
So(userServ.HasUser(u, "testuser"), ShouldEqual, true)
})
Convey("SaveNewPassword()", func() {
newPassword := "this is new pass!"
userServ.SaveNewPassword(u, newPassword)
So(userServ.VerifyUser(u, u.Username, password), ShouldEqual, false)
So(userServ.VerifyUser(u, u.Username, newPassword), ShouldEqual, true)
})
Convey("FuzzySearch()", func() {
var users []*model.User
userServ.FuzzySearch(&users, "t", 2, 0, 200)
So(len(users), ShouldBeGreaterThanOrEqualTo, 1)
})
})
})
}