지원되는 모든 Windows 버전에서는 현재 세션 내에서 다른 사용자 계정으로 응용 프로그램을 실행하는 기능(Run As)을 사용할 수 있습니다. 이를 통해 스크립트(.bat, .cmd, .vbs, .ps1), 실행 파일(.exe), 설치 패키지(.msi, .cab) 등을 다른 사용자(주로 관리자 권한)의 자격 증명으로 실행할 수 있습니다.
예를 들어, 관리자 권한이 없는 일반 사용자 세션에서도 RunAs 기능을 활용하면 관리자 계정으로 응용 프로그램을 설치하거나 MMC 스냅인을 실행할 수 있습니다. 또한 특정 응용 프로그램이 다른 사용자 프로필에 설정 정보를 저장하고 있어서, 동일한 설정으로 프로그램을 구동해야 할 때도 이 기능이 유용하게 사용됩니다.
Windows 10에서 프로그램을 다른 사용자로 실행하는 방법은 여러 가지가 있으며, 본문에서 하나씩 자세히 살펴보겠습니다.
Windows에서 프로그램을 다른 사용자로 실행하는 기능은 보조 로그온 서비스(Secondary Log-on, seclogon)에 의해 제어됩니다. 이 서비스가 중지되면 아래에서 소개하는 모든 RunAs 방법이 정상적으로 작동하지 않습니다. 다음 PowerShell 명령으로 서비스 상태를 확인할 수 있습니다.
Get-Service seclogon

파일 탐색기에서 다른 사용자로 응용 프로그램 실행하기
가장 간단한 방법은 Windows 파일 탐색기의 GUI를 이용하는 것입니다. 실행하려는 응용 프로그램(또는 바로 가기)을 찾은 후 Shift 키를 누른 상태에서 마우스 오른쪽 버튼으로 클릭합니다. 컨텍스트 메뉴에서 '다른 사용자로 실행(Run as different user)'을 선택하세요.
참고: 만약 '다른 사용자로 실행' 메뉴 항목이 보이지 않는다면, 아래의 해당 섹션을 참고하여 해결할 수 있습니다.

다음 창이 나타나면 프로그램을 실행할 사용자 계정의 이름과 비밀번호를 입력하고 확인을 클릭합니다.
참고: 도메인 사용자를 지정해야 하는 경우 UserName@DomainName 또는 DomainName\UserName 형식 중 하나를 사용하면 됩니다.

중요: 다른 사용자로 프로그램을 실행하려면 해당 계정에 비밀번호가 설정되어 있어야 합니다. 비밀번호가 없는(빈 비밀번호) 계정에는 RunAs 기능을 사용할 수 없습니다.
작업 관리자를 열어 응용 프로그램이 지정된 사용자 계정으로 실행 중인지 확인할 수 있습니다.

Windows 10에서 '다른 사용자로 실행' 옵션이 사라진 경우
파일 탐색기 컨텍스트 메뉴에 '다른 사용자로 실행' 옵션이 나타나지 않는다면, 로컬 그룹 정책 편집기(gpedit.msc)를 열고 컴퓨터 구성 → 관리 템플릿 → Windows 구성 요소 → 자격 증명 사용자 인터페이스(Credential User Interface) 경로에서 '자격 증명 입력을 위한 신뢰할 수 있는 경로 필요(Require trusted path for credential entry)' 정책이 사용 안 함 또는 구성되지 않음 상태인지 확인하세요.

CMD에서 runas 명령으로 다른 사용자로 프로그램 실행하기
Windows에 기본 내장된 CLI 도구인 runas.exe를 사용하면 명령 프롬프트에서 손쉽게 다른 사용자로 응용 프로그램을 실행할 수 있습니다. runas 명령은 사용자 비밀번호를 Windows 자격 증명 관리자에 저장하는 기능도 제공하므로, 매번 비밀번호를 입력하지 않아도 됩니다.
명령 프롬프트를 열거나 Win+R 키를 눌러 실행 창을 연 뒤, 관리자(administrator) 계정으로 메모장(notepad.exe)을 실행하려면 다음 명령을 입력합니다.
runas /user:admin "C:\Windows\notepad.exe"
팁: 사용자 이름에 공백이 포함된 경우 이름을 따옴표로 감싸야 합니다.
runas /user:"antony jr" notepad.exe

그러면 "admin의 암호 입력(Enter the password for admin)"이라는 메시지가 표시되는 창이 나타납니다. 여기에 해당 사용자의 비밀번호를 입력하고 Enter 키를 누르면 됩니다.

응용 프로그램이 정상적으로 열립니다. 창 제목에 "PCName\username(으)로 실행 중(running as)"이라고 표시되는 것을 확인할 수 있습니다.

예를 들어, 제어판을 다른 사용자 계정으로 열 수도 있습니다.
runas /user:admin control
도메인 사용자로 프로그램을 실행해야 하는 경우 UserName@DomainName 또는 DomainName\UserName 형식을 사용합니다. 예를 들어 도메인 사용자 권한으로 메모장을 통해 텍스트 파일을 열려면 다음과 같이 명령합니다.
runas /user:corp\server_admin "C:\Windows\system32\notepad.exe C:\ps\region.txt"

