Skip to content
Snippets Groups Projects
Commit 7ba1c9f0 authored by Muthukrishnanmatriot's avatar Muthukrishnanmatriot
Browse files

TMSS-937 - updated the code for Keycloak authenticate

parent ab04c5d7
No related branches found
No related tags found
2 merge requests!634WIP: COBALT commissioning delta,!577Resolves TMSS-937
...@@ -14,16 +14,19 @@ const Auth = { ...@@ -14,16 +14,19 @@ const Auth = {
user = JSON.parse(user); user = JSON.parse(user);
return Auth.getUserPermission(user); return Auth.getUserPermission(user);
}else { }else {
user = sessionStorage.getItem("user"); const res = await AuthService.keycloakAuthenticate();
console.log('Keycloak:',user); if(res && res.is_authenticated){
if (user) { localStorage.setItem("loginType", 'Keycloak');
user = JSON.parse(user); const cookies = document.cookie.split(';').reduce((prev, current) => {
const res = await AuthService.keycloakAuthenticate(); const [name, value] = current.split(/\s?(.*?)=(.*)/).splice(1, 2);
if(res && res.is_authenticated){ prev[name] = value;
localStorage.setItem("loginType", 'Keycloak'); return prev;
return Auth.getUserPermission(user); }, {});
} const userDetails = {'name':res.username, 'token': cookies.csrftoken};
} axios.defaults.headers.common['Authorization'] = `Token ${cookies.csrftoken}`;
localStorage.setItem("user", JSON.stringify(userDetails));
return Auth.getUserPermission(userDetails);
}
} }
await PermissionStackUtil.getPermissions(false); await PermissionStackUtil.getPermissions(false);
return false; return false;
......
...@@ -79,15 +79,11 @@ export class Login extends Component { ...@@ -79,15 +79,11 @@ export class Login extends Component {
* @param {*} * @param {*}
*/ */
async doKeyCloakLogin(e) { async doKeyCloakLogin(e) {
/** For testing */
//sessionStorage.setItem("user", JSON.stringify({name:'test',"token":"eaa9a75f31339955cfaca1f7c94b01b1dd327d04"},));
/** End */
this.setState({redirect: UIConstants.KEYCLOAK_AUTH_URL}); this.setState({redirect: UIConstants.KEYCLOAK_AUTH_URL});
} }
/** /**
* redirect to forget password page * Redirect to forget password page
*/ */
async forgetPassword() { async forgetPassword() {
this.setState({redirect: UIConstants.FORGET_PASSWORD_URL}); this.setState({redirect: UIConstants.FORGET_PASSWORD_URL});
......
...@@ -17,9 +17,7 @@ const AuthService = { ...@@ -17,9 +17,7 @@ const AuthService = {
keycloakAuthenticate: async() => { keycloakAuthenticate: async() => {
try { try {
delete axios.defaults.headers.common['Authorization']; delete axios.defaults.headers.common['Authorization'];
const response = await axios.post(UIConstants.KEYCLOAK_AUTHENTICATE_URL); const response = await axios.get(UIConstants.KEYCLOAK_AUTHENTICATE_URL);
console.log('keycloakAuthenticate =>',response)
//axios.defaults.headers.common['Authorization'] = `Token ${response.data.token}`;
return response.data; return response.data;
} catch(error) { } catch(error) {
console.error('Error [keycloakAuthenticate]',error); console.error('Error [keycloakAuthenticate]',error);
...@@ -34,7 +32,6 @@ const AuthService = { ...@@ -34,7 +32,6 @@ const AuthService = {
} else { } else {
console.log('deAuthenticate url:', UIConstants.KEYCLOAK_LOGOUT_URL); console.log('deAuthenticate url:', UIConstants.KEYCLOAK_LOGOUT_URL);
await axios.post(UIConstants.KEYCLOAK_LOGOUT_URL); await axios.post(UIConstants.KEYCLOAK_LOGOUT_URL);
sessionStorage.removeItem("user");
} }
localStorage.removeItem("loginType"); localStorage.removeItem("loginType");
} catch(error) { } catch(error) {
......
const UIConstants = { const UIConstants = {
KEYCLOAK_AUTH_URL: '/oidc/authenticate', KEYCLOAK_AUTH_URL: '/oidc/authenticate/',
KEYCLOAK_LOGOUT_URL: '/oidc/logout/', KEYCLOAK_LOGOUT_URL: '/oidc/logout/',
KEYCLOAK_AUTHENTICATE_URL: '/api/authentication_state/', KEYCLOAK_AUTHENTICATE_URL: '/api/authentication_state/',
FORGET_PASSWORD_URL: '/api/forgetpass/', FORGET_PASSWORD_URL: '/api/forgetpass/',
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment