Sunday, April 15, 2007

.

Security permissions: would an “ask me” option make sense?

I'm always irritated when I install a program that decides to start a piece of itself out of the registry key

HKLM\Software\Microsoft\Windows\CurrentVersion\Run without good reason and without asking me. Ditto for programs that put their shortcuts on the desktop (that's not where I keep things), and that sort of stuff. To fend that off, I've sometimes set “deny” permissions for myself, preventing myself from creating new items in the Run registry key, for instance.

The trouble with that approach is that some installer programs will die horribly when they come up against that. Some quietly ignore the error and carry on; some tell you about the error and let you choose to ignore it; some tell you about the error and die; some die without explaining why. Of course, when you've forgotten that you've done this, and you install some software, and the installer says something like “Installation failed,” with no further explanation... well, you get even more annoyed don't you?

So I propose a new security permission option. In addition to “grant” and “deny”, I would add “ask”, which would override “grant”. If a permission of “ask” were in effect, the system would ask the user what to do, and there would be three possible answers:

  1. Do it.
  2. Fail it.
  3. “Let's not, and say we did.” That is, do not do it, but report success to the requester.
That last choice would allow me to protect what I want, without causing the installers or other applications to fail as a result.

It's possible that “Let's not, and say we did,” could be a good permission choice in itself, but I'd hesitate to allow it without a prompt because it could cause unexpected behaviour when you forget that it's set. It's probably safest to allow it only behind a prompt.

For my readers who're computer types: What do you think?

2 comments:

Ray said...

The obvious problem I see with #3 is that subsequent operations might depend upon whatever it was you fibbed about actually being there.

Years ago I had occasion to work quite intimately with the Mac operating system (this was back when they still used the Motorola 68000 processor). I was also recently 'bequeathed' an old iMac with which I have been playing for a few days. I was, and still am, quite struck with how much better behaved Mac applications appear to be in respect of installing and removing them. Now, perhaps it's because I haven't had sufficient experience to discover all of the Mac's quirks, but it does seem to me there is much tighter control over applications than there is in the wild west that is Windows.

Not that this helps you in the slightest, but I just thought I'd mention it :-)

Anonymous said...

Barry, take a look at Mike Lin's free Startup Monitor -- a very small, simple way to have a "ask me" dialog for programs that attempt to register to run on startup. I've never had a problem with it causing any installations to fail, but I tend to answer the prompts in a timely manner. For existing applications, his Startup Control Panel is also nice, although I think Windows XP already comes with a similar tool...not as spiffy...called ??msconfig ? Neither of these will protect you from programs that create a windows service....