Як я можу створити символічні посилання в Windows 8.1 без командного рядка адміністратора?


8

Я сподіваюся, що хтось може виправити мене там, де я помиляюся, намагаючись створити символічне посилання в Windows 8.1, не запускаючи cmd.exe як адміністратор.

Кожен раз, коли я намагаюся створити символьне посилання з звичайного командного рядка, я отримую звичайний дозвіл відповіді ...

C:\Users\MyUser>mklink symlink.txt mytextfile.txt
You do not have sufficient privilege to perform this operation.

... і це працює з командного рядка адміністратора (як очікувалося) ...

C:\Users\MyUser>mklink symlink.txt mytextfile.txt
symbolic link created for symlink.txt <<===>> mytextfile.txt

Однак не здається, що будь-які звичайні виправлення працюють у Windows 8.1 (принаймні, виправлення, які я міг знайти).

Я намагався дотримуватися відповіді на те, як створити посилання в домашній премії Windows 7 як звичайний користувач? , але, схоже, це не має ефекту.

У мене також встановлений UAC на найнижчому рівні.

Чи є ще щось, чого я пропускаю?


2
Це вина УАК. Див відповідь на "Paul Betts" тут: stackoverflow.com/questions/15320550 / ...
StackzOfZtuff

@StackzOfZtuff - Ну, це дратує. Дякуємо за посилання, схоже, мені доведеться вибирати між UAC та без програм Metro. Я не думаю, що я ніколи не зрозумію, що Microsoft намагалася зробити з UAC.
Карл Ніколь

Відповіді:


9

Привілей відсутній у "відфільтрованому" маркері

Або вимкніть UAC. Або з увімкненим UAC: після ввімкнення SECreateSymbolicLinkPrivilegeспробуйте з не-адміністратором .

Пояснення
Це улов 17. З того, як я читав MS-документацію.

Якщо у вашому обліковому записі користувача в чорному списку є відома група адміністраторів, тоді створюється другий, невисокий маркер.

Відповідне SeCreateSymbolicLinkPrivilegeфільтрується, коли з підвищеного токена генерується невисокий маркер.

Від MSDN: Ізоляція привілеїв користувальницького інтерфейсу (UIPI) :

Windows створить два маркери доступу для користувача, якщо будь-яке з наведених нижче дійсних: Обліковий запис користувача містить будь-який із наведених нижче RID.
DOMAIN_GROUP_RID_ADMINS
[...]
Які привілеї містять відфільтрований маркер засновані на тому, чи містив початковий маркер якийсь із перерахованих вище обмежених RIDS. Якщо який - або з обмежених RID , були в маркері, всі привілеї будуть видалені , за винятком:
SeChangeNotifyPrivilege
SeShutdownPrivilege
SeUndockPrivilege
SeReserveProcessorPrivilege
SeTimeZonePrivilege

Тож рішення - взагалі вимкнути генерацію другого маркера. Або видаливши всі згадані групи зі свого облікового запису, або повністю вимкнувши UAC.

(Відмова: Пол Беттс зробив свою роботу. Я просто додав детальну інформацію. Дивіться його відповідь тут: /programming/15320550/secreatesymboliclinkprivilege-ignored-on-windows-8 )

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.