3
.net Powershell SDK를 사용하여 powershell을 실행하고 싶습니다. 나는이 잘 작동합니다. 스크립트를 실행하기 전에 코드 서명 인증서로 서명했는지 확인하고 싶습니다. Get-AuthenticodeSignature를 사용하여 powershell 자체에서 수행하기는 쉽지만이 스크립트를 실행하기 전에 코드에서이 작업을 수행하고 싶습니다. .관리되는 API에서 powershell 스크립트가 서명되었는지 어떻게 확인할 수 있습니까?
솔루션 :
Runspace runSpace = RunspaceFactory.CreateRunspace();
runSpace.Open();
Pipeline shell = runSpace.CreatePipeline();
shell.Commands.AddScript(String.Format("Get-AuthenticodeSignature '{0}'", Filename));
Signature sig = (shell.Invoke()[0]).BaseObject as Signature;
bool isValid = sig.Status == SignatureStatus.Valid;
충분! 내 질문에 추가 된 해결책 –
아, 당신이 PowerShell의 v1.0에있어 (powershell 개체가 v2에만 해당) – x0n