fix: Factors login policy (#2276)

* fix: check policy removed on factors

* fix: check policy removed on factors
This commit is contained in:
Fabi 2021-08-30 07:24:04 +02:00 committed by GitHub
parent 5b4c64d740
commit e8da0e3f4f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 20 additions and 2 deletions

View File

@ -34,6 +34,8 @@ func (wm *OrgSecondFactorWriteModel) AppendEvents(events ...eventstore.EventRead
if wm.MFAType == e.MFAType {
wm.WriteModel.AppendEvents(&e.SecondFactorRemovedEvent)
}
case *org.LoginPolicyRemovedEvent:
wm.WriteModel.AppendEvents(&e.LoginPolicyRemovedEvent)
}
}
}
@ -50,7 +52,8 @@ func (wm *OrgSecondFactorWriteModel) Query() *eventstore.SearchQueryBuilder {
AggregateIDs(wm.WriteModel.AggregateID).
EventTypes(
org.LoginPolicySecondFactorAddedEventType,
org.LoginPolicySecondFactorRemovedEventType).
org.LoginPolicySecondFactorRemovedEventType,
org.LoginPolicyRemovedEventType).
Builder()
}
@ -81,6 +84,8 @@ func (wm *OrgMultiFactorWriteModel) AppendEvents(events ...eventstore.EventReade
if wm.MFAType == e.MFAType {
wm.WriteModel.AppendEvents(&e.MultiFactorRemovedEvent)
}
case *org.LoginPolicyRemovedEvent:
wm.WriteModel.AppendEvents(&e.LoginPolicyRemovedEvent)
}
}
}
@ -97,7 +102,8 @@ func (wm *OrgMultiFactorWriteModel) Query() *eventstore.SearchQueryBuilder {
AggregateIDs(wm.WriteModel.AggregateID).
EventTypes(
org.LoginPolicyMultiFactorAddedEventType,
org.LoginPolicyMultiFactorRemovedEventType).
org.LoginPolicyMultiFactorRemovedEventType,
org.LoginPolicyRemovedEventType).
Builder()
}
@ -150,6 +156,13 @@ func (wm *OrgAuthFactorsAllowedWriteModel) Reduce() error {
case *org.LoginPolicyMultiFactorRemovedEvent:
wm.ensureMultiFactor(e.MFAType)
wm.MultiFactors[e.MFAType].Org = domain.FactorStateRemoved
case *org.LoginPolicyRemovedEvent:
for factorType, _ := range wm.SecondFactors {
wm.SecondFactors[factorType].Org = domain.FactorStateRemoved
}
for factorType, _ := range wm.MultiFactors {
wm.MultiFactors[factorType].Org = domain.FactorStateRemoved
}
}
}
return wm.WriteModel.Reduce()
@ -188,6 +201,7 @@ func (wm *OrgAuthFactorsAllowedWriteModel) Query() *eventstore.SearchQueryBuilde
org.LoginPolicySecondFactorRemovedEventType,
org.LoginPolicyMultiFactorAddedEventType,
org.LoginPolicyMultiFactorRemovedEventType,
org.LoginPolicyRemovedEventType,
).
Builder()
}

View File

@ -21,6 +21,8 @@ func (wm *SecondFactorWriteModel) Reduce() error {
case *policy.SecondFactorRemovedEvent:
wm.MFAType = e.MFAType
wm.State = domain.FactorStateRemoved
case *policy.LoginPolicyRemovedEvent:
wm.State = domain.FactorStateRemoved
}
}
return wm.WriteModel.Reduce()
@ -41,6 +43,8 @@ func (wm *MultiFactorWriteModel) Reduce() error {
case *policy.MultiFactorRemovedEvent:
wm.MFAType = e.MFAType
wm.State = domain.FactorStateRemoved
case *policy.LoginPolicyRemovedEvent:
wm.State = domain.FactorStateRemoved
}
}
return wm.WriteModel.Reduce()