Skip to content

Commit b085419

Browse files
FIx order when validating account settings (netbirdio#1632)
* moved extraSettings validation to the end * moved extraSettings validation directly after permission check
1 parent d78b652 commit b085419

File tree

1 file changed

+6
-6
lines changed

1 file changed

+6
-6
lines changed

management/server/account.go

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -917,12 +917,7 @@ func (am *DefaultAccountManager) UpdateAccountSettings(accountID, userID string,
917917
unlock := am.Store.AcquireAccountLock(accountID)
918918
defer unlock()
919919

920-
account, err := am.Store.GetAccountByUser(userID)
921-
if err != nil {
922-
return nil, err
923-
}
924-
925-
err = additions.ValidateExtraSettings(newSettings.Extra, account.Settings.Extra, account.Peers, userID, accountID, am.eventStore)
920+
account, err := am.Store.GetAccount(accountID)
926921
if err != nil {
927922
return nil, err
928923
}
@@ -936,6 +931,11 @@ func (am *DefaultAccountManager) UpdateAccountSettings(accountID, userID string,
936931
return nil, status.Errorf(status.PermissionDenied, "user is not allowed to update account")
937932
}
938933

934+
err = additions.ValidateExtraSettings(newSettings.Extra, account.Settings.Extra, account.Peers, userID, accountID, am.eventStore)
935+
if err != nil {
936+
return nil, err
937+
}
938+
939939
oldSettings := account.Settings
940940
if oldSettings.PeerLoginExpirationEnabled != newSettings.PeerLoginExpirationEnabled {
941941
event := activity.AccountPeerLoginExpirationEnabled

0 commit comments

Comments
 (0)