Computer >> คอมพิวเตอร์ >  >> ระบบ >> Windows 10

วิธีเรียกใช้โปรแกรมในฐานะผู้ใช้อื่น (RunAs) ใน Windows 10

ใน Windows เวอร์ชันที่รองรับทั้งหมด คุณสามารถเรียกใช้แอปพลิเคชันในนามของผู้ใช้รายอื่น (เรียกใช้ในฐานะ ) ในเซสชั่นปัจจุบัน สิ่งนี้ทำให้คุณสามารถเรียกใช้สคริปต์ (.bat, .cmd, .vbs, .ps1), ไฟล์ปฏิบัติการ (.exe) หรือการติดตั้งแอพพลิเคชั่น (.msi, .cab) ด้วยสิทธิ์ของผู้ใช้รายอื่น

ตัวอย่างเช่น คุณสามารถใช้ RunAs เพื่อติดตั้งแอปหรือเรียกใช้สแน็ปอิน MMC ภายใต้บัญชีผู้ดูแลระบบในเซสชันผู้ใช้ที่ไม่มีสิทธิพิเศษ โอกาสในการเรียกใช้โปรแกรมในฐานะผู้ใช้อื่นอาจมีประโยชน์เมื่อแอปพลิเคชันได้รับการกำหนดค่าภายใต้ผู้ใช้รายอื่น (และเก็บการตั้งค่าไว้ในโปรไฟล์ของผู้ใช้รายอื่นซึ่งผู้ใช้ปัจจุบันไม่สามารถเข้าถึงได้) แต่ต้องเริ่มต้นด้วยการตั้งค่าเดียวกันในอีก เซสชันของผู้ใช้

[/alert]

ใน Windows 10 มีหลายวิธีในการเรียกใช้โปรแกรม/กระบวนการในนามของผู้ใช้รายอื่น

บริการเข้าสู่ระบบรอง (seclogon) มีหน้าที่รับผิดชอบความสามารถในการเรียกใช้โปรแกรมต่าง ๆ ในฐานะผู้ใช้ที่แตกต่างกันใน Windows หากบริการนี้หยุดลง เมธอด RunAs ที่อธิบายไว้ทั้งหมดจะไม่ทำงาน คุณสามารถตรวจสอบว่าบริการเริ่มต้นด้วยคำสั่ง PowerShell ต่อไปนี้:

Get-Service seclogon

วิธีเรียกใช้โปรแกรมในฐานะผู้ใช้อื่น (RunAs) ใน Windows 10

จะเรียกใช้แอปในฐานะผู้ใช้ที่แตกต่างจาก File Explorer ได้อย่างไร

วิธีที่ง่ายที่สุดในการเรียกใช้แอปพลิเคชันในนามของผู้ใช้รายอื่นคือการใช้ Windows File Explorer GUI เพียงค้นหาแอปพลิเคชัน (หรือทางลัด) ที่คุณต้องการเริ่ม กดปุ่ม Shift ที่สำคัญและคลิกขวาที่มัน เลือก เรียกใช้ในฐานะผู้ใช้อื่น ในเมนูบริบท

[แจ้งเตือน]หมายเหตุ . หากรายการเมนู “เรียกใช้ในฐานะผู้ใช้อื่น ” หายไป โปรดดูหัวข้อถัดไป

วิธีเรียกใช้โปรแกรมในฐานะผู้ใช้อื่น (RunAs) ใน Windows 10

ในหน้าต่างถัดไป ระบุชื่อและรหัสผ่านของผู้ใช้ภายใต้บัญชีที่คุณต้องการเรียกใช้แอปพลิเคชัน แล้วคลิก ตกลง .

หมายเหตุ . หากคุณต้องการระบุผู้ใช้โดเมน จะมีการใช้ชื่อรูปแบบใดรูปแบบหนึ่งต่อไปนี้:UserName@DomainName หรือ DomainName\UserName .

