- Сообщения
- 25,228
- Решения
- 5
- Реакции
- 13,786
Проблема — открытый доступ к перемещенным папкам
В Windows давно есть возможность перемещения папок Документы, Музыка и прочих в другое расположение. Достаточно зайти в свойства папки и нажать одну кнопку.Эта функция исторически обладает изъяном в конфиденциальности, пример которого я привел выше.
Допустим, вы создали папку E:\Документы и перенесли туда свою папку «Документы». Теперь любой пользователь этого ПК может зайти в эту папку как к себе домой, что беспристрастно фиксирует команда icacls.
Эти же сведения вы можете увидеть на вкладке Безопасность в свойствах папки, но консольный вывод удобнее для картинки, поскольку видны разрешения всех групп.
Здесь у системы и группы администраторов ожидаемо есть полный доступ (F). Но тут еще все прошедшие проверку пользователи могут изменять файлы (M), т.е. обладают правами на чтение и запись, а встроенная группа «Пользователи» имеет разрешения на чтение и выполнение (RX).
Сравните с папкой своего профиля, куда доступом помимо системы и администраторов обладает только ваша учетная запись.
Windows 10 исправляет этот недостаток и упрощает разграничение доступа.
Перемещение папок «Документы», «Изображения» и прочих в Windows 10
В Windows 10 появилась новая настройка для пользовательских папок.Шаг 1 – укажите диск для сохранения новых файлов
Откройте Параметры — Система — Память, нажмите Изменить место хранения нового содержимого и для каждой папки выберите диск, на котором отныне будут сохраняться файлы.На первый взгляд, создатели Windows просто вынесли управление всеми папками в один раздел параметров, но этим дело не ограничивается.
В частности, в корне диска появляется папка %username% (с именем вашей учетной записи), где автоматически создаются вложенные папки для хранения новых документов, видео и прочего. Доступ в них, помимо системы и администраторов, получает только пользователь, настроивший перемещение.Главная изюминка новой фишки в том, что наряду с единой точкой входа в настройки папок, в Windows 10 автоматически происходит разграничение доступа пользователей к перемещенным файлам.
На картинке вы видите разрешения для корневой папки и подпапки «Документы». Хорошо видно, что параметры доступа точно такие же, как у профиля (см. картинку выше).
Шаг 2 – переместите папки
Главное уже сделано автоматически – на папку %username% выданы правильные разрешения, которые также назначены на вложенные папки! Но настройка распространяется только на сохранение новых файлов, поэтому старые нужно переместить вручную привычным способом.В качестве целевой папки выбирайте соответствующую подпапку на другом диске, например, для изображений — D:\Username\Pictures.
Особенности реализации
В реализации этой фишки есть несколько интересных моментов.Как пройти в библиотеку
Как ни странно, новая возможность напрямую связана со старой, которую уже почти списали на пенсию, старательно убирая с глаз долой. Речь о библиотеках, осваиваемых за 5 минут! Напомню, что они теперь скрыты из панели навигации проводника, но их отображение можно включить в контекстном меню панели.Когда вы изменяете диск для сохранения, скажем, новых документов, система создает папку «Документы», добавляет ее в библиотеку и задает эту папку в качестве основного местоположения вместо стандартной %UserProfile%\Documents.
На картинке вы видите папку документов, переименованную в MyDocs, что подводит нас к следующему моменту.
Можно ли переименовать папки
Windows создает папки со стандартными именами («Документы», «Музыка» и т.д.), но вы можете переименовать их в файловом менеджере, и все будет работать.Как быть с папкой «Загрузки»
Когда я написал о новой фишке в группе ВК, Роман Каретный заметил, что в списке нет загрузок. Я добавил за него отзыв в приложении Feedback, и он даже кому-то понравился.Однако я уверен, что загрузки не забыли, а сознательно обошли стороной. Как вы думаете, почему? Жду ваших соображений в комментариях
Решается же проблема элементарно – создайте в папке %username% папку «Загрузки» и отныне сохраняйте скачанные файлы в новом месте. Вы также можете перенести старую папку в новое расположение.
Какие приложения можно сохранять в новом месте
Внимательные читатели заметили, что помимо пользовательских файлов в настройках хранилища можно указать расположение для приложений.Настройка распространяется только на… приложения для Windows Кстати, после публикации статьи про названия приложений я несколько раз обновлял ее, начиная отсюда.
По интересному совпадению, при обновлении до сборки 162 эта опция оказалась заблокирована, о чем полно жалоб в Отзывах (ищите new apps will save to). (Upd. 18-Jul-15) Техподдержка Microsoft сообщила, что внедрение этой возможности пока отложено.
Кажется, что ничего не работает
Уже после публикации статьи Юрий Минченко, участник группы ВК, изменил диск для сохранения, поэкспериментировал с парой программ и пришел к выводу, что после настройки ничего не изменилось — файлы все так же сохранялись в старых папках. Это вполне вероятный расклад, потому что приложения могут:- запоминать папку, в которой был сохранен прошлый файл
- опираться на путь к папке, а не библиотеку
А вот что действительно могло работать уже после первого шага, так это сохранение снимков экрана сочетанием клавиш + PrtScn (отзыв отправлен).Напоминаю, что у процедуры перемещения два шага, и сказав «А», нужно говорить и «Б».
Как правильно назначить разрешения на пользовательские папки с помощью icacls
В более ранних Windows за неимением гербовой приходится писать на простой, а точнее — в командной строке, запущенной от имени администратора. Впрочем, полезно знать подходы, которые работают сразу во всех Windows.В этом примере я делаю резервную копию разрешений папки E:\MyFiles, а потом назначаю такие же права, как на папки профиля. В командах необходимо изменить путь к папке, для которой осуществляется настройка разрешений. Если вы настраиваете разрешения для другого пользователя, укажите его имя вместо %username%.Если у вас нет необходимости в разграничении доступа, не играйте с разрешениями на реальных папках. Прежде чем применить эти команды к ценным папкам, потренируйтесь на их копиях.
Код:
:: сохранение текущих разрешений в файл (бэкап)
icacls E:\MyFiles /save "%userprofile%\desktop\ACL.txt" /T
:: применение разрешений как на папки в профиле
icacls E:\MyFiles /inheritance:r /grant:r %username%:(OI)(CI)F /grant:r *S-1-5-18:(OI)(CI)F /grant:r *S-1-5-32-544:(OI)(CI)F /T
Первая команда просто сохраняет текущие разрешения в текстовый файл на всякий случай. А вторую я разберу подробнее:
- /inheritance:r — убирает все ACL, унаследованные от корня диска, что позволяет удалить ненужные группы, а по факту – вообще все
Заметьте, что надо быть владельцем папки, чтобы оставшаяся часть команды отработала без ошибок. - /grant:r — выдает разрешения перечисленным далее учетным записям и группам, заменяя текущие разрешения r)
- %username%OI)(CI)F — задает для вашей учетной записи (%username%) наследование разрешений объекта (OI) и контейнера (CI) с полным доступом (F)
- /grant:r S-1-5-18 и /grant:r *S-1-5-32-544 — задает разрешения для учетной записи СИСТЕМА и группы Администраторы соответственно. Здесь задействованы известные идентификаторы безопасности (SIDs), которые в команде надо предварять звездочкой (). Использование SID вместо имени учетной записи или группы позволяет сформировать команду, не зависящую от языка системы (спасибо, Артём!).
- /T — выполняет рекурсивную обработку папки
Сравните с разрешениями на свой профиль.
Примечание. Решение задачи в графическом интерфейсе я оставляю вам в качестве самостоятельного упражнения, поскольку вы уже знаете, у каких групп надо отобрать разрешения и кому их выдать.
Источник
Вложения
Последнее редактирование: