H
HookEm
Guest
I have a managed installation that requires admin rights to install. The
installation has a bootstrapper EXE (standard InstallShield 12 bootstrapper
properly manifested with the "requireAdministrator" setting for the security
attribute as well as being digitally signed), an MSI package external to the
bootstrapper (with properly authored records in the MsiDigitalCertificate,
MsiDigitalSignature, and MsiPatchCertificate tables as well as being
digitally signed itself), and several external CAB files (all of which are
also digitally signed). Also note that I have not set values for any of the
ARP MSI properties (ARPNOMODIFY, ARPNOREPAIR, or ARPNOREMOVE).
On BOTH Windows 2000 SP4 and Windows XP SP2, limited users can only repair
this managed installation when it is installed by an admin user (via the
"Support Information"-->Repair option in Add/Remove Programs). On both these
systems, in Add/Remove Programs the "Change" and "Remove" buttons are either
visible but disabled (Win2K SP4) or they are not visible at all (WinXP SP2).
On these systems, only a user who is a member of the Administrators user
group has the "Change" and "Remove" buttons both visible AND enabled.
However, on Windows Vista (GA) and Windows Server 2008 (RC1) systems, the
same buttons are displayed in Software Explorer for all users (Uninstall,
Change, Repair). If a limited user (standard user) clicks the Uninstall or
Repair buttons, the msiexec process runs the installation and they are
(eventually) prompted to elevate to Admin to continue. The SAME is the case
if they click the Change button AND they attempt to ADD an optional feature
(they are eventually prompted to elevate). However, if the limited/standard
user clicks the Change button and they REMOVE an optional feature then they
are never prompted to elevate.
I found the following thread on the Application Compatibility for Windows
Vista forum where the forum moderator suggested this is the correct behavior
and that it hasn't changed since Win2K (which isn't the case as I noted
above):
http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=1116084&SiteID=1
Why can a limited user remove optional features for a managed application
installed by an admin on Vista/WS2K8 systems but they are not allowed to do
so on Win2K/WinXP systems? If this is intended behavior, what are my options
if my managed application has such an optional feature that non-admin users
should not be allowed to uninstall?
--
Colby
installation has a bootstrapper EXE (standard InstallShield 12 bootstrapper
properly manifested with the "requireAdministrator" setting for the security
attribute as well as being digitally signed), an MSI package external to the
bootstrapper (with properly authored records in the MsiDigitalCertificate,
MsiDigitalSignature, and MsiPatchCertificate tables as well as being
digitally signed itself), and several external CAB files (all of which are
also digitally signed). Also note that I have not set values for any of the
ARP MSI properties (ARPNOMODIFY, ARPNOREPAIR, or ARPNOREMOVE).
On BOTH Windows 2000 SP4 and Windows XP SP2, limited users can only repair
this managed installation when it is installed by an admin user (via the
"Support Information"-->Repair option in Add/Remove Programs). On both these
systems, in Add/Remove Programs the "Change" and "Remove" buttons are either
visible but disabled (Win2K SP4) or they are not visible at all (WinXP SP2).
On these systems, only a user who is a member of the Administrators user
group has the "Change" and "Remove" buttons both visible AND enabled.
However, on Windows Vista (GA) and Windows Server 2008 (RC1) systems, the
same buttons are displayed in Software Explorer for all users (Uninstall,
Change, Repair). If a limited user (standard user) clicks the Uninstall or
Repair buttons, the msiexec process runs the installation and they are
(eventually) prompted to elevate to Admin to continue. The SAME is the case
if they click the Change button AND they attempt to ADD an optional feature
(they are eventually prompted to elevate). However, if the limited/standard
user clicks the Change button and they REMOVE an optional feature then they
are never prompted to elevate.
I found the following thread on the Application Compatibility for Windows
Vista forum where the forum moderator suggested this is the correct behavior
and that it hasn't changed since Win2K (which isn't the case as I noted
above):
http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=1116084&SiteID=1
Why can a limited user remove optional features for a managed application
installed by an admin on Vista/WS2K8 systems but they are not allowed to do
so on Win2K/WinXP systems? If this is intended behavior, what are my options
if my managed application has such an optional feature that non-admin users
should not be allowed to uninstall?
--
Colby