JSchlackman Posted October 12, 2012 Posted October 12, 2012 (edited) Hello all, long time lurker here on EduGeek, and for my first post I'd like to share with you a program I've written to deal with a problem we had with multiple logons on our Windows 7 domain. We have Fast User Switching enabled to allow people to share workstations without sharing login details, but I found that we would end up with stale logons where someone would switch user, then the original user would forget they didn't log off. The logon would then sit there for weeks on end, consuming resources and preventing Windows Update from automatically restarting after updates were applied. I thought about having a scheduled restart in the evenings or weekends, but that would annoy the few people who lock their workstation at night instead of logging off (me included), when I really only cared about the forgotten logons in the background. Looking around in Group Policy, I found that Remote Desktop Services allows you to automatically log off unused sessions after a set time has elapsed, but even though FUS is based on RDS, the limits don't apply to workstations. So, I wrote a program to make them apply. http://sessionarbiter.codeplex.com/ Now any session that is in the Disconnected state (i.e. someone else has clicked Switch User) will now be logged off after 18 hours. Logons that are merely locked do not fall into this category, as they are still treated as an active session. The time limit is completely configurable, and you can even use the RDS group policy settings to configure it (just don't install the program on your RDS servers as it might do something horrible, like how putting 'google' in to Google will break the Internet). I've had this deployed on all our workstations since March with no side-effects, so I'm pretty sure it's stable. Notably, I have also not had a single user complain that their account was logged off without their consent, so I'm pretty sure no-one was leaving their account logged on intentionally. It runs as a service and has an .msi that works for GPO deployment or via SCUP/LUP. Hope this is of some use to someone! Edited October 12, 2012 by JSchlackman 1
JSchlackman Posted November 8, 2012 Author Posted November 8, 2012 Posted an update to this earlier in the week with some new functionality - somewhat different from the original, but addressing another limitation in the options Windows provides. Session Arbiter can now be used to configure a laptop to log off the current user when the lid is closed (an option not natively available in Windows), as well as optionally placing the laptop into Sleep or Hibernate once the logoff has finished. We are using this with our loan pool laptops, as we frequently found that pupils would start logging off and then immediately close the lid (causing roaming profile sync problems), or forget to log off entirely (causing account hijacking problems). Now closing the lid will log off the user, and then put the laptop to sleep, and we've had far fewer problems since. This functionality can be used independently of the time limit functionality, so if you don't want time limits, you can simply not configure that part and just use the program to do the lid-close logoffs.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now