วิธีเรียกใช้โปรแกรมในฐานะผู้ใช้อื่น (RunAs) ใน Windows 10

สำคัญ . การเรียกใช้โปรแกรมในนามของผู้ใช้อื่นเป็นไปได้หากบัญชีมีรหัสผ่าน การใช้ RunAs สำหรับผู้ใช้ที่มีรหัสผ่านว่างเปล่าจะไม่ทำงาน

เปิดตัวจัดการงานและตรวจสอบให้แน่ใจว่าแอปพลิเคชันทำงานภายใต้บัญชีผู้ใช้ที่ระบุ

วิธีเรียกใช้โปรแกรมในฐานะผู้ใช้อื่น (RunAs) ใน Windows 10

ไม่มีตัวเลือก "เรียกใช้ในฐานะผู้ใช้อื่น" ใน Windows 10

หากไม่มี เรียกใช้ในฐานะผู้ใช้อื่น ในเมนูบริบท File Explorer เปิด Local Group Policy Editor (gpedit.msc ) และตรวจสอบให้แน่ใจว่า ต้องการเส้นทางที่เชื่อถือได้สำหรับการป้อนข้อมูลรับรอง นโยบายถูกปิดใช้งาน (หรือไม่ได้กำหนดค่า) ใน การกำหนดค่าคอมพิวเตอร์ -> เทมเพลตการดูแล -> ส่วนประกอบของ Windows -> ส่วนต่อประสานผู้ใช้ข้อมูลรับรอง .

วิธีเรียกใช้โปรแกรมในฐานะผู้ใช้อื่น (RunAs) ใน Windows 10

การใช้คำสั่ง RunAs เพื่อเรียกใช้โปรแกรมในฐานะผู้ใช้อื่นจาก CMD

คุณสามารถใช้เครื่องมือ cli ในตัวของ Windows runas.exe เพื่อเรียกใช้แอปพลิเคชันแอพในฐานะผู้ใช้อื่นจากพรอมต์คำสั่ง runas คำสั่งยังให้คุณบันทึกรหัสผ่านของผู้ใช้ไปยัง Windows Credential Manager ได้อีกด้วย คุณจะได้ไม่ต้องป้อนรหัสผ่านทุกครั้ง

เปิดพรอมต์คำสั่ง (หรือ เรียกใช้ หน้าต่างโดยกด Win+R ). ในการเริ่ม Notepad.exe ภายใต้บัญชีผู้ดูแลระบบ ให้เรียกใช้คำสั่งนี้:

runas /user:admin "C:\Windows\notepad.exe"

เคล็ดลับ. หากชื่อผู้ใช้มีช่องว่าง ให้ใส่เครื่องหมายคำพูด:

runas /user:"antony jr" notepad.exe

วิธีเรียกใช้โปรแกรมในฐานะผู้ใช้อื่น (RunAs) ใน Windows 10

ในหน้าต่างถัดไป ข้อความแจ้ง "ป้อนรหัสผ่านสำหรับผู้ดูแลระบบ" จะปรากฏขึ้น โดยคุณจะต้องป้อนรหัสผ่านของผู้ใช้และกด Enter

วิธีเรียกใช้โปรแกรมในฐานะผู้ใช้อื่น (RunAs) ใน Windows 10

แอปพลิเคชันของคุณควรเปิดขึ้น ในกรณีของฉัน นี่คือ cmd.exe ชื่อหน้าต่างระบุว่า “ทำงานเป็น PCName\ชื่อผู้ใช้ “:

วิธีเรียกใช้โปรแกรมในฐานะผู้ใช้อื่น (RunAs) ใน Windows 10

ตัวอย่างเช่น คุณสามารถเปิดแผงควบคุมภายใต้ผู้ใช้อื่น:

runas /user:admin control

