mirror of
https://github.com/zitadel/zitadel.git
synced 2025-08-11 20:57:31 +00:00
Merge pull request from GHSA-6rrr-78xp-5jp8
This commit is contained in:
@@ -18,6 +18,7 @@ type HumanRefreshTokenWriteModel struct {
|
||||
UserState domain.UserState
|
||||
IdleExpiration time.Time
|
||||
Expiration time.Time
|
||||
UserAgentID string
|
||||
}
|
||||
|
||||
func NewHumanRefreshTokenWriteModel(userID, resourceOwner, tokenID string) *HumanRefreshTokenWriteModel {
|
||||
@@ -48,6 +49,8 @@ func (wm *HumanRefreshTokenWriteModel) AppendEvents(events ...eventstore.Event)
|
||||
continue
|
||||
}
|
||||
wm.WriteModel.AppendEvents(e)
|
||||
default:
|
||||
wm.WriteModel.AppendEvents(e)
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -61,14 +64,18 @@ func (wm *HumanRefreshTokenWriteModel) Reduce() error {
|
||||
wm.IdleExpiration = e.CreationDate().Add(e.IdleExpiration)
|
||||
wm.Expiration = e.CreationDate().Add(e.Expiration)
|
||||
wm.UserState = domain.UserStateActive
|
||||
wm.UserAgentID = e.UserAgentID
|
||||
case *user.HumanRefreshTokenRenewedEvent:
|
||||
if wm.UserState == domain.UserStateActive {
|
||||
wm.RefreshToken = e.RefreshToken
|
||||
}
|
||||
wm.RefreshToken = e.RefreshToken
|
||||
wm.IdleExpiration = e.CreationDate().Add(e.IdleExpiration)
|
||||
case *user.HumanSignedOutEvent:
|
||||
if wm.UserAgentID == e.UserAgentID {
|
||||
wm.UserState = domain.UserStateDeleted
|
||||
}
|
||||
case *user.HumanRefreshTokenRemovedEvent,
|
||||
*user.HumanSignedOutEvent,
|
||||
*user.UserLockedEvent,
|
||||
*user.UserDeactivatedEvent,
|
||||
*user.UserRemovedEvent:
|
||||
|
Reference in New Issue
Block a user