Powershell - why as administrator?

Hi,
    I am trying to learn the basics of powershell.  I have found what seems like an excellent tutorial but I think am having issues with permissions.

The tutoral I am looking at has been covering using powershell to look at services, an excellent example as it relates to something that many people are familiar with.

Anyway my user profile is a in the local administrator group and also the domain admin group.  I can stop and start sevices use the GUI no problems.  However when I try to stop or start a service in powershell it gives me an error.  Here is an example of the issue - I start by getting the status of the service:

Windows PowerShell
Copyright (C) 2009 Microsoft Corporation. All rights reserved.

PS X:\myname\PowerShell\MyScripts> get-service -name bthserv

Status   Name               DisplayName
------   ----               -----------
Stopped  bthserv            Bluetooth Support Service


This is fine but when I try to start the service using PowerShell I get this error:

PS X:\myname\PowerShell\MyScripts> start-service -name bthserv
Start-Service : Service 'Bluetooth Support Service (bthserv)' cannot be started due to the following error: Cannot ope
 bthserv service on computer '.'.
At line:1 char:14
+ start-service <<<<  -name bthserv
    + CategoryInfo          : OpenError: (System.ServiceProcess.ServiceController:ServiceController) [Start-Service],
   ServiceCommandException
    + FullyQualifiedErrorId : CouldNotStartService,Microsoft.PowerShell.Commands.StartServiceCommand

PS X:\myname\PowerShell\MyScripts>


When I run powershell as administrator it works fine.  I guess what I am trying to understand is why as a user I can runs services via the GUI but not PowerShell.

Thanks in Advance
Bob
TCBobAsked:
Who is Participating?
 
ThinkPaperIT ConsultantCommented:
TCBob - that's because UAC is enabled on your machine. So if you try to run anything that requires elevated privileges (i.e. any of the administrative tools or run some admin stuff through command line) it will require that you run as admin. That's simply how it works. It's an additional security measure to prevent the wrong people from running administrative services.

That's how it is at my work.. I have to "run as administrator" anytime I need to run elevated services (i.e. active directory, exchange management console, powershell, computer management, etc..)

If that annoys you, you can turn UAC off.
0
 
2CsCommented:
Right click PowerShell and select 'Run As Administrator'.
0
 
2CsCommented:
Or right click and open the properties of the shortcut (hold shift as well if located on the taskbar), then click Advanced and check the box, run as administrator.

That way the application will always run as administrator and you wont have to right click every time you want to use it.

It is to do with UAC and built-in security for Windows 7, this is meant to stop nasty applications running or executing script without being prompted in the secure desktop to do so first.
0
WEBINAR: 10 Easy Ways to Lose a Password

Join us on June 27th at 8 am PDT to learn about the methods that hackers use to lift real, working credentials from even the most security-savvy employees. We'll cover the importance of multi-factor authentication and how these solutions can better protect your business!

 
TCBobAuthor Commented:
Hi, thanks for your comment.  I am fine with how to actually run Powershell as administrator, as I said in my original post I know it works when I run powershell as admin.  I was just more interested in why I have to run as admin when I have both local and domain admin rights?
0
 
QlemoBatchelor, Developer and EE Topic AdvisorCommented:
Well, if you switch off UAC, you can control services from the shell, too ;-).

The Service applet (services.msc) is run with elevated privileges (if available) automatically, IIRC.
0
 
TCBobAuthor Commented:
Thanks very much for taking the time to explain.  I was just a little confussed as I have admin rights anyway.  Nevermind, no biggie.
Bob
0
 
ThinkPaperIT ConsultantCommented:
Yeah, it kind of is a pain, especially when you're ALREADY logged on as admin. Our setup requires us to run as admin and then re-enter our admin credentials again (even though we're logged in). If this type of security is too stringent for you, you can definitely turn it off. But if your environment is where security is key, you may want to leave it on.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.