Forum Discussion
RFLORY_78743
Nimbostratus
Apr 08, 2013Session Inactivity and browser reset
We have an application that we want to set a different timeout for a set of machines (kiosks). I have an iRule already for another app that can detect the inactivity, but what I am having trouble with is the requirement to clear the screen after the inactivity to wipe any sensitive data. Can someone point me in the right direction.
3 Replies
- Kevin_Stewart
Employee
Just out of curiosity, how are you detecting inactivity? And is this a browser-based app? If it is browser-based, and you're asking how to clear the browser screen after inactivity, this is a client side process which would be best handled by some injected JavaScript in an HTTP response. Even then, there's no real guarantee that you can completely eliminate the client side (possibly cached) data. - RFLORY_78743
Nimbostratus
I use a simple session like
session add simple [HTTP::cookie value mycookie] active 60
Then when a request comes in if I do not have the session then i flag it as having a period of inactivity....
So I can catch the next request and block them from going further. But they want the screen redirected to remove any data that may have been being displayed. Not worried about the cache. These are Kiosks in the warehouse for the workers to check the hours paycheck etc. They will be locked down to where they cannot do much, the worry is that someone will walk off and leave their information on the screen.
I though about injecting javascript but not sure how that would work. - Kevin_Stewart
Employee
Controlling browser behavior like the back button is considerably difficult, so while you may be able to redirect away from the screen, it may not prevent going back to previous content. Here is a VERY simple script that injects a JavaScript timer into every response page. The timer restarts on every page load, but DOES NOT account for activity within the browser (mouse movements, etc.) so you'll need to modify it for that. This is just an example of how to inject the JavaScript:when HTTP_REQUEST { STREAM::disable HTTP::header remove "Accept-Encoding" } when HTTP_RESPONSE { if { [HTTP::header value Content-Type] contains "text" } { STREAM::expression {@@@} STREAM::enable } }
Apply a blank Stream profile to the virtual server for this to work.
Help guide the future of your DevCentral Community!
What tools do you use to collaborate? (1min - anonymous)Recent Discussions
Related Content
DevCentral Quicklinks
* Getting Started on DevCentral
* Community Guidelines
* Community Terms of Use / EULA
* Community Ranking Explained
* Community Resources
* Contact the DevCentral Team
* Update MFA on account.f5.com
Discover DevCentral Connects