登录error提示
This commit is contained in:
@@ -19,7 +19,7 @@ func UserLogin(name, passwd string) error {
|
|||||||
err := db.Client.Model(&model.User{}).Where("account_id=?", name).First(&user).Error
|
err := db.Client.Model(&model.User{}).Where("account_id=?", name).First(&user).Error
|
||||||
if err != nil {
|
if err != nil {
|
||||||
zlog.Ins().ErrorF("Password Login[%s]:%s", name, err)
|
zlog.Ins().ErrorF("Password Login[%s]:%s", name, err)
|
||||||
return errors.New("incorrect username and password")
|
return errors.New("username-error")
|
||||||
}
|
}
|
||||||
|
|
||||||
if err := utils.Compare(user.Password, passwd); err != nil {
|
if err := utils.Compare(user.Password, passwd); err != nil {
|
||||||
@@ -38,37 +38,37 @@ func CMCALogin(name, carCertificate, content, signatureBase64 string) error {
|
|||||||
err := db.Client.Model(&model.User{}).Where("account_id=?", name).First(&user).Error
|
err := db.Client.Model(&model.User{}).Where("account_id=?", name).First(&user).Error
|
||||||
if err != nil {
|
if err != nil {
|
||||||
zlog.Ins().ErrorF("Password Login[%s]:%s", name, err)
|
zlog.Ins().ErrorF("Password Login[%s]:%s", name, err)
|
||||||
return errors.New("无效OMC用户")
|
return errors.New("username-error")
|
||||||
}
|
}
|
||||||
|
|
||||||
if user.AccountId != name {
|
if user.AccountId != name {
|
||||||
return fmt.Errorf("用户名错误 %s", name)
|
return fmt.Errorf("username-error")
|
||||||
}
|
}
|
||||||
|
|
||||||
// 解析证书信息
|
// 解析证书信息
|
||||||
certificate, err := utils.ParseCert(carCertificate)
|
certificate, err := utils.ParseCert(carCertificate)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
zlog.Ins().ErrorF("ParseCert Login[%s]:%s", name, err)
|
zlog.Ins().ErrorF("ParseCert Login[%s]:%s", name, err)
|
||||||
return fmt.Errorf("解析证书失败")
|
return fmt.Errorf("certificate-error")
|
||||||
}
|
}
|
||||||
|
|
||||||
// 判断证书到期时间
|
// 判断证书到期时间
|
||||||
if time.Now().After(certificate.NotAfter) {
|
if time.Now().After(certificate.NotAfter) {
|
||||||
zlog.Ins().ErrorF("certificate Not After Now time Login[%s]:%s", name, err)
|
zlog.Ins().ErrorF("certificate Not After Now time Login[%s]:%s", name, err)
|
||||||
return errors.New("证书已过期")
|
return errors.New("the certificate has expired")
|
||||||
}
|
}
|
||||||
|
|
||||||
// 判断证书持有人
|
// 判断证书持有人
|
||||||
if certificate.Subject.CommonName != name {
|
if certificate.Subject.CommonName != name {
|
||||||
zlog.Ins().ErrorF("certificate Subject CommonName Login[%s]:%s", name, err)
|
zlog.Ins().ErrorF("certificate Subject CommonName Login[%s]:%s", name, err)
|
||||||
return errors.New("用户与证书持有人不匹配")
|
return errors.New("the certificate cn-error")
|
||||||
}
|
}
|
||||||
|
|
||||||
// 解码base64得到签名字节串
|
// 解码base64得到签名字节串
|
||||||
signature, err := base64.StdEncoding.DecodeString(signatureBase64)
|
signature, err := base64.StdEncoding.DecodeString(signatureBase64)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
zlog.Ins().ErrorF("signatureBase64 Login[%s]:%s", name, err)
|
zlog.Ins().ErrorF("signatureBase64 Login[%s]:%s", name, err)
|
||||||
return fmt.Errorf("解码签名数据失败")
|
return fmt.Errorf("the certificate signature-error")
|
||||||
}
|
}
|
||||||
|
|
||||||
// 验证签名
|
// 验证签名
|
||||||
@@ -76,5 +76,5 @@ func CMCALogin(name, carCertificate, content, signatureBase64 string) error {
|
|||||||
if valid {
|
if valid {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
return errors.New("随机码签名验证失败")
|
return errors.New("seqNo-error")
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user