diff options
author | Yoshie Muranaka <yoshiemuranaka@gmail.com> | 2020-06-22 23:28:09 +0300 |
---|---|---|
committer | Derick Montague <derick.montague@ibm.com> | 2020-07-22 00:46:43 +0300 |
commit | 2c98b0954ac5c50ea9c77e9ee780e3dee4fcdad8 (patch) | |
tree | 32b795b008fcb81facc5138794efe83482534df6 /src/views/Login/Login.vue | |
parent | 9ccb8a9768d90376d33b37d817929b916f405042 (diff) | |
download | webui-vue-2c98b0954ac5c50ea9c77e9ee780e3dee4fcdad8.tar.xz |
Add check if password change required at Login
After successfully authenticating on the Login page, check
/redfish/v1/AccountService/Accounts/${username} endpoint for
the PasswordChangeRequired property to see whether or not the
password is expired. If the password is expired, then navigate
to the Change password page, if the password isn't expired
navigate to the Overview page.
After successfully changing an expired password, navigate to the
Overview page.
Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com>
Change-Id: I32de5f71bcfcbe4099c2953a31c05ba0ebe670bc
Diffstat (limited to 'src/views/Login/Login.vue')
-rw-r--r-- | src/views/Login/Login.vue | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/views/Login/Login.vue b/src/views/Login/Login.vue index 369c56dd..e33cde78 100644 --- a/src/views/Login/Login.vue +++ b/src/views/Login/Login.vue @@ -118,12 +118,22 @@ export default { const password = this.userInfo.password; this.$store .dispatch('authentication/login', [username, password]) - .then(() => this.$router.push('/')) .then(() => { localStorage.setItem('storedLanguage', i18n.locale); localStorage.setItem('storedUsername', username); this.$store.commit('global/setUsername', username); this.$store.commit('global/setLanguagePreference', i18n.locale); + return this.$store.dispatch( + 'authentication/checkPasswordChangeRequired', + username + ); + }) + .then(passwordChangeRequired => { + if (passwordChangeRequired) { + this.$router.push('/change-password'); + } else { + this.$router.push('/'); + } }) .catch(error => console.log(error)) .finally(() => (this.disableSubmitButton = false)); |