Well, well... Sei lá. A Microsoft introduziu o UAC (User Access Control) no Windows Vista e no Windows 2008. O objetivo é evitar que você se descuide e faça alguma besteira em algum lugar importante (p.e., num servidor). As aplicações tem agora dados de
access control. A idéia é que aplicações sensíveis só possam ser executadas em "modo administrador". De acordo com o
UAC Guide na TechNet, mesmo um usuário administrador, ao logar, recebe dois conjuntos de credenciais de segurança: um como usuário "normal" e outro de administrador. Quando uma aplicação marcada com
access control que pede por um usuário administrador é executada, o Windows pede confirmação para executar a aplicação como administrador e, caso sua conta não tenha este direito, ainda abre uma janela de logon para vocês especificar uma conta administrativa.
É uma idéia legal, pois desde criancinha a gente aprende a não dar direitos administrativos para contas de usuários "normais"; nossos pais sempre dizem "crie uma conta administrativa, trabalhe com sua conta de usuário normal, e quando for fazer alguma tarefa mais privilegiada, logue com a conta administrativa". O UAC permite isto, pois exige uma interação explicita do usuário para confirmar que você quer rodar uma aplicação como administrador.
O problema é quando a aplicação exige direitos de administrador e
não aparece a janelinha acima. Por exemplo, rodando a ferramenta de linha de comando de administração do SharePoint, o
stsadm. Você loga no servidor como administrador, abre um prompt de comando, muda pro diretório do
stsadm, roda um comando qualquer de administração do SharePoint e...
Access denied. Roda
só o help do
stsadm: stsadm -?.
Access denied. Pô, acesso negado no
help? Eita programa seguro. Na verdade, o
stsadm precisa de que você o rode com direitos administrativos em relação ao UAC, então mesmo logado como administrador, você precisa
abrir o prompt de comando no qual o stsadm será executado como administrador:Como a aplicação que irá disparar o
stsadm (o prompt de comando) já foi aberto com as credenciais de administrador perante o UAC, então, e só então, o
stsadm roda.
Ou você pode desabilitar o UAC no servidor. Mas não conta pra ninguém que eu sugeri isto.