หากคุณต้องการเรียกใช้โปรแกรมภายใต้ผู้ใช้โดเมน ให้ใช้รูปแบบชื่อต่อไปนี้:UserName@DomainName หรือ DomainName\UserName . ตัวอย่างเช่น หากต้องการเปิดไฟล์ข้อความโดยใช้แผ่นจดบันทึกในนามของผู้ใช้โดเมน ให้ใช้คำสั่ง:

runas /user:corp\server_admin "C:\Windows\system32\notepad.exe C:\ps\region.txt"

วิธีเรียกใช้โปรแกรมในฐานะผู้ใช้อื่น (RunAs) ใน Windows 10

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 ที่ระบุในการตั้งค่าเครือข่ายของคอมพิวเตอร์ของคุณสามารถแก้ไขชื่อโดเมนนี้ได้):

runas /netonly /user:contoso\bmorgan cmd.exe

หากคุณไม่ต้องการโหลดโปรไฟล์ผู้ใช้เมื่อเริ่มต้นโปรแกรมในฐานะผู้ใช้อื่น ให้ใช้ /noprofile พารามิเตอร์. วิธีนี้ช่วยให้เปิดแอปพลิเคชันได้เร็วขึ้นมาก แต่อาจทำให้การทำงานของโปรแกรมที่จัดเก็บข้อมูลแอปในโปรไฟล์ของผู้ใช้ไม่ถูกต้อง

วิธีใช้ RunAs โดยไม่ต้องใส่รหัสผ่าน

คุณสามารถบันทึกข้อมูลรับรองผู้ใช้ (ด้วยรหัสผ่าน) ที่คุณป้อน /savecred พารามิเตอร์นี้ใช้สำหรับสิ่งนี้

runas /user:admin /savecred “C:\Windows\cmd.exe”

หลังจากระบุรหัสผ่านแล้ว รหัสผ่านจะถูกบันทึกไว้ใน Windows Credential Manager .

ครั้งต่อไปที่คุณรันคำสั่ง runas ภายใต้ผู้ใช้เดียวกันกับ /savecred คีย์ Windows จะใช้รหัสผ่านที่บันทึกไว้โดยอัตโนมัติจาก Credential Manager โดยไม่ต้องแจ้งให้ป้อนอีกครั้ง

หากต้องการแสดงรายการข้อมูลรับรองที่บันทึกไว้ใน Credential Manager ให้ใช้คำสั่งต่อไปนี้:

rundll32.exe keymgr.dll, KRShowKeyMgr

วิธีเรียกใช้โปรแกรมในฐานะผู้ใช้อื่น (RunAs) ใน Windows 10

อย่างไรก็ตาม การใช้ /savecred พารามิเตอร์ไม่ปลอดภัย เนื่องจากผู้ใช้ที่บันทึกโปรไฟล์ไว้ สามารถใช้เพื่อเรียกใช้ ใดๆ คำสั่งด้วยสิทธิพิเศษเหล่านี้และแม้กระทั่งเปลี่ยนรหัสผ่านผู้ใช้อื่น นอกจากนี้ยังง่ายต่อการขโมยรหัสผ่านที่บันทึกไว้ใน Credential Manager ดังนั้นจึงแนะนำให้ป้องกันไม่ให้ Windows บันทึกรหัสผ่าน (และอย่าบันทึกรหัสผ่านของบัญชีผู้ดูแลระบบที่มีสิทธิ์)

หมายเหตุ . นอกจากนี้ /savecred ไม่ทำงานใน Windows Home edition

จะสร้างทางลัดให้ทำงานเป็นผู้ใช้คนละคนได้อย่างไร

คุณสามารถสร้างทางลัดบนเดสก์ท็อปที่อนุญาตให้คุณเรียกใช้โปรแกรมในฐานะผู้ใช้อื่นได้ เพียงสร้างทางลัดใหม่และระบุ runas คำสั่งพร้อมพารามิเตอร์ที่จำเป็นในช่องตำแหน่ง

วิธีเรียกใช้โปรแกรมในฐานะผู้ใช้อื่น (RunAs) ใน Windows 10

