Go Premium for a chance to win a PS4. Enter to Win

x
?
Solved

How do I kill a session when closing a tab without logging off?

Posted on 2014-12-18
18
Medium Priority
?
388 Views
Last Modified: 2016-05-13
Have a web app open with sensitive data in a browser tab.  The user closes the tab without logging off of the application.  The browser is still open with other tabs.  I can go onto another tab and select "reopen closed tabs" & my sensitive data is returned to me with the session still live.

We've tried the below suggestions, however, this is not working as needed.

http://stackoverflow.com/questions/1921941/close-kill-the-session-when-the-browser-or-tab-is-closed

http://stackoverflow.com/questions/19582615/end-session-on-browser-tab-close?answertab=active#tab-top

http://forums.asp.net/t/1527772.aspx?Kill+session+whether+user+closes+tab+or+closes+browser

http://yuvrajingale.wordpress.com/2013/01/23/how-to-destroy-session-when-users-close-the-browser-tab-in-php/
0
Comment
Question by:srtindall
  • 7
  • 3
  • 2
  • +2
18 Comments
 
LVL 61

Expert Comment

by:HainKurt
ID: 40507696
on close show a message and force user to click logout!
0
 
LVL 61

Expert Comment

by:HainKurt
ID: 40507699
or like this

$(window).unload(function() {
    var answer=confirm("Are you sure you want to leave?");
if(answer){
    //ajax call here -- call your logout.aspx
    }
});


or just call logout...

$(window).unload(function() {
    //ajax call here -- call your logout.aspx
    }
});
0
 
LVL 6

Expert Comment

by:ajeab
ID: 40507704
for IE
try
setting --> Advanced --> under Browsing section, uncheck "reuse windows for launching shortcut" ,

under Security section "donot save encrypted pages to disk" check
0
NFR key for Veeam Agent for Linux

Veeam is happy to provide a free NFR license for one year.  It allows for the non‑production use and valid for five workstations and two servers. Veeam Agent for Linux is a simple backup tool for your Linux installations, both on‑premises and in the public cloud.

 
LVL 61

Expert Comment

by:HainKurt
ID: 40507714
ajeab, this is webapp and author wants to control this...
not trying to force all users do some changes to their browsers, which is not possible...
0
 

Author Comment

by:srtindall
ID: 40507751
This code works when closing the browser window, but doesn't work on closing just the tab.

Any solutions for closing the tab with the browser window staying open?
0
 
LVL 61

Accepted Solution

by:
HainKurt earned 1000 total points
ID: 40507781
beforeunload maybe:

<script>
window.addEventListener("beforeunload", function (e) {
  alert("really");
  var confirmationMessage = "sure";

  (e || window.event).returnValue = confirmationMessage; //Gecko + IE
  return confirmationMessage;                            //Webkit, Safari, Chrome
});
</script>

Open in new window


tested with chrome & IE, working fine.... i mean it is firing the event... so u can do a ajax call here...
0
 
LVL 58

Assisted Solution

by:Gary
Gary earned 1000 total points
ID: 40507791
It's how browsers work, Hain gave you a possible solution but there is no guarantee it will fire. Developers have been trying for a long to time to 100% successfully fire code when the tab/browser is closed.

Apart from that it's a bad idea anyway - what if I open a link in a new tab and close the old tab or the new one - then you kill my session and I lose everything.
0
 
LVL 61

Expert Comment

by:HainKurt
ID: 40507800
+1 Gary

Apart from that it's a bad idea anyway - what if I open a link in a new tab and close the old tab or the new one - then you kill my session and I lose everything.

sometimes i duplicate a page and close one randomly later :) if you implement such thing, i will get really mad...
0
 
LVL 61

Expert Comment

by:HainKurt
ID: 40507816
just did a test with my bank site...

logged in, duplicated page (my accounts), closed randomly one of them... no issues... they work fine...

Then i copied url and closed all bank sites (tabs) and opened a new tab, and pasted the url

voila! page is there!...

summary: put a warning on your page, saying

BEWARE!!! Just do not close the site! use LOGOUT! or else your data may be stolen (public computers)
0
 
LVL 57

Expert Comment

by:McKnife
ID: 40508707
What are you trying to protect against? Someone establishes a session, I guess https is used. If he closes the browser, the session is gone. If he closes only the tab, it is not gone, that's it.
So you fear that he closes the tab and leaves his computer unattended and unlocked afterwards? He should lock his computer.
0
 

Author Comment

by:srtindall
ID: 40509757
Thanks for the Beware comment, already working down that path.

Not sure I get the "it's a bad idea"

I'm trying to protect PHI data.  Can't control if the end user locks his/her computer, especially on a public computer.
0
 
LVL 61

Expert Comment

by:HainKurt
ID: 40510137
even the big banks do not do such thing, so why worry? educate your users...
also, keep your session timeout short (5 min for example) instead of default (15-20 min)
0
 
LVL 58

Expert Comment

by:Gary
ID: 40510303
The best thing you can do is adopt a 10 minute session (Hain says 5 minutes, I think that is too short - I know I could spend 10 minutes looking through a statement)
And here is the biggie no "Remember me".
If people are stupid enough to use a public computer and not do a complete log out well you can't fix stupid.

If someone want's to do anything other than look at things, say change the password then you ask them to enter the password again - this can eliminate the kind of hacking I think you are trying to prevent.  It's an hassle but is quite widely implemented where you are transferring money, changing the password etc to prevent any possibility of someone else using the account.
0
 
LVL 57

Expert Comment

by:McKnife
ID: 40510685
"I'm trying to protect PHI data.  Can't control if the end user locks his/her computer, especially on a public computer" - and you are sure this type of data may even be viewed on public computers? No matter how the login/logout is managed, the data is already at risk when you use an untrusted machine to view it.
You should limit the ability of viewing the data to managed computers only that have a lockscreen policy enforced. If you make it viewable from anywhere, you are at fault already. The login info could get compromised easily, screenshots could be taken, anything.
0
 
LVL 6

Expert Comment

by:ajeab
ID: 40510889
I'm in similar situation as your.  my EHR using IE only and lot of setting has to be done.  that is why I'm now evaluate visual app (citrix xenapp, 2x, vmview)  this way you will be sure that IE session do not remain on remote computer. but it's not cheap.  you will need at minimum RDS server,  RDS client license, and couple of VMs for gateway.
0
 
LVL 57

Expert Comment

by:McKnife
ID: 41584372
0

Featured Post

NEW Veeam Backup for Microsoft Office 365 1.5

With Office 365, it’s your data and your responsibility to protect it. NEW Veeam Backup for Microsoft Office 365 eliminates the risk of losing access to your Office 365 data.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

With the evolution of technology, we have finally reached a point where it is possible to have home automation features like having your thermostat turn up and door lock itself when you leave, as well as a complete home security system. This is a st…
This article is about my experience upgrading my consulting machine to Windows 10 Version 1709 (The Fall 2017 Creator Update)
Sending a Secure fax is easy with eFax Corporate (http://www.enterprise.efax.com). First, just open a new email message. In the To field, type your recipient's fax number @efaxsend.com. You can even send a secure international fax — just include t…
In a question here at Experts Exchange (https://www.experts-exchange.com/questions/29062564/Adobe-acrobat-reader-DC.html), a member asked how to create a signature in Adobe Acrobat Reader DC (the free Reader product, not the paid, full Acrobat produ…

926 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question