Próbuję uruchomić skrypt, który wymaga danych wejściowych od administratora w celu przetworzenia pewnych rzeczy. Zamiast bezskutecznie uruchamiać skrypt, próbuję przechwycić błąd i wrzucić go z powrotem do Poświadczeń, ale nie mogę znaleźć polecenia, którym mogę przekazać Poświadczenia administratora lokalnego do Pułapki. Czy ktoś ma coś, co może działać?Powershell Sprawdzanie lokalnych uprawnień administratora
Znalazłem WIELE, które sprawdzi poświadczenia domeny, ale jest to LOKALNE konto administratora.
celu wyjaśnienia, używam:
$Cred = Get-Credential
muszę zweryfikować wyjście z który jest poprawny i ma uprawnienia administratora, aby uruchomić rzeczy w dalszej części skryptu.
roztwór roboczy (Dzięki User978511)
$Cred = Get-Credential
$Computer = (gwmi Win32_ComputerSystem).Name
$User = $Cred.Username
$Pass = $Cred.GetNetworkCredential().Password
$Users = ("$Computer"+"$User")
Add-Type -assemblyname System.DirectoryServices.AccountManagement
$DS = New-Object System.DirectoryServices.AccountManagement.PrincipalContext([System.DirectoryServices.AccountManagement.ContextType]::Machine)
$DS.ValidateCredentials($Users, $pass)
if ($Result -ne "True")
{
<Perform Tasks Here>
}
Dziękuję, to bardzo przydatne, ale muszę zweryfikować konto. Niech mnie reexplain: Używam następujący: '$ Cred = Get-Credential' chcę, aby sprawdzić, co jest wpisane jest ważna i będzie mieć uprawnienia administratora, aby wykonać pozostałe zadania. – Steve
@Steve zobacz moją aktualizację –
Dzięki, ta aktualizacja działa dobrze, jeśli wprowadzę nazwę użytkownika i hasło. Pracując teraz nad sposobem, by móc wyciągnąć informacje z $ Cred do tych pól. – Steve