Update: Successful authentication records the identifier.
This commit is contained in:
parent
52ce054b35
commit
de6661cc16
@ -121,8 +121,8 @@ func (l *ResetPasswordLogic) ResetPassword(req *types.ResetPasswordRequest) (res
|
|||||||
// Don't fail register if device binding fails, just log the error
|
// Don't fail register if device binding fails, just log the error
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if l.ctx.Value(constant.LoginType) != nil {
|
if l.ctx.Value(constant.CtxLoginType) != nil {
|
||||||
req.LoginType = l.ctx.Value(constant.LoginType).(string)
|
req.LoginType = l.ctx.Value(constant.CtxLoginType).(string)
|
||||||
}
|
}
|
||||||
// Generate session id
|
// Generate session id
|
||||||
sessionId := uuidx.NewUUID().String()
|
sessionId := uuidx.NewUUID().String()
|
||||||
@ -133,7 +133,8 @@ func (l *ResetPasswordLogic) ResetPassword(req *types.ResetPasswordRequest) (res
|
|||||||
l.svcCtx.Config.JwtAuth.AccessExpire,
|
l.svcCtx.Config.JwtAuth.AccessExpire,
|
||||||
jwt.WithOption("UserId", userInfo.Id),
|
jwt.WithOption("UserId", userInfo.Id),
|
||||||
jwt.WithOption("SessionId", sessionId),
|
jwt.WithOption("SessionId", sessionId),
|
||||||
jwt.WithOption("LoginType", req.LoginType),
|
jwt.WithOption("identifier", req.Identifier),
|
||||||
|
jwt.WithOption("CtxLoginType", req.LoginType),
|
||||||
)
|
)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
l.Logger.Error("[UserLogin] token generate error", logger.Field("error", err.Error()))
|
l.Logger.Error("[UserLogin] token generate error", logger.Field("error", err.Error()))
|
||||||
|
|||||||
@ -137,8 +137,8 @@ func (l *TelephoneLoginLogic) TelephoneLogin(req *types.TelephoneLoginRequest, r
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if l.ctx.Value(constant.LoginType) != nil {
|
if l.ctx.Value(constant.CtxLoginType) != nil {
|
||||||
req.LoginType = l.ctx.Value(constant.LoginType).(string)
|
req.LoginType = l.ctx.Value(constant.CtxLoginType).(string)
|
||||||
}
|
}
|
||||||
|
|
||||||
// Generate session id
|
// Generate session id
|
||||||
@ -150,7 +150,8 @@ func (l *TelephoneLoginLogic) TelephoneLogin(req *types.TelephoneLoginRequest, r
|
|||||||
l.svcCtx.Config.JwtAuth.AccessExpire,
|
l.svcCtx.Config.JwtAuth.AccessExpire,
|
||||||
jwt.WithOption("UserId", userInfo.Id),
|
jwt.WithOption("UserId", userInfo.Id),
|
||||||
jwt.WithOption("SessionId", sessionId),
|
jwt.WithOption("SessionId", sessionId),
|
||||||
jwt.WithOption("LoginType", req.LoginType),
|
jwt.WithOption("identifier", req.Identifier),
|
||||||
|
jwt.WithOption("CtxLoginType", req.LoginType),
|
||||||
)
|
)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
l.Logger.Error("[UserLogin] token generate error", logger.Field("error", err.Error()))
|
l.Logger.Error("[UserLogin] token generate error", logger.Field("error", err.Error()))
|
||||||
|
|||||||
@ -110,8 +110,8 @@ func (l *TelephoneResetPasswordLogic) TelephoneResetPassword(req *types.Telephon
|
|||||||
// Don't fail register if device binding fails, just log the error
|
// Don't fail register if device binding fails, just log the error
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if l.ctx.Value(constant.LoginType) != nil {
|
if l.ctx.Value(constant.CtxLoginType) != nil {
|
||||||
req.LoginType = l.ctx.Value(constant.LoginType).(string)
|
req.LoginType = l.ctx.Value(constant.CtxLoginType).(string)
|
||||||
}
|
}
|
||||||
// Generate session id
|
// Generate session id
|
||||||
sessionId := uuidx.NewUUID().String()
|
sessionId := uuidx.NewUUID().String()
|
||||||
@ -122,7 +122,8 @@ func (l *TelephoneResetPasswordLogic) TelephoneResetPassword(req *types.Telephon
|
|||||||
l.svcCtx.Config.JwtAuth.AccessExpire,
|
l.svcCtx.Config.JwtAuth.AccessExpire,
|
||||||
jwt.WithOption("UserId", userInfo.Id),
|
jwt.WithOption("UserId", userInfo.Id),
|
||||||
jwt.WithOption("SessionId", sessionId),
|
jwt.WithOption("SessionId", sessionId),
|
||||||
jwt.WithOption("LoginType", req.LoginType),
|
jwt.WithOption("identifier", req.Identifier),
|
||||||
|
jwt.WithOption("CtxLoginType", req.LoginType),
|
||||||
)
|
)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
l.Errorw("[UserLogin] token generate error", logger.Field("error", err.Error()))
|
l.Errorw("[UserLogin] token generate error", logger.Field("error", err.Error()))
|
||||||
|
|||||||
@ -152,8 +152,8 @@ func (l *TelephoneUserRegisterLogic) TelephoneUserRegister(req *types.TelephoneR
|
|||||||
// Don't fail register if device binding fails, just log the error
|
// Don't fail register if device binding fails, just log the error
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if l.ctx.Value(constant.LoginType) != nil {
|
if l.ctx.Value(constant.CtxLoginType) != nil {
|
||||||
req.LoginType = l.ctx.Value(constant.LoginType).(string)
|
req.LoginType = l.ctx.Value(constant.CtxLoginType).(string)
|
||||||
}
|
}
|
||||||
// Generate session id
|
// Generate session id
|
||||||
sessionId := uuidx.NewUUID().String()
|
sessionId := uuidx.NewUUID().String()
|
||||||
@ -164,7 +164,8 @@ func (l *TelephoneUserRegisterLogic) TelephoneUserRegister(req *types.TelephoneR
|
|||||||
l.svcCtx.Config.JwtAuth.AccessExpire,
|
l.svcCtx.Config.JwtAuth.AccessExpire,
|
||||||
jwt.WithOption("UserId", userInfo.Id),
|
jwt.WithOption("UserId", userInfo.Id),
|
||||||
jwt.WithOption("SessionId", sessionId),
|
jwt.WithOption("SessionId", sessionId),
|
||||||
jwt.WithOption("LoginType", req.LoginType),
|
jwt.WithOption("identifier", req.Identifier),
|
||||||
|
jwt.WithOption("CtxLoginType", req.LoginType),
|
||||||
)
|
)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
l.Logger.Error("[UserLogin] token generate error", logger.Field("error", err.Error()))
|
l.Logger.Error("[UserLogin] token generate error", logger.Field("error", err.Error()))
|
||||||
|
|||||||
@ -93,8 +93,8 @@ func (l *UserLoginLogic) UserLogin(req *types.UserLoginRequest) (resp *types.Log
|
|||||||
// Don't fail login if device binding fails, just log the error
|
// Don't fail login if device binding fails, just log the error
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if l.ctx.Value(constant.LoginType) != nil {
|
if l.ctx.Value(constant.CtxLoginType) != nil {
|
||||||
req.LoginType = l.ctx.Value(constant.LoginType).(string)
|
req.LoginType = l.ctx.Value(constant.CtxLoginType).(string)
|
||||||
}
|
}
|
||||||
// Generate session id
|
// Generate session id
|
||||||
sessionId := uuidx.NewUUID().String()
|
sessionId := uuidx.NewUUID().String()
|
||||||
@ -105,7 +105,8 @@ func (l *UserLoginLogic) UserLogin(req *types.UserLoginRequest) (resp *types.Log
|
|||||||
l.svcCtx.Config.JwtAuth.AccessExpire,
|
l.svcCtx.Config.JwtAuth.AccessExpire,
|
||||||
jwt.WithOption("UserId", userInfo.Id),
|
jwt.WithOption("UserId", userInfo.Id),
|
||||||
jwt.WithOption("SessionId", sessionId),
|
jwt.WithOption("SessionId", sessionId),
|
||||||
jwt.WithOption("LoginType", req.LoginType),
|
jwt.WithOption("identifier", req.Identifier),
|
||||||
|
jwt.WithOption("CtxLoginType", req.LoginType),
|
||||||
)
|
)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
l.Logger.Error("[UserLogin] token generate error", logger.Field("error", err.Error()))
|
l.Logger.Error("[UserLogin] token generate error", logger.Field("error", err.Error()))
|
||||||
|
|||||||
@ -138,8 +138,8 @@ func (l *UserRegisterLogic) UserRegister(req *types.UserRegisterRequest) (resp *
|
|||||||
// Don't fail register if device binding fails, just log the error
|
// Don't fail register if device binding fails, just log the error
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if l.ctx.Value(constant.LoginType) != nil {
|
if l.ctx.Value(constant.CtxLoginType) != nil {
|
||||||
req.LoginType = l.ctx.Value(constant.LoginType).(string)
|
req.LoginType = l.ctx.Value(constant.CtxLoginType).(string)
|
||||||
}
|
}
|
||||||
// Generate session id
|
// Generate session id
|
||||||
sessionId := uuidx.NewUUID().String()
|
sessionId := uuidx.NewUUID().String()
|
||||||
@ -149,8 +149,9 @@ func (l *UserRegisterLogic) UserRegister(req *types.UserRegisterRequest) (resp *
|
|||||||
time.Now().Unix(),
|
time.Now().Unix(),
|
||||||
l.svcCtx.Config.JwtAuth.AccessExpire,
|
l.svcCtx.Config.JwtAuth.AccessExpire,
|
||||||
jwt.WithOption("UserId", userInfo.Id),
|
jwt.WithOption("UserId", userInfo.Id),
|
||||||
|
jwt.WithOption("identifier", req.Identifier),
|
||||||
jwt.WithOption("SessionId", sessionId),
|
jwt.WithOption("SessionId", sessionId),
|
||||||
jwt.WithOption("LoginType", req.LoginType),
|
jwt.WithOption("CtxLoginType", req.LoginType),
|
||||||
)
|
)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
l.Logger.Error("[UserLogin] token generate error", logger.Field("error", err.Error()))
|
l.Logger.Error("[UserLogin] token generate error", logger.Field("error", err.Error()))
|
||||||
|
|||||||
@ -42,11 +42,11 @@ func DeviceMiddleware(srvCtx *svc.ServiceContext) func(c *gin.Context) {
|
|||||||
|
|
||||||
ctx := c.Request.Context()
|
ctx := c.Request.Context()
|
||||||
if ctx.Value(constant.CtxKeyUser) == nil && c.GetHeader("Login-Type") != "" {
|
if ctx.Value(constant.CtxKeyUser) == nil && c.GetHeader("Login-Type") != "" {
|
||||||
ctx = context.WithValue(ctx, constant.LoginType, c.GetHeader("Login-Type"))
|
ctx = context.WithValue(ctx, constant.CtxLoginType, c.GetHeader("Login-Type"))
|
||||||
c.Request = c.Request.WithContext(ctx)
|
c.Request = c.Request.WithContext(ctx)
|
||||||
}
|
}
|
||||||
|
|
||||||
loginType, ok := ctx.Value(constant.LoginType).(string)
|
loginType, ok := ctx.Value(constant.CtxLoginType).(string)
|
||||||
if !ok || loginType != "device" {
|
if !ok || loginType != "device" {
|
||||||
c.Next()
|
c.Next()
|
||||||
return
|
return
|
||||||
|
|||||||
@ -8,5 +8,6 @@ const (
|
|||||||
CtxKeyRequestHost CtxKey = "requestHost"
|
CtxKeyRequestHost CtxKey = "requestHost"
|
||||||
CtxKeyPlatform CtxKey = "platform"
|
CtxKeyPlatform CtxKey = "platform"
|
||||||
CtxKeyPayment CtxKey = "payment"
|
CtxKeyPayment CtxKey = "payment"
|
||||||
LoginType CtxKey = "loginType"
|
CtxLoginType CtxKey = "loginType"
|
||||||
|
CtxKeyIdentifier CtxKey = "identifier"
|
||||||
)
|
)
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user