Enter the password for corp\server_admin:
Attempting to start C:\Windows\system32\notepad.exe C:\ps\region.txt as user "corp\server_admin" ...
때로는 AD 도메인에 가입되지 않은 컴퓨터에서 도메인 사용자로 프로그램을 실행해야 하는 경우도 있습니다. 이때는 다음 명령을 사용합니다. 단, 컴퓨터 네트워크 설정에 지정된 DNS 서버가 해당 도메인 이름을 확인(resolve)할 수 있어야 합니다.
runas /netonly /user:contoso\bmorgan cmd.exe
다른 사용자로 프로그램을 시작할 때 사용자 프로필을 로드하지 않으려면 /noprofile 매개변수를 사용하세요. 이렇게 하면 응용 프로그램이 훨씬 빠르게 실행되지만, 사용자 프로필에 앱 데이터를 저장하는 프로그램의 경우 오작동이 발생할 수 있습니다.
비밀번호 입력 없이 runas 사용하는 방법 (/savecred)
매번 비밀번호를 입력하는 것이 번거롭다면, 입력한 사용자 자격 증명(비밀번호 포함)을 저장할 수 있습니다. 이때 /savecred 매개변수를 사용합니다.
runas /user:admin /savecred "C:\Windows\cmd.exe"
비밀번호를 한 번 입력하면 Windows 자격 증명 관리자(Credential Manager)에 저장됩니다.
이후 동일한 사용자에게 /savecred 옵션을 붙여 runas 명령을 실행하면, Windows가 자격 증명 관리자에 저장된 비밀번호를 자동으로 사용하기 때문에 다시 입력할 필요가 없습니다.
자격 증명 관리자에 저장된 자격 증명 목록을 확인하려면 다음 명령을 사용합니다.
rundll32.exe keymgr.dll, KRShowKeyMgr

다만 /savecred 매개변수의 사용은 보안상 위험할 수 있습니다. 해당 자격 증명이 저장된 프로필의 사용자는 이를 이용해 모든 종류의 명령을 해당 권한으로 실행할 수 있고, 심지어 다른 사용자의 비밀번호를 변경할 수도 있습니다. 또한 자격 증명 관리자에 저장된 비밀번호는 탈취가 비교적 쉽기 때문에, Windows가 비밀번호를 저장하지 않도록 설정하고(특히 권한 있는 관리자 계정의 비밀번호는 절대 저장하지 말아야 합니다) 보안을 유지하는 것이 좋습니다.
참고: 추가로, /savecred 옵션은 Windows Home 에디션에서는 작동하지 않습니다.
'다른 사용자로 실행' 바로 가기 만들기
데스크톱에 다른 사용자로 프로그램을 실행할 수 있는 바로 가기를 만들 수도 있습니다. 새 바로 가기를 생성한 후, 위치(Location) 입력란에 필요한 매개변수와 함께 runas 명령을 지정하면 됩니다.

이렇게 만든 바로 가기를 실행하면 사용자 비밀번호를 입력하라는 메시지가 표시됩니다.
바로 가기의 runas 명령에 /savecred 매개변수까지 함께 지정하면 비밀번호는 최초 한 번만 물어봅니다. 이후 비밀번호는 자격 증명 관리자에 저장되어, 바로 가기를 실행할 때마다 자동으로 적용됩니다.
이런 방식의 바로 가기는 관리자 권한이 필요한 프로그램을 실행할 때 자주 활용됩니다. 하지만 UAC(사용자 계정 컨트롤) 프롬프트를 특정 응용 프로그램에 대해서만 비활성화하는 등 더 안전한 방법도 존재하므로, 상황에 맞게 선택하는 것이 좋습니다.
MMC 스냅인을 다른 사용자로 실행하기
경우에 따라 Windows 관리 스냅인 중 하나를 다른 사용자로 실행해야 할 때가 있습니다. 예를 들어, Active Directory 사용자 및 컴퓨터(ADUC) RSAT 스냅인을 다른 사용자로 실행하려면 다음 명령을 사용합니다.
runas.exe /user:DOMAIN\USER "cmd /c start \"\" mmc %SystemRoot%\system32\dsa.msc"
동일한 방식으로 스냅인 파일 이름(.msc)을 알고 있다면 어떤 스냅인이든 실행할 수 있습니다.
Windows 10 시작 메뉴에 '다른 사용자로 실행' 옵션 추가하기
기본적으로 Windows 10 시작 메뉴의 항목에는 '다른 사용자로 실행' 옵션이 표시되지 않습니다. 이 컨텍스트 메뉴를 추가하려면 로컬 그룹 정책 편집기(gpedit.msc)에서 사용자 구성 → 관리 템플릿 → 시작 메뉴 및 작업 표시줄(Start Menu and Taskbar) 섹션의 '시작 메뉴에 '다른 사용자로 실행' 명령 표시(Show Run as different user command on Start)' 정책을 사용하도록 설정하세요.

만약 gpedit.msc가 없는 환경이라면, 레지스트리 키 HKEY_CURRENT_USER\Software\Policies\Microsoft\Windows\Explorer에 이름이 ShowRunasDifferentuserinStart이고 값이 1인 DWORD 값을 새로 만들면 됩니다. 다음 PowerShell 명령으로 레지스트리 값을 추가할 수 있습니다.
New-ItemProperty -Path "HKCU:\Software\Policies\Microsoft\Windows\CurrentVersion\Explorer" -Name ShowRunasDifferentuserinStart -Value 1 -PropertyType DWORD -Force

그룹 정책 설정을 업데이트(gpupdate /force)한 후, 시작 메뉴의 프로그램을 마우스 오른쪽 버튼으로 클릭했을 때 새로운 컨텍스트 메뉴인 추가 옵션(More) → 다른 사용자로 실행(Run as different user)이 나타나는지 확인합니다.