mirror of
https://github.com/ProtonMail/proton-bridge.git
synced 2025-12-23 10:26:44 +00:00
Migrate from old credentials
This commit is contained in:
@ -186,6 +186,13 @@ func (s *Store) List() (userIDs []string, err error) {
|
||||
continue
|
||||
}
|
||||
|
||||
// Old credentials using username as a key does not work with new code.
|
||||
// We need to ask user to login again to get ID from API and migrate creds.
|
||||
if creds.UserID == creds.Name && creds.APIToken != "" {
|
||||
creds.Logout()
|
||||
_ = s.saveCredentials(creds)
|
||||
}
|
||||
|
||||
credentialList = append(credentialList, creds)
|
||||
}
|
||||
|
||||
|
||||
@ -249,6 +249,14 @@ func (u *Users) FinishLogin(authClient pmapi.Client, auth *pmapi.Auth, mbPassphr
|
||||
}
|
||||
}
|
||||
|
||||
// Old credentials use username as key (user ID) which needs to be removed
|
||||
// once user logs in again with proper ID fetched from API.
|
||||
if _, ok := u.hasUser(apiUser.Name); ok {
|
||||
if err := u.DeleteUser(apiUser.Name, true); err != nil {
|
||||
log.WithError(err).Error("Failed to delete old user")
|
||||
}
|
||||
}
|
||||
|
||||
u.events.Emit(events.UserRefreshEvent, apiUser.ID)
|
||||
|
||||
return u.GetUser(apiUser.ID)
|
||||
|
||||
Reference in New Issue
Block a user