On CBS MoneyWatch: 6 things NOT to do on Twitter, Facebook
BNET Business Network:
BNET
TechRepublic
ZDNet
TalkBack 18 of 89:
Next »
« Previous
True, it's better for XP stability too
Applications that have been modified to avoid UAC prompts are certainly better written now, because they install themselves so that no user settings will be stored in global security realms like system directories or in system registry : HKEY_LOCAL_MACHINE or HKEY_CLASSES_ROOT. Also these applications will not suffer from slow "File virtualization" in Vista, and upgradability will be simplified.
The benefit is that a user running Windows no longer modifies the shared system entries, and if they crash something, all that can be damaged is in the settings of their own user account, but not the settings used by another user account. This way, it's simpler to revert from a bogous or malicious software action: just logon with another user, and you get a fresh clean and undamaged environment, without the bogous browser helper apps, broken file links/shortcuts, and so on.
UAC enforces the recommandatations that were present since very long in Windows (for ever in NT and 2000, or since XP, and even in Windows 95/98), that highly recommanded applications to split the user settings from application and system settings.
Settings that will be shared acros all users in a host or domain will be regulated by system policies, and a system administrator will still be needed to overwrite these areas.

Those applications now modified to avoid prompts will also be cleaner in XP (and 95 or 98 if they don't absolutely need more features found only in Vista). They are also simpler to uninstall, and it's very simple to limit the number of garbage remaining on the system, because most changes made by the applications will be done only on the user's settings. All applications will have their reasonnable defaults thaty only the system administrator can modify (or break), or those application will have to create a separate system service to provide the isolation between the user-level settings and the system, and protect that interface if it must be made accessible to users. Most of the time, such service (that can only be installed and run by a user with the administrator security token) willnot be needed. It will be then possible to run those apps directly from the user account without modifying anything in the shared local system policy or shared group policy.

With UAC enforcing those things, all applications modified to comply with it get stronger security, and the system is much more resistant to malicious software such as worms and troyans in a browser.

I'd like to see the UAC enforced even more: there should also exist a "user security token" that will be needed to protect the settings and private data of a user, against abuse by foreign sites. When browsing the web or reading emails for example, the local user would not be directly visible, but it would just be a "web identity" without the user privilege. Microsoft did not really create it, but it introduced something else that may be more powerful: remote identities, that are isolated by domains; this means that even when you download files in your home directory, the file is marked as originating from another site and not directly part of your own local user realm; the file belongs to your identity on that remote site, and when running it, it should not automatically get the user token without asking for user permission (no permission will be needed to run that file to perform actions with the original web sites). This is the same concept as the isolation mechanism found in web cookies that are protected by domain, and have lower privileges than the local user (who acts as an administrator for the remote identities whose usage is not fully within his own direct control)

So I think that UAC is just the start of a more serious reform of the security model in Windows, towards *MORE* isolation levels, in a multilevel hierarchy.

What is misleading for users in UAC is the fact that the "Administrator" logon is not the highest administrator of the system: when you logon, you effectively get the seciroty token to the Administrator, but the Explorer shell starts by first creating a secondary identity with a lower privilege, from which all applications will be run. If an application requires some privilege, it will not doirectly perform the action but will call a service owned by the user with the admin privilege through a proxy; it is that proxy that displays the authorization dialog; if the action is accepted then the proxy will provide the privilege security token and the application will restart the action with this token, granted by the invisible user with higher privilege.

The same could be added on top of XP (the necessary APIs, that can impersonate a current user acoount to another one with lower privileges) are present in Windows since ever.

Unix/Linux currently still lacks a similar mechanism to provide layered user privileges (it just has user ID, group ID, and system wide levels, and no clean way to manage multiple levels except by multiplying the number of users, one for each privilege level); in Windows, visible users are in fact groups, containing several users with distinct privileges, and groups can also be part of other groups. To solve this issue, Unix should treat everyting by using the pair (user, group) to manage the distinct privileges in groups, where each group defines its own privileges; at one time an applciation should be running in one user account, but one or several groups, something still not implemented, and in fact inappropriate to manage unlimited numbers of security tokens (such as one identity per remote site): this can only be implemented in browsers for things like cookies, but there's still no central repository of tokens that a user can manage.

Windows is still not perfect: all files that belong to a remote site realm are part of the same "remote" area (the "Internet domain"). This should go further: remote Internet realms should become separable and identified by Internet domains (Windows manage it partly only for domains managed by a Windows domain server). Every installed file on the system should track its origin (at least its domain) using secure protocols (and if the identity of the remote site is not fully verified, there should exist a recorded status that the identified remote site is not necessarily the correct one).

So we need more in Windows, and notably a easier way to manage certificates for remote sites (i.e. accept them, and reject them later at any time so that it will also remove the granted privileges associated to the files that these sites have installed). So the user control panel should contain not ony a portfolio of certificates accepted from a remote site, but also the list of privileges we have granted to each of them. We would then manage several completely separated identities with much less risk than today. Those relams would also be used for EACH installed software in Windows, so that no one will be able to corrupt permanently the settings for another app coming from somewhere else: as long as the privilege is granted to one realm, then only this can override settings from another user realm; when the privilege is removed, this should revert immediately to the default settings inherited from the higher privilege local account.

The caveat of such multilevel isolation mechanism is that the multiple accounts owned by a user will need space for storing sometimes the same files or data for several applications. But this is already the case with the SxS settings in Windows (side-by-side installations of multiple versions of the "same" component, oine for each other independant component that need it in a precise version from a known source). However today, storage space is no longer a problem withr the exploding size of harddisks and decreasing cost. The default used everytime should always be to avoid sharing data between independant applications or sites. The act of sharing anything should always require user level elevation and explicit permission by a user account with this higher privilege (this is what UAC requests when it asks for permission)
Posted by: PhilippeV   Posted on: 04/14/08 You are currently: a Guest | Members login | Terms of Use

Alert moderator to an offensive message

Subscribe to this discussion via Email or RSS

Statistics...  Solid Water | 04/11/08
New machines full of 'crapware' ...  mwagner@... | 06/05/08
Cross misspeakes...badly  Cayble | 07/10/08
The common solution for all bullies  Ole Man | 04/11/08
Do you post anything  mdemuth | 04/11/08
Yes the do...  cashaww | 04/13/08
Does a cognizant thought  Ole Man | 04/14/08
Thing is...  TtfnJohn | 04/14/08
Another uninformed MS basher  garry_k@... | 06/05/08
It is obvious who is uninformed, and who is not  Ole Man | 06/05/08
to annoy away their customers  djgvjh | 04/11/08
UAC is the No.1 reason users should upgrade  pa2004 | 04/11/08
Previous versions of Windows benefit too.  ye | 04/12/08
Just to clarify...  heres_johnny | 04/14/08
What iTunes does  A.Sinic | 06/05/08
A lot has to do with WHERE the code ...  mwagner@... | 06/05/08
And who is responsible for that?  Ole Man | 06/05/08
True, it's better for XP stability too  PhilippeV | 04/14/08
UAC is the No.1 reason users should upgrade  tracy anne | 04/15/08
More idiot dialog boxes  hasta la Vista, bah-bie | 04/15/08
Bull  Dr_Zinj | 05/08/08
UAC Is The ONLY Reason To Upgrade To Vista  chessmen | 05/08/08
RE: Microsoft: Vista feature designed to 'annoy users'  slikbrit | 04/12/08
Blow Thru?  zenwalker | 04/12/08
Why? Because you said so?  ye | 04/12/08
Re: Why? Because you said so?  none none | 04/13/08
The point is that under Vista ...  mwagner@... | 06/05/08
The point is..........  Ole Man | 06/05/08
More important is UAC scares users from installing  LittleGuy | 04/12/08
This is different than OS X of Linux how? (nt)  ye | 04/12/08
Are you trying to say?  Ole Man | 05/08/08
There are a lot of villians  T1Oracle | 04/12/08
Of course.  Dr_Zinj | 05/08/08
For years, MS has offered ISVs ...  mwagner@... | 06/05/08
"They kept breaking the rules"  Ole Man | 06/05/08
Only ONE MS Vista feature designed to annoy users?  JLMcC | 04/12/08
Curious  A.Sinic | 06/05/08
vista's dreaded BLUE SCREEN OF DEATH!  gleone | 06/05/08
The Best Feature in Vista  T1Oracle | 04/12/08
Well, they succeded.  BitTwiddler | 04/12/08
You're not alone  friedtoast@... | 04/14/08
RE: Microsoft: Vista feature designed to 'annoy users'  admin@... | 04/12/08
RE: Microsoft: Vista feature designed to 'annoy users'  thetwonkey | 04/12/08
Blaming 3rd Parties?  Uber Dweeb | 04/13/08
RE: Microsoft: Vista feature designed to 'annoy users'  chaimss | 04/13/08
RE: Microsoft: Vista feature designed to 'annoy users'  Vadim P. | 04/13/08
Vista superbly and thoroughly annoying  w_c_mead | 04/14/08
I'm used to it.... :P  angelo_elibz24@... | 04/14/08
Your are not alone  Domdomz | 05/08/08
RE: Microsoft: Vista feature designed to 'annoy users'  nwoodson@... | 04/14/08
RE: Microsoft: Vista feature designed to 'annoy users'  DailyWTF | 04/14/08
Annoy away M$....  Dave32265 | 04/14/08
RE: Microsoft: Vista feature designed to 'annoy users'  mhowe0422@... | 04/14/08
RE: Microsoft: Vista feature designed to 'annoy users'  eye4bear | 04/14/08
I am sticking with XP to annoy M$  erm@... | 04/14/08
That doesn't explain...  Demzon | 04/14/08
Why does MS's own Utilities trigger UAC  dbaechtel | 04/14/08
To Teach that UAC means ADMIN  cgarrett@... | 05/08/08
It worked - I WAS annoyed  Keeping Current | 04/14/08
so was I  bluescreen_z | 04/14/08
RE: Microsoft: Vista feature designed to 'annoy users'  dsturg63@... | 04/14/08
MS Annoys Users!!!!!  roog | 04/14/08
Did you miss something?  tracy anne | 04/15/08
RE: Microsoft: Vista feature designed to 'annoy users'  robe@... | 05/08/08
RE: Microsoft: Vista feature designed to 'annoy users'  jaqpc1@... | 05/08/08
This guy is serious????  bobd08 | 05/08/08
RE: Microsoft: Vista feature designed to 'annoy users'  rickhal | 05/08/08
vendors' fault ???  dgrainge | 05/08/08
crazy stuff  billw1234 | 05/10/08
All figured out, without a clue  Ole Man | 05/10/08
consumers to blame too  billw1234 | 05/10/08
One dog food for all, eh?  Ole Man | 05/10/08
Pride Cometh Before the Fall  Cardhu | 06/04/08
RE: Microsoft: Vista feature designed to 'annoy users'  dukebof69@... | 06/05/08
RE: Microsoft: Vista feature designed to 'annoy users'  radioeng | 06/05/08
RE: Microsoft: Vista feature designed to 'annoy users'  mwagner@... | 06/05/08
Finally I can agree with you  Ole Man | 06/05/08
RE: Microsoft: Vista feature designed to 'annoy users'  Daiv_Skinner | 06/05/08
I agree with MS  garry_k@... | 06/05/08
So you don't think  Ole Man | 06/05/08
you don't think you're a customer, do you?  springerj | 06/05/08
That's why I had "customers" in parenthesis  Ole Man | 06/07/08
RE: Microsoft: Vista feature designed to 'annoy users'  Schweigenthaler | 06/06/08
RE: Microsoft: Vista feature designed to 'annoy users'  alxnsc@... | 06/24/08
RE: Microsoft: Vista feature designed to 'annoy users'  rdhalsteatzd | 07/10/08
RE: Microsoft: Vista and Smokey the Bear  ghosko7772 | 07/10/08
Vista annoyed me into LINUX  rdhalsteatzd | 07/10/08
RE: Microsoft: Vista feature designed to 'annoy users'  kentech50 | 07/10/08
RE: Microsoft: Vista feature designed to 'annoy users'  johnemartin25@... | 07/10/08

What do you think?

SponsoredWhite Papers, Webcasts, and Downloads

advertisement

SmartPlanet

Click Here