Nuestro entorno (bastante pequeño) tiene máquinas con Windows (8.1 y 7) con cuentas de usuario que tienen privilegios de administrador. Para solucionar este problema, decidí escribir un script de PowerShell que agregaría una nueva cuenta de administrador y degradaría la actual. Después de ejecutarlo, ya no pude iniciar sesión en nada. El guión es sencillo:
If (-NOT ([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole] "Administrator"))
{
Start-Process powershell.exe "-NoProfile -ExecutionPolicy Bypass -File `"$PSCommandPath`"" -Verb RunAs;
exit
}
net user local_admin SuperSecurePassword /add /comment:"comment" /expires:never
net localgroup "Administrators" local_admin /add
net localgroup "Administrators" "$env:username" /delete
Read-Host -Prompt "Enter!"
Primero, se reinicia desde una instancia de PS elevada (tomada de una pregunta popular sobre SE) y luego ejecuta los comandos.
Todos los comandos informaron éxito en la ejecución ("Comando exitoso" o algo así). Sin embargo, ya no pude iniciar sesión en el sistema (ni con el perfil nuevo ni con el anterior) con este mensaje de error:
The User Profile Service service failed the logon. User profile cannot be loaded.
No tenemos dominio, sólo un montón de PC con cuentas locales (lo sé, lo sé). ¿Qué estoy haciendo mal?
Respuesta1
Resulta que mi carpeta de perfil predeterminada (Usuarios\Default) tenía permisos de acceso incorrectos por algún motivo, por lo que Windows no pudo copiarla al nuevo perfil usando la cuenta recién creada. Inicié sesión exitosamente después de arreglar eso.
Otro problema fue que había que agregar el usuario al grupo "Usuarios" después de eliminarlo de los administradores. La siguiente línea hizo eso por mí:
net localgroup "Пользователи" "$env:username" /add