⚗️ add bcrypt
This commit is contained in:
23
cmd/db/db.go
23
cmd/db/db.go
@@ -1,22 +1,21 @@
|
|||||||
package db
|
package db
|
||||||
|
|
||||||
import "schisandra-cloud-album/global"
|
import (
|
||||||
|
"schisandra-cloud-album/global"
|
||||||
|
"schisandra-cloud-album/model"
|
||||||
|
)
|
||||||
|
|
||||||
func MakeMigration() {
|
func MakeMigration() {
|
||||||
var err error
|
var err error
|
||||||
global.LOG.Infof("开始迁移数据库")
|
global.LOG.Infof("开始迁移数据库")
|
||||||
err = global.DB.Set("gorm:table_options", "ENGINE=InnoDB").AutoMigrate(
|
err = global.DB.Set("gorm:table_options", "ENGINE=InnoDB").AutoMigrate(
|
||||||
//&models.ImageModel{},
|
&model.ScaAuthUser{},
|
||||||
//&models.TagModel{},
|
&model.ScaAuthPermission{},
|
||||||
//&models.MessageModel{},
|
&model.ScaAuthRole{},
|
||||||
//&models.AdvertModel{},
|
&model.ScaAuthRolePermission{},
|
||||||
//&models.UserModel{},
|
&model.ScaAuthUserRole{},
|
||||||
//&models.CommentModel{},
|
&model.ScaAuthUserDevice{},
|
||||||
//&models.ArticleModel{},
|
&model.ScaAuthUserSocial{},
|
||||||
//&models.MenuModel{},
|
|
||||||
//&models.MenuImageModel{},
|
|
||||||
//&models.FeedbackModel{},
|
|
||||||
//&models.LoginDataModel{},
|
|
||||||
)
|
)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
global.LOG.Error("数据库迁移失败: %v", err)
|
global.LOG.Error("数据库迁移失败: %v", err)
|
||||||
|
@@ -5,7 +5,7 @@ import (
|
|||||||
"net/http"
|
"net/http"
|
||||||
)
|
)
|
||||||
|
|
||||||
// Cors 跨域中间件
|
// Cors 自定义跨域中间件
|
||||||
func Cors() gin.HandlerFunc {
|
func Cors() gin.HandlerFunc {
|
||||||
return func(c *gin.Context) {
|
return func(c *gin.Context) {
|
||||||
method := c.Request.Method
|
method := c.Request.Method
|
||||||
|
20
utils/encrypt.go
Normal file
20
utils/encrypt.go
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
package utils
|
||||||
|
|
||||||
|
import "golang.org/x/crypto/bcrypt"
|
||||||
|
|
||||||
|
// Encrypt 加密
|
||||||
|
func Encrypt(val string) (string, error) {
|
||||||
|
// 使用bcrypt库的GenerateFromPassword函数进行哈希处理
|
||||||
|
hashedPassword, err := bcrypt.GenerateFromPassword([]byte(val), bcrypt.DefaultCost)
|
||||||
|
if err != nil {
|
||||||
|
return "", err
|
||||||
|
}
|
||||||
|
return string(hashedPassword), err
|
||||||
|
}
|
||||||
|
|
||||||
|
// Verify 验证
|
||||||
|
func Verify(hashedVal, val string) bool {
|
||||||
|
// 使用bcrypt库的CompareHashAndPassword函数比较密码
|
||||||
|
err := bcrypt.CompareHashAndPassword([]byte(hashedVal), []byte(val))
|
||||||
|
return err == nil
|
||||||
|
}
|
Reference in New Issue
Block a user