ITMystery
asked on
Can Windows Terminal Server run a GPO to install a program -- as a standard (non-admin) user?
This occurs on Windows 2003 Servers, with the Terminal Services role activated, in a corporate environment.
The following error occurs:
This installation is forbidden by system policy. Contact your system administrator.
The error occurs when a non-administrator runs an MSI package on any of our Windows 2003 Terminal Servers.
The error does NOT occur when an administrator runs the MSI package.
The error does NOT occur on workstations (XP, Vista, Win7-32, Win7-64) for any user.
More Detail:
The Group Policy containing a software installation package (MSI) successfully installs a program shortcut, but when the shortcut is clicked, the above error occurs.
The GPO has "Computer Configuration Settings" disabled - so it can only apply "User Configuration Settings".
The MSI places three files (.exe .ico .ini) in the user's "AppData" folder (within their roaming profile) plus a program shortcut pointing to the .exe - no other files, no registry entries.
The shortcut gets installed, the other 3 files do not get installed.
The error occurs when the shortcut is clicked.
The following error occurs:
This installation is forbidden by system policy. Contact your system administrator.
The error occurs when a non-administrator runs an MSI package on any of our Windows 2003 Terminal Servers.
The error does NOT occur when an administrator runs the MSI package.
The error does NOT occur on workstations (XP, Vista, Win7-32, Win7-64) for any user.
More Detail:
The Group Policy containing a software installation package (MSI) successfully installs a program shortcut, but when the shortcut is clicked, the above error occurs.
The GPO has "Computer Configuration Settings" disabled - so it can only apply "User Configuration Settings".
The MSI places three files (.exe .ico .ini) in the user's "AppData" folder (within their roaming profile) plus a program shortcut pointing to the .exe - no other files, no registry entries.
The shortcut gets installed, the other 3 files do not get installed.
The error occurs when the shortcut is clicked.
ASKER
The user was unable to do "Change User /Install" (it complains that only admins can do that).
So I did "Change User /Install" in an admin, then had the user logon. Same problem,
- install MSI starts up
- MSI verifies and/or installs the shortcut in the user's "Programs" profile folder
- MSI does NOT install the 3 files it should in the user's "AppData" folder
- then the error: "Installation Forbidden by System Policy" pops up
And, the MSI still runs fine as the administrator, or on any workstation the GPO is applied to
So I did "Change User /Install" in an admin, then had the user logon. Same problem,
- install MSI starts up
- MSI verifies and/or installs the shortcut in the user's "Programs" profile folder
- MSI does NOT install the 3 files it should in the user's "AppData" folder
- then the error: "Installation Forbidden by System Policy" pops up
And, the MSI still runs fine as the administrator, or on any workstation the GPO is applied to
That's right only an admin can perform that action. If the user is NOT part of the admin group, such administrative action cannot and should not be performed by a non admin user.
ASKER
Is there a Local Security Policy setting that enforces this restriction on regular users? Is there a GPO setting I can use to override it? Note: since the MSI only places files in the AppData folder of the user's profile, no harm can come to the terminal server.
The problem s that if you allow it for one, you allow it for all installers the user can run. Just be warned!!
Enter gpedit.msc at the command line.
Enable elevated privileges for the computer.
Click on Computer Configuration –> Administrative Templates –>Windows Components –> Windows Installer.
Enable the following Group Policy settings:
Always install with elevated privileges (mandatory)
Enable user control over installs (mandatory)
Disable Windows Installer. Then set it to Never.
Enable user to patch elevated products (optional)
Enable user to use media source while elevated (optional)
Enable user to browse for source while elevated (optional for new installations, mandatory for fix pack upgrades)
Enable elevated privileges for the user account that will be performing the installation.
Click on User Configuration –> Administrative Templates –>Windows Components –> Windows Installer.
Enter the following Group Policy settings:
Enable: Always install with elevated privileges (mandatory)
Enter gpedit.msc at the command line.
Enable elevated privileges for the computer.
Click on Computer Configuration –> Administrative Templates –>Windows Components –> Windows Installer.
Enable the following Group Policy settings:
Always install with elevated privileges (mandatory)
Enable user control over installs (mandatory)
Disable Windows Installer. Then set it to Never.
Enable user to patch elevated products (optional)
Enable user to use media source while elevated (optional)
Enable user to browse for source while elevated (optional for new installations, mandatory for fix pack upgrades)
Enable elevated privileges for the user account that will be performing the installation.
Click on User Configuration –> Administrative Templates –>Windows Components –> Windows Installer.
Enter the following Group Policy settings:
Enable: Always install with elevated privileges (mandatory)
ASKER
Thanks so much for getting me into the correct area. I did each setting you explained, and now I get a different error message saying:
Only administrators have permission to add, remove, or configure server software during a Terminal services remote session. If you want to install or configure software on the server, contact your network administrator.
Only administrators have permission to add, remove, or configure server software during a Terminal services remote session. If you want to install or configure software on the server, contact your network administrator.
You can't do it thru a remote session the server needs to be in admin mode.
ASKER
The only way our users use the Terminal Servers is through remote desktop connections (RDP). Having a GPO linked to the Users OU in our Active Directory (so they could run the program whether they are on a workstation or a terminal server) would be so convenient - especially since the program only requires an .ico, .ini, .exe (all placed in the user's AppData folder so there are no UAC issues with C:\Program Files in Windows 7). This seems so simple, but it's now sounding impossible!
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
Fantastic idea - thanks for thinking outside the box!
I'll experiment with it and reply tomorrow with the results.
I'll experiment with it and reply tomorrow with the results.
ASKER
Your thinking outside the box has served me well. Wrote a nice little VB Script that I can call from a login script. It works perfectly on WinXP, WinVista, Win7-32, Win7-64, Windows 2003 Terminal Server, Windows 2008 Terminal Server - and that's all I need! I really appreciate your getting me out of the corner I was banging my head in...
Please put your terminal server into install mode prior to installation of additional apps.
Also, youncould give your non admins elevated permissions to install apps, nutni wouldn't do this.