이 게시물이 유용하다는 것을 알았지 만 로컬 관리자 계정이 로그온 한 스크립트에서 실행하려고 시도했을 때 문제가 해결되지 않았습니다. 로컬 관리자로 작동하지 않는 것 같습니다 (도메인 사용자로 로그온 한 경우에만).
그러나 마침내 작동하는 솔루션을 얻었으므로 문제가 너무 많아서이 문제를 가진 다른 사람이 여기에 답을 줄 수 있도록 여기에서 공유한다고 생각했습니다. 필요에 따라 두 페이지 모두 한 페이지에 답변됩니다.
scipt (이것은 get-credentials 섹션 일 뿐이므로 여기에 포함되지 않음)에 powergui가 설치되어 있으며 아래 코드 ( "Add-PSSnapin Quest.ActiveRoles.ADManagement"줄뿐만 아니라)에 대한 요구 사항입니다. powergui의 기능이 다른지 확실하지 않지만 아무도 나에게 말할 수 없으며 작동합니다.
"domain_name"섹션에서 자신의 도메인 이름을 대체하십시오.
#Get credentials
$credential_ok = 0
while ($credential_ok -ne 1)
{
$credential = get-credential
$result = connect-qadservice -service *domain_name* -credential $credential
[string]$result_string = $result.domain
if ($result_string -eq "*domain_name*")
{
$credential_ok = 1
#authenticated
}
else
{
#failed
}
}
$username = $credential.username
$password = $credential.GetNetworkCredential().password
$date = get-date
Add-Content "c:\lbin\Install_log.txt" "Successfully authenticated XP script as $username $date"
AccountManagement.PrincipalContext.ValidateCredentials()
암호가 안전한 문자열을 제공하는 경우 그렇지 않다고 가정하는 것이 옳습니까?