무엇보다도 Azure 파일 공유를 설정하기 위해 관리자 권한 상승이 필요한 Powershell 스크립트가 있습니다. 최종 스크립트 명령은 New-PSDrive
파일 공유를 드라이브 문자에 매핑하는 데 사용됩니다. 내 기대는 Windows 탐색기에서 새 드라이브 문자에 액세스할 수 있다는 것입니다. New-PSDrive
관리자 권한 컨텍스트에서 사용하면 해당 컨텍스트의 드라이브만 매핑되므로 내 사용자 계정에서는 사용할 수 없다는 것을 알고 있습니다 .
관리자 권한 스크립트에서 현재 사용자로 Powershell 스크립트/프로세스를 어떻게 실행합니까?
답변1
사용자 자격 증명을 제공하지 않으면 사용자 컨텍스트를 변경할 수 없습니다. 로그온한 사용자를 쉽게 얻을 수 있지만, 사용자가 비밀번호를 입력하지 않으면 비밀번호를 알 수 없습니다.
Invoke-Command -FilePath "yourPath\yourScript.ps1" -ComputerName yourServer -Credential Get-Credential
둘째, 원격으로 실행하는 경우 원래 컨텍스트에서만 실행될 수 있으므로 사용자는 이를 볼 수 없습니다.
PowerShell은 Windows 보안 경계이므로 기본적으로 이 작업을 허용하지 않습니다. 정말로 이 작업을 수행해야 한다면 MS SysInternals PSExec를 사용해 보십시오.
또는 예약된 작업에서 작업을 수행해 보세요.
답변2
나는 기본적으로 모든 것을 관리자로 실행하기 때문에 이 모든 것이 잘못되었다고 생각하고 있었습니다. 스크립트를 두 개의 개별 스크립트로 분할했습니다. 하나는 관리자 권한이 필요한 코드용이고 다른 하나는 사용자 권한이 필요합니다. 관리 컨텍스트에 있는 경우 확인하고 오류를 발생시키는 사용자 권한 스크립트를 호출합니다. 그런 다음 자체 상승된 프롬프트에서 사용자 스크립트의 관리 스크립트를 실행할 수 있습니다. 잠시 기다리면 사용자 컨텍스트로 돌아갑니다.