I am integrating Okta SSO on my Asp.net 4.7 app. Everything is working so far on Chrome, but on IE11 it never recognizes that I’m already logged in, even after I just did.
Here is the important part of my code:
oktaSignIn = new OktaSignIn({
baseUrl: "<%= Application["ssoBaseUrl"]%>",
clientId: "<%= Application["ssoClientId"]%>",
redirectUri: "<%= Application["ssoRedirectUri"]%>",
authParams: {
issuer: "<%= Application["ssoIssuer"]%>",
responseType: ['token', 'id_token'],
display: 'page',
}
});
if (oktaSignIn.token.hasTokensInUrl()) {
oktaSignIn.token.parseTokensFromUrl(
function success(res) {
//user tokenManager
},
function error(err) {
console.error(err);
}
);
}
else {
oktaSignIn.session.get(function (res) {
if (res.status === 'ACTIVE') { //User logged in
SSOSetup(res.login);
return;
}
else { //No user logged in
oktaSignIn.renderEl(
{ el: '#okta-login-container' },
function success(res) {
if (res.status == "SUCCESS") {
return;
}
},
function error(err) {
console.error(err);
}
);
}
});
}
On IE11 it always goes to the new user code path, ie. status != ACTIVE
Why is it like this and how can I fix it?