标题确实说明了一切,但当然会提供有关问题的一些细节。
背景
我的Ionic3应用程序正在使用OAuth 2.0进行身份验证。这是流程:
只要会话未过期,我就可以对用户进行身份验证,否则我可以使用refresh_token再次进行身份验证。
我的问题来自第2步。 我不确定 是 是否 清除浏览器缓存和/或清除会话缓存InAppBrowser。
如果我不清除浏览器缓存和会话缓存,我是否会将应用程序打开以防止任何漏洞或威胁?
如果是这样,我可以使用访问/刷新令牌进行连续身份验证,但我很好奇,无法找到有关此方案的更多信息。
示例清算:
webview = window.cordova.InAppBrowser.open(openIdUrl, '_blank', 'location=no,clearcache=yes,clearsessioncache=yes');
webview.addEventListener('loadstart', (event) => {
if(event.url.inclues('redirect://?code')) {
// Grab auth_code in event.url
...
webview.removeEventListener('exit', () => {})
webview.close();
// Send auth_code to my server
...
}
});
示例不清除:
webview = window.cordova.InAppBrowser.open(openIdUrl, '_blank', 'location=no,clearcache=no,clearsessioncache=no');
webview.addEventListener('loadstart', (event) => {
if(event.url.inclues('redirect://?code')) {
// Grab auth_code in event.url
...
webview.removeEventListener('exit', () => {})
webview.close();
// Send auth_code to my server
...
}
});
clearcache:设置为是,以便在打开新窗口之前清除浏览器的Cookie缓存
clearsessioncache:设置为是,以便在打开新窗口之前清除会话Cookie缓存
非常感谢任何明确的答案/知识。这个领域很新。