เมื่อคุณเรียกใช้ทางลัดดังกล่าว คุณจะได้รับแจ้งให้ป้อนรหัสผ่านผู้ใช้

หากคุณระบุ /savecred . เพิ่มเติม พารามิเตอร์ใน runas ทางลัดแล้วรหัสผ่านจะได้รับแจ้งเพียงครั้งเดียว รหัสผ่านจะถูกบันทึกไว้ใน Credential Manager และใช้โดยอัตโนมัติเมื่อคุณเรียกใช้ทางลัดโดยไม่ต้องถามรหัสผ่าน

ช็อตคัทดังกล่าวมักใช้ในการรันโปรแกรมที่ต้องการการอนุญาตระดับสูงเพื่อรัน อย่างไรก็ตาม มีวิธีที่ปลอดภัยกว่าในการเรียกใช้โปรแกรมโดยไม่มีสิทธิ์ของผู้ดูแลระบบ หรือปิดใช้งานข้อความแจ้ง UAC สำหรับแอปพลิเคชันเฉพาะ

จะเรียกใช้ MMC Snap-In ในฐานะผู้ใช้อื่นได้อย่างไร

ในบางกรณี คุณต้องเรียกใช้สแน็ปอินการจัดการ Windows ตัวใดตัวหนึ่งในฐานะผู้ใช้อื่น ตัวอย่างเช่น คุณสามารถใช้คำสั่งต่อไปนี้เพื่อเรียกใช้ Active Directory Users and Computers (ADUC) RSAT snap-in เป็นผู้ใช้อื่น:

runas.exe /user:DOMAIN\USER "cmd /c start \"\" mmc %SystemRoot%\system32\dsa.msc"

ในทำนองเดียวกัน คุณสามารถเรียกใช้ snap-in อื่นๆ ได้ (หากคุณทราบชื่อ)

เพิ่มตัวเลือก “เรียกใช้ในฐานะ” ให้กับเมนูเริ่มใน Windows 10

ตามค่าเริ่มต้นในรายการ Start Menu ของ Windows 10 จะไม่มีตัวเลือก "Run As" ในการเพิ่มเมนูบริบท “เรียกใช้ในฐานะผู้ใช้อื่น” ให้เปิดใช้งาน “แสดงการเรียกใช้เป็นคำสั่งผู้ใช้อื่นเมื่อเริ่ม” นโยบายใน การกำหนดค่าผู้ใช้ -> เทมเพลตการดูแลระบบ -> เมนูเริ่มและแถบงาน ของ Local Group Policy Editor (gpedit.msc)

วิธีเรียกใช้โปรแกรมในฐานะผู้ใช้อื่น (RunAs) ใน Windows 10

หรือหากไม่มี gpedit.msc ให้สร้างพารามิเตอร์ DWORD ใหม่โดยใช้ชื่อ ShowRunasDifferentuserinStart และค่า 1 ในรีจิสตรีคีย์ HKEY_CURRENT_USER\Software\Policies\Microsoft\Windows\Explorer . คุณสามารถใช้คำสั่ง PowerShell ต่อไปนี้เพื่อเพิ่มพารามิเตอร์ reg:

New-ItemProperty -Path "HKCU:\Software\Policies\Microsoft\Windows\CurrentVersion\Explorer" -Name ShowRunasDifferentuserinStart -Value 1 -PropertyType DWORD -Force

วิธีเรียกใช้โปรแกรมในฐานะผู้ใช้อื่น (RunAs) ใน Windows 10

อัปเดตการตั้งค่านโยบายกลุ่ม (gpupdate /force ) และตรวจสอบให้แน่ใจว่าเมนูบริบทใหม่ เพิ่มเติม -> เรียกใช้ในฐานะผู้ใช้อื่น ได้ปรากฏขึ้นสำหรับโปรแกรมในเมนูเริ่ม

วิธีเรียกใช้โปรแกรมในฐานะผู้ใช้อื่น (RunAs) ใน Windows 10