diff options
Diffstat (limited to 'store/sql_user_store.go')
-rw-r--r-- | store/sql_user_store.go | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/store/sql_user_store.go b/store/sql_user_store.go index 3fddfb77d..286b6551a 100644 --- a/store/sql_user_store.go +++ b/store/sql_user_store.go @@ -275,7 +275,7 @@ func (us SqlUserStore) UpdateFailedPasswordAttempts(userId string, attempts int) return storeChannel } -func (us SqlUserStore) UpdateAuthData(userId string, service string, authData *string, email string) StoreChannel { +func (us SqlUserStore) UpdateAuthData(userId string, service string, authData *string, email string, resetMfa bool) StoreChannel { storeChannel := make(StoreChannel, 1) @@ -301,6 +301,10 @@ func (us SqlUserStore) UpdateAuthData(userId string, service string, authData *s query += ", Email = :Email" } + if resetMfa { + query += ", MfaActive = false, MfaSecret = ''" + } + query += " WHERE Id = :UserId" if _, err := us.GetMaster().Exec(query, map[string]interface{}{"LastPasswordUpdate": updateAt, "UpdateAt": updateAt, "UserId": userId, "AuthService": service, "AuthData": authData, "Email": email}); err != nil { |