Slashdot Mirror


Windows XP, Games, and Administrator Privileges?

An anonymous reader asks: "I manage my kids' computer, running Windows XP Professional, with an iron fist. They have limited access rights as I do not want them accidentally deleting the wrong file or downloading trojan software. However, software products, particularly games, fight my user management schemes at every turn. Each user on the computer is member of the 'Gamers' group. This group has full access to the games directory, the place I install all of the game software. I did this since games often need to update configuration files or write save files. Despite these changes, I still run into problems. Our latest two games, Age of Mythology and Battlefield 1942, require administrator privileges irrespective of the file privileges. I have not been able to overcome the problem and it seems, based on Googling, that others are in the same boat. Fellow Slashdot readers, what have you done to overcome this problem?"

21 of 201 comments (clear)

  1. short answer by nsebban · · Score: 5, Informative

    1- Dual Boot (WinXp for you + Win98SE for your kids)
    2- A ghost image of the win98SE partition
    3- Let them play
    4- Wait for them to say "Dad it doesn't work anymore !"
    5- Restore your ghost backup
    6- Goto 3

    Seems a bit dub, but it works better and it's less a pain than managing XP user rights.

    --
    ____
    nico
    Nico-Live
    1. Re:short answer by Decado · · Score: 4, Informative

      Or you could just use the system restore facility that you got free with Windows XP. Install your games, set a system restore point (start->programs->accessories->system tools->system restore) and give full admin access to the kids. Then when they mess anything up go back to your known good restore point. Thats a hell of a lot easier than dual booting and ghosting and you dont need any extra software to do it.

      --

      Slashdot: Proof that a million monkeys at a million typewriters can create a masterpiece

    2. Re:short answer by Sparr0 · · Score: 0, Informative

      ha, as if system restore ever actually worked. of the thousands of people I know who use winxp on a regular basis system restore has never been anything but a nuisance to anyone. it never works properly when you need it, and it hogs a crapload of space when you dont want it.

  2. Standards? We don't need standards... by Drakino · · Score: 4, Informative

    Unfortunatly a ton of programs do not adhere to the exact standards they should, and there really isn't a way around it. XP easially lets you grant someone full control, or none, but this dosen't mean every program is going to listen and act the same. The sad realty is to get anything done on a Windows box, you have to sit logged in as an admin. It's ironic that a Microsoft published game is one of the ones giving you pains...

    Though, to address your current problem, you could create a new user, use the policy manager to only allow one of the troublesome games to be run, and grant them admin rights. Then use the "Run As" feature of XP to run that program as this new user, from the kids login. Just keep an eye on where the game is saving files, as it could be doing so in the new users home folder somewhere.

  3. secondary logon service by happylight · · Score: 5, Informative

    Use the secondary logon service. Right click on the game program short-cut, select properties, under the "Shortcut" tab click on advanced, then check the box that says "run with different credentials".

    It'll prompt you for the administrator password when you run it.

    1. Re:secondary logon service by Zardoz44 · · Score: 2, Informative

      Here's what he means:

      1. Kids want to play Warcraft, so they click shortcut.

      2. Shortcut has "run with different credentials" checked.

      3. Prompt asks for user information.

      4. Kids shout" "Daddy!".

      5. Dad comes over to computer, works his administrator magic.

      6. Game runs with administrator credentials, but the kids don't have it.

      The biggest problem is that there's bound to be a lot of shouting for "Daddy!" in that household if they really like the game.

    2. Re:secondary logon service by SurgeryByNumbers · · Score: 5, Informative

      Let me give you some more details on WinXP that will let you work around having your kids login as admin.

      1) Download (TweakUI) Powertools for WinXP from the Microsoft website.
      2) Create an admin login with the rights required to play the game, and use TweakUI to disable that account. No one will be able to actually login as that account.
      3) Set up the game to "run with different credentials," as outlinded above.

    3. Re:secondary logon service by Wildfire+Darkstar · · Score: 2, Informative

      No, I think the idea is to have only that one program run with administrator privileges. I.E., the game is executed, it alone runs as administrator, and, when it's done, the system is returned to user-level status.

      Windows XP does have the means to do this, although it's not particularly well documented. It's essentially the functional equivalent of running a "su -c progname" on a *nix-based system....

      --
      Sean Daugherty "I have walked in Eternity -- and Eternity weeps."
  4. Regmon + Filemon by EddWo · · Score: 5, Informative

    Use Regmon and Filemon from sysinternals.com to discover which files/keys the program is trying to modify and is failing on. Then adjust the ACLs on those files/keys so that the Gamers group has write access.

    One of the conditions for obtaining the "Designed for Windows XP" Logo is that the program must be capable of being run under a Limited user account. If MS's own software isn't capable of this then you ought to report it to them as a bug.

    The situation with XP home which only has "Limited" and "Administrator" account types really does not help people adopt more secure working practices.

    The situation ought to improve in future but at the moment it does not seem to be something that most developers test against.

    --
    "Taligent is still pure vapor. Maybe they'll be the last who jumps up on Openstep... "
    1. Re:Regmon + Filemon by Xiadix · · Score: 2, Informative

      There is a good write up about how one person deals with this here:
      How to run as non admin

      There was also a discussion about this on Broadband Reports
      Runing as admin

  5. VMWare by sigxcpu · · Score: 2, Informative

    Try using VMWare.
    you can isolate the game in its virtual copy of windows and grant it only limited acces to the real Network/Drives/System.

    --
    As of Postgres v6.2, time travel is no longer supported.
    1. Re:VMWare by Gyler+St.+James · · Score: 4, Informative

      Have you even TRIED to play a game like BF1942 in a frickin VM window? I have. It's not viable. Let them play DOOM, sure. Quake is fantastic in a VM. Max Payne 2 tries to run...keyword: tries. Never does. Love playing games at 1fps.

      --

    2. Re:VMWare by jmlyle · · Score: 2, Informative

      VMware does not have good graphics virtualization yet. They are looking at it.

      From a VMware Technical Support guy:

      There is no hardware acceleration available with the VMware virtual video card. Hardware provided 3-d acceleration won't work at all, last I checked.

      Windows Direct X provides software emulation where hardware acceleration is not available; unfortunately this is *very slow* and some/most 3d games don't even run with software emulated acceleration being the only 3d available.

      This is a feature request (look in the feature requests forum), but we don't have a 3-d video card virtualized yet, so I can't tell you for sure whether or not this will happen in the future.

      If we end up providing a full 3-d capable virtualized video card, I'll make sure to update on the feature requests forum when that happens.

      --
      I have misplaced my pants.
    3. Re:VMWare by Edgewize · · Score: 2, Informative

      VMware does not pass emulate your video card's features, it just uses a simple framebuffer. Since the virtual OS only sees a SVGA adapter, it cannot access your hardware 3D acceleration. So it is forced to emulate all the texturing, bump mapping, lighting, etc. through software. Obviously this leads to unacceptable game performance.

  6. Patches by NexusTw1n · · Score: 5, Informative

    Microsoft appear to have a patch for this problem, I don't know if that will fix it for you.

    Other ideas include giving "Gamers" full access to the "Program Files" directory in case it's trying to write there rather than your games directory.

    If that doesn't work then perhaps mail the CD back and ask for a refund. There is no reason any application, least of all a game should require admin rights for normal operation, and if it does, the software is not fit for the purpose it was sold for.

    --
    It has become appallingly obvious that our technology has exceeded our humanity. --Albert Einstein
  7. Check your ACLs by stevenbdjr · · Score: 4, Informative

    These kinds of problems are most certainly related to file and/or registry permissions. Working at a K-12, I'm often troubleshooting software that won't run as a normal user. I've found the majority of the problems are related to poorly written software trying to add and modify files to the SYSTEMROOT directory (usually c:\windows or c:\winnt). The rest are usually solved by opening up permissions on the applications registry keys under HKLM.

    Get yourself a copy of RegMon and FileMon from Sysinternals. You'll need to logon as an Administrator, start up reg or filemon, then do a RunAs on the application to run it as a normal user. You'll probably want to filter the output of reg/filemon to only show activity of the app itself, otherwise you'll be looking at all activity on the system. Look for ACCESS DENIED errors in places where normal users can't usually write. Slowly open up those areas to modify access until you've found a solution.

  8. Power Users by tiny69 · · Score: 3, Informative
    Add them to the "Power Users" group. From Computer Management:
    Power Users possess most administrative powers with some restrictions. Thus, Power Users can run legacy applications in addition to certified applications
    A large number of programs want to be able to write and modify files located in system directories as well as make changes in the registry. Normal Users are not allowed to do this.

    "Start --> Help --> Search --> Power Users" to get a list of the things Power Users are able to do and what they are restricted from doing.

    --
    Go not unto/. for advice, for you will be told both yea and nay (but have nothing to do with the question)
  9. XP and the Compatibility Engine. by tvadakia · · Score: 4, Informative

    One other thing you might consider is the fact that Windows XP initiates the Compatibility Engine on a lot of games. One game I can think of right off the bat that does is The Sims. A user needs to be either in the Power Users or the Administrators group in order to run a game or any other application with this engine included in use.

    There are a few things you might consider doing. First would to be to google to figure out how one might add the "lesser" users to be able to use the compatibility engine, or at least to run those particular applications (games) with elevated privledges. Another is to write a simple script to use the "runas" command to automatically run a program as administrator using a cached password (in the registry) to run the game in question and then creating a shortcut to that script on the desktop (or wherever) to run the game.

    One other thing you can do is add your kids to the power users group then use the Local Security Settings mmc and right-click on "Software Restriction Policies" and chose "Create New Policies." You then can start creating rules of what directories are accessable on the computer (make sure in the "Enforcement" policy to choose "All users except local administrators", you don't want to lock yourself out). You can refine which folders they are granted or denied access to by right-clicking on the "Additional Rules" folder and choosing a new "hash" rule to specify a particular application itself, or a new "path rule" to specify an application path (which'll include EVERYTHING in all subfolders within that path.)

    These are just a few ideas to get you started down the path.

    --
    Unique.
  10. Re:OT:Where do I find def'ns for Win's process nam by EddWo · · Score: 4, Informative

    A list of system processes, what they are for etc.
    http://www.liutilities.com/products/wintasks pro/pr ocesslibrary/

    A lot of system services share process space with each other. You will have 3 or more svchost processes. To find out which services are safe to disable.

    http://www.blackviper.com/WinXP/servicecfg.htm

    --
    "Taligent is still pure vapor. Maybe they'll be the last who jumps up on Openstep... "
  11. Run as different user/Crack the games? by rufo · · Score: 5, Informative

    No, they don't. It says right on that page to "try logging in as an Administrator" before it says to install the fix.

    The reason the games need this is because of the CD copy protection; they need to access the drive directly to be able to see whether the bad sectors/whatever hidden data they're looking for are there. You could try cracking the games and seeing if that helps, as I'm pretty sure that's the only they need Admin access - a good site for cracks is GameCopyWorld. I often use them because I'm a lazy bastard who doesn't want to risk ruining his (original!) CDs by switching them around all the time, and I've never had a problem with any of the cracks I've downloaded from there.

    One other possible method.. Isn't there a way to have Windows "run as" a different user (ala +s on UNIX)? So you could have it run as some special Admin-priveleged user, while keeping them in the non-Admin account most of the time.

    --
    My English teacher once told me that two positives don't make a negative. Two words for her: Yeah, right.
    1. Re:Run as different user/Crack the games? by Permission+Denied · · Score: 2, Informative
      Isn't there a way to have Windows "run as" a different user (ala +s on UNIX)?

      No, Windows doesn't have setuid executables, but if it did that would be a quick fix to his problem. The "run as different user" feature prompts the user for the target account's password before running. The proper solution would be to give the account access to read those non-filesystem sectors on the CD, but I have no idea what API games use to implement this.

      It also may be difficult to reimplement the "run as" feature so it does not ask for a password. Windows does not have any equivalent to a "setuid" system call: to change a program's credentials, one must provide a password. You can see this when you try to run a service under a different account: it will prompt you for the target account's password if you don't have the service run under SYSTEM (svchost runs under SYSTEM (the real equivalent to root, more privileged than administrators), so services don't need a password to run under that account). This password is then saved somewhere (not sure where or how, but the calls require plaintext passwords so it must be recoverable). When Windows apologists claim that the Windows security architecture is well-designed but it only has been tainted by backwards-compatibility, this is one of the examples I use to refute their claims.

      It may be possible to build an executable that has an administrator password built into it. The idea is that you have a service (running as SYSTEM) and then a small program that communicates with the service and asks it to launch an executable. The service has the password built into it (or stored somewhere), so the user is never prompted for a password. Or equivalently, the service runs under the target account and you let Windows save the password for you (presumably, Windows will somehow obscure the password). Obviously, this makes the password available in cleartext to available to anyone who can boot off a Linux floppy and bypass filesystem controls, but I'm guessing you're not worried about your kids doing this.

      Writing such a service is very non-trivial. The security APIs it uses are very poorly documented and you have to go through all kinds of loops to allow a service to interact with the user's desktop (necessary for the spawned game process). This stuff is so horrid that I don't touch it without getting paid, but I'm available for consulting work if it's that important to anyone :)