Откройте блокнот и перетащите в него текстовый файл с рабочего стола. Сработало? Теперь откройте блокнот от имени администратора и перетащите тот же файл. При включенном UAC у вас ничего не получится! Почему?
В обсуждении опроса про контроль учетных записей я уже объяснял, почему так происходит. Но мой комментарий был кратким и неглубоким. Недавно на форуме TechNet я принял участие в обсуждении аналогичной проблемы с архиватором, и оно побудило меня подробнее осветить вопрос в блоге. Сегодня я предлагаю вам первую часть своего рассказа, в котором речь пойдет об уровнях целостности (integrity levels) и обязательном контроле над ними в Windows.
Начиная с Windows Vista, все процессы и папки имеют определенный уровень целостности. Это позволяет дополнительно разграничивать доступ наряду со списками контроля доступа (ACL), которые настраиваются в свойствах папок и разделов реестра на вкладке «Безопасность».
Концепция уровней целостности — это довольно скучная техническая вещь, но я постараюсь рассказать о ней так, чтобы вам было интересно :)
Добро пожаловать в зрительный зал
Представьте, что все процессы в Windows занимают места в зрительном зале по ранжиру:
- в ложах сидят системные процессы, имеющие системный уровень целостности
- в первом ряду сидят процессы с высоким уровнем целостности, запущенные с полными правами администратора
- в партере рассаживаются процессы со средним уровнем целостности, запущенные с обычными правами
- на галерку загоняют процессы, запущенные с обычными правами, но низким уровнем целостности, например, Internet Explorer и часть процессов Google Chrome
Папки тоже имеют уровни целостности, и по умолчанию им присваивается средний уровень, за некоторыми исключениями, которые я покажу ниже.
В Windows даже администраторы работают с обычными правами, поэтому их процессы сидят в партере. Но администраторам выдается два билета на спектакль – обычный и полный (маркеры безопасности).
Когда администраторы хотят что-то рассмотреть получше, они идут в первый ряд. А контроль учетных записей – это распорядитель зала, который проверяет, есть ли у них туда билет.
Согласно купленным билетам (почти)
photo credit: victor_nuno
Изоляция привилегий пользовательского интерфейса (UIPI) построена так, чтобы процессы с более низким уровнем целостности не могли манипулировать процессами с более высоким уровнем. Однако эта модель не является непроходимой стеной по двум причинам.
- С галерки или из партера процесс может прочесть программку спектакля (данные), которую держит в руках процесс, сидящий в партере, т.е. имеет такие же права. Это сделано специально, иначе программам было бы затруднительно считывать данные, в том числе свои.
- Процессы все-таки сидят в одном зале (пользовательской сессии) и дышат одним воздухом (системной памятью). Поэтому хулиганствующий процесс из партера может запустить бутылкой в первый ряд (выполнить сложную атаку) и спровоцировать сидящий там процесс к серьезному нарушению общественного порядка (в системе).
Поэтому очень важна роль распорядителя зала, которую играет UAC, на чьи вопросы отвечаете именно вы!
Хотя контроль учетных записей напрямую не связан с уровнями целостности, их повышение зачастую происходит в результате повышения прав.
Экскурсия по зрительному залу
photo credit: melancholy rose
Я предлагаю вам прогуляться по зрительному залу, захватив с собой театральный бинокль для внимательного изучения подробностей интерьера, а также несколько модных аксессуаров от дизайнерских домов Sysinternals и Windows:
- Утилита Process Explorer покажет уровень целостности процессов в столбце Integrity Levels, который можно добавить из View – Select Columns – Process Image.
- Утилита PsExec умеет запускать процессы с низким уровнем целостности. В принципе, это может и Process Explorer, просто по ходу экскурсии я выполняю команды в консоли.
- Системная команда icacls умеет показывать уровень целостности папок и разделов реестра, поэтому сторонние средства нам не потребуются, хотя можно воспользоваться AccessChk от Sysinternals.
Я записал видео прогулки, а также подготовил текстовый рассказ о ней, дополненный скриншотами.
Из партера в первый ряд
Если вы сделали то, что я просил в самом начале статьи, то у вас открыто два окна блокнота – с обычными и полными правами.
Notepad с PID 6580 открыт с обычными правами и имеет средний уровень целостности, а Notepad с PID 408 запущен от имени администратора и имеет высокий уровень. Проводник, explorer.exe с PID 7196, запускается с обычными правами и средним уровнем.
Поэтому перетаскивание файла сработает только в блокнот с PID 6580, имеющий уровень целостности не выше, чем у проводника.
Я показал, что из партера в первый ряд попасть не удается, а заодно стало ясно, почему не сработало перетаскивание файлов в одном из двух случаев. Теперь давайте заберемся на галерку.
С галерки в партер
Программы хранят свои данные и настройки в папке %userprofile%\appdata в трех разных папках.
Здесь:
- Roaming — «легкая» папка. Если в организации профили перемещаемые, ее содержимое копируется на сервер.
- Local — «тяжелая» папка. Помимо прочего внутри нее, в папке Temp, хранятся ваши временные файлы. Поэтому ее содержимое на сервер не копируется, чтобы не задерживать процесс входа/выхода из системы.
- LocalLow — содержит данные, записанные с низким уровнем целостности, и сама она имеет такой же уровень.
С двумя последними папками мы и будем экспериментировать.
Запустите командную строку с обычными правами. Перейдите во временную папку, создайте в ней текстовый файл и попробуйте прочесть его.
:: Переход во временную папку cd %temp% :: Создание файла в папке echo integrity > il.txt :: Чтение созданного файла type il.txt
Работают чтение и запись, потому что командная строка и временная папка имеют одинаковые уровни целостности.
Теперь выполните в этой командной строке:
psexec -l -d cmd
Запустится новая командная строка с низким уровнем целостности. В ней будут выполняться все последующие команды. Можно также запустить командную строку в Process Explorer из меню File — Run as Limited User (при этом процесс запускается не только с ограниченными правами, но и с низким уровнем целостности).
Выполните в этой командной строке те же команды, что и ранее.
При попытке записи файла вы получите сообщение «Отказано в доступе». Это происходит потому, что временная папка Temp имеет средний уровень целостности, а командная строка запущена с низким уровнем. Однако прочесть созданный ранее файл можно.
Теперь перейдите в папку LocalLow, посмотрите ее уровень целостности и попробуйте записать файл – он будет успешно создан!
:: Переход в LocalLow cd ..\..\LocalLow :: Просмотр уровня целостности папки icacls . :: Создание файла в папке echo integrity > il.txt :: Чтение созданного файла type il.txt
Команда icacls показывает уровни целостности папок только в том случае, если они отличаются от стандартного, среднего уровня. У папки LocalLow он низкий, что и подчеркнуто на рисунке выше.
С реестром происходит примерно то же самое, где для низкого уровня целостности предусмотрен раздел HKEY_CURRENT_USER\Software\AppDataLow.
Как видите, процессы с низким уровнем целостности не могут перебраться с галерки в партер, но могут видеть, что там происходит. Эту модель могут использовать программы, и в папке LocalLow вы найдете их данные. Так, модель реализована в защищенном режиме Internet Explorer, песочнице Google Chrome и защищенном режиме Adobe Reader.
Как победить проблему
photo credit: AstridWestvang
Надеюсь, мне удалось объяснить, почему перетаскивание файлов не всегда работает при включенном UAC – все дело в волшебных пузырьках уровнях целостности. Как сделать так, чтобы оно работало всегда? Я думаю, что вы уже догадались!
Нужно запустить файловый менеджер с повышенными правами, от имени администратора, и перетаскивание будет работать нормально.
Впрочем, лучше делать это только при необходимости, иначе с полными правами будут работать все процессы, запускаемые из файлового менеджера.
С другой стороны, проблема в том, что для проводника не предусмотрен запуск с высоким уровнем целостности, в отличие, например, от Total Commander. Вы можете проверить это самостоятельно с помощью Process Explorer, либо посмотреть видео. А через неделю вы узнаете, почему так происходит с проводником и как обойти это ограничение. Гарантирую вам незабываемые впечатления от рассказа ;)
А в каких случаях вы пользуетесь перетаскиванием файлов? Сталкивались ли вы с тем, что невозможно перетащить файл из одной программы в другую?
Алекс
Вадим огромное спасибо за видео, просто супер, для меня лично видео более воспринимается:). К сожалению не могу себя приучить включать UAC , поэтому проблем нет.
Vadim Sterkin
Алекс, я рад, что вам понравилось видео! В данном случае наглядность очень важна, и видеоряд ее обеспечивает в полной мере.
Да пора уже :) Будете лучше знать, как работает ОС.
Алекс
Буду пробовать в будещем). А видео дествительно отличное, профессионально и понятно оформлено!
Галёрка
А если выключить ЮАК и, сидеть только на галёрке (под юзером), а в случаи необходимлсти выходить из зала и входить в него но уже с другим билетом (админом)? Так безопастно?
Алекс
Знаю что не тут пишу Вадим, но нельзя ли сделать редактирование своего поста? Поторопился и вижу у себя ошибки…
Vadim Sterkin
Галёрка, это безопасно, но неудобно. Я уже давал развернутый ответ: Администратор или пользователь?. Работа с ограниченными правами при включенном UAC не менее безопасна, но более удобна.
Алекс, редактирование комментариев вообще невозможно в WordPress, даже для зарегистрированных пользователей. Сделано во избежание флеймовых войн в больших блогах (блокируется правка задним числом).
Алекс
Принято во внимание.
Vadim Sterkin
Галёрка, дополню свой ответ…
Даже работая в административной учетной записи, можно в качестве дополнительной защиты форсировать политикой ввод учетных данных при каждом запросе UAC. Когда запрос выводится на безопасном рабочем столе, это эквивалентно работе с обычными правами и вводу учетных данных на экране входа в систему (см. предыдущую запись).
При работе с UAC обычным пользователем могут быть сюрпризы, так что надо знать правильные пути настройки параметров.
Tiunov Igor
В Windows XP я часто использую runas для повышения привилегий. Нигде не встречал описания причины, по которой explorer.exe не запускается с повышенными привилегиями, наверное причина подобна тому, что вы опишите в следующем посте?
Vadim Sterkin
Tiunov Igor, в XP нет уровней целостности, там совсем другая история.
ЕМНИП, способ запуска облочки с полными правами в ХР довольно прост — нужно убить все процессы explorer в диспетчере задач, а затем из него же выполнить команду runas. См. http://support.microsoft.com/kb/225035/en (русский машинный перевод ужасен). Там для 2000, но в ХР вроде так же. Я уже не помню :)
С IE6 можно было использовать runas для запуска iexplore, а затем в адресной строке ввести C:\, но в IE7 это уже убрали. Так что проще всего будет так:
Кстати, runas тоже отличается в ХР и 7.
Tiunov Igor
Vadim Sterkin,
Ну естественно в XP нет уровней, меня интересовало, почему я не могу запустить explorer.exe как отдельный процесс с повышенными правами, чаще всего пользовался именно этим способом — kb225035.
Вот как раз про /separete я и не знал. Этот ключ решает проблему, которую я описал в вопросе. Спасибо!
Vadim Sterkin
Tiunov Igor, я рад, что вы узнали новый способ. Но он уже старый, потому что не работает в 7 ;) Впрочем, не будем забегать вперед…
artem
я опять немного позанудствую.
я бы не стал утверждать, что это прямо-таки эквивалентно. Да, требовать нажатия Ctrl+Alt+Delete перед запросом на повышение прав — это правильно. Но ведь после этого все процессы (запущенные с разными токенами и разными уровнями целостности) будут работать в одной сессии. И это позволит им обмениваться оконными сообщениями. В том числе — и со злыми намереньями.
Иллюстрация есть вот тут: http://blog.not-a-kernel-guy.com/2008/03/13/298 (см. комментарии пользователя Alexey).
artem
Ну, это же тоже некрасиво. Гораздо правильнее закрывать оболочку через контекстное меню меню «Пуск» при нажатых Ctrl+Shift.
Vadim Sterkin
artem, спасибо за примечание. Я согласен, что термин «эквивалентно» в данном случае некорректен с технической точки зрения.
Но опять же, я исхожу из того, что повседневная работа с обычными правами неудобна в домашней ОС, которая обновлена и защищена в соответствии с рекомендациями МСФТ.
Если есть предпосылки к максимальному закручиванию гаек или требования (организации), это другое дело. Но я не считаю нужным обвешивать себя веригами, лишая комфорта, чисто из параноидальных соображений.
Но по поводу первой моей цитаты, я считаю, там все ок. Лучше работать с включенным UAC под обычным юзером, чем с выключенным UAC входить в учетку админа для настройки ОС.
А ты в домашней ОС с обычными или админскими правами работаешь?
Да я в курсе, это ж в загадках было :)
artem
она в любом случае неудобна — безотносительно того, защищена и обновлена ли машина :)
С этим тоже никто не спорит. Каждый сам выбирает для себя баланс между защищённостью и удобством. Повышение защищённости практически всегда будет в ущерб удобству, и наоборот. Дискуссии на эту тему надо вести с любителями прятать ноутбуки в мешках из-под картохи, а не со мной. Я только прицепился к словам «не менее безопасна» и «эквивалентно».
и на домашней, и на рабочей. Вернее, так — на рабочий ноутбук я пару месяцев назад пролил кофе :) С тех пор всюду хожу с домашним. А он у меня входит в домен, в котором действуют политики, которые основаны на SSLF (http://support.microsoft.com/kb/885409). Только ещё дополнительно накрученные в тех местах, где SSLF оставлял простор для фантазии :) Просто потому, что кто-то же должен показывать что это совсем не больно.
Vadim Sterkin
Артем, спасибо за ссылку! Серьезный документ :)
Кстати, странно, что до сих пор не опубликовали рук-во по безопасности Windows 7. Понятно, что от Vista применимо в целом, и хорошо, что оно переведено (людьми), но можно было бы его проапгрейдить.
ив
«Ох, нелегкая это работа — Из болота тащить бегемота!» (с)Корней Чуковский «Телефон».
Восхищен Вашим Трудом (да-да, именно с заглавной) максимально доступным языком разъяснять необходимость знания элементарных, но не вполне очевидных функций «любимых форточек»… :)
P.S. Сам «вскормлен» на NC и немного VC, плавно «пересел» на WC (который ныне ТС), а, посему тема мне лично, не особо актуальна, хотя ключик HKEY_CURRENT_USER\Software\AppDataLow знаю и иногда пользуюсь «в корыстных целях» .
artem
На самом деле, документ — первая попавшаяся под руку ссылка для иллюстрации термина SSLF. Сам он, к сожалению, отходит в прошлое — теперь у нас будет всего одна «сбалансированная» между EC и SSLF модель (см. http://blogs.technet.com/b/secguide/archive/2011/06/29/scm-v2-beta-what-happened-to-the-ec-sslf.aspx).
Похоже, что прикрыли лавочку :) Вернее, переименовали — и свели к набору рекомендуемых политик (таковые есть и для Windows 7 тоже: http://technet.microsoft.com/library/ee712767). А в качестве теории можно использовать текущую версию Threats and Countermeasures Guide (http://technet.microsoft.com/library/hh125921). См. http://blogs.technet.com/b/securitycontent/archive/2011/05/26/windows-security-guide.aspx
Vadim Sterkin
ив, спасибо за лестный отзыв о моем Труде ;)
Если вы работаете с включенным UAC, тема для вас актуальна вне зависимости от файлового менеджера. Разве что вы свой всегда запускаете с правами админа…
Артем, интересные у тебя ссылки. Честно говоря, мне не приходилось особо вникать в содержимое таких документов — нет необходимости. Но теперь буду знать, куда послать, если что :)
Виталий
Сломали?
Vadim Sterkin
Виталий, через неделю прочтете :)
ив
Именно так, т.к. я единственный пользователь на своем железе (я не говорю про машины, которые мне приходится обслуживать — там просто TC не ставлю, потому что не просят… :) ). А, уж со своей «криворукостью» (чего греха таить — все спотыкаемся, иногда даже на элементарных вещах), всегда проще справится, нежели с чужой. Да и паранойя в вопросах безопасности ОС мне особо не грозит, к счастью…
ив
Кстати, о «криворукости»… :)
Вадим, будьте добры, поправьте оценку комментария «Промахнулся» с + на —
Vadim Sterkin
ив, оценки комментариев править нельзя. Так что будьте аккуратнее в следующий раз :)
Slava21
Интересно, но возник вопрос — как менять уровни целостности у папок?
ЗЫ:
наверно можно прямым запросом к MySQL
Vadim Sterkin
chml: a tool to control Windows Integrity Levels
Наверное… А вы бы стали заморачиваться с этим ради исправления рейтинга одного комментария?
ив
Наверное — нет. Поэтому будем надеяться, что уважаемый artem извинит меня за невольную оплошность. :)
PS Компенсировал в другом комменте…
jakv
Работая в ХР использовал для создания виртуальных дисков утилиту от Микрософт Virtual CD-ROM Control Panel, так как она имеет скромные размеры и всегда под рукой. Однако в семерке не сумел ей воспользоваться. От простого пользователя она не запускается, а диски созданные при запуске от админа простой пользователь не видит. Можно ли как то запускать именно эту программу так, чтобы простой пользователь мог монтировать и размонтировать диски и работать с ними?
Vadim Sterkin
jakv, контекстное меню — это не волшебная палочка. Если программа не работает под обычным юзером, она не будет работать при запуске из контекстного меню.
Вам шашечки или ехать? Я 5 лет использую elby CloneDrive.
jakv
Вопрос не случайно задан в этой статье и связан с предыдущей цитатой.
В сеансе админа виртуальные диски создаются и с ними можно работать, но с галерки диски не видны, хотя судя по цитате юзер может их видеть Так что дело действительно не в том откуда запускать,а в том как увидеть данные с галерки..
Мне ехать, но политика нашей организации разрешает без ограничений пользоваться продуктами от MS, но получить разрешение на продукты третьих фирм очень сложно, особенно если есть аналогичный у MS.
Кстати я никогда не понимал советов типа «для записи ISO на CD установите Nero» хотя cdburn.exe (14 кб) с этим прекрасно справляется и не требует установки.
Так что по возможности хотелось бы доехать на метро, а не на такси.
Vadim Sterkin
jakv, давайте сравнивать цитаты.
В статье, пусть и иносказательно, но довольно четко выражена мысль о том, что процессы, запущенные с правами обычного пользователя, не могут считывать данные процессов, запущенных с правами админа.
У вас же админ подключил виртуальный диск, а вы хотите, чтобы юзер его увидел. Я усматриваю противоречие с тем, что написано в статье.
Политика вашей организации понятна, но я не считаю, что в данном случае есть аналогичный продукт Microsoft. Да, он есть, но он несовместим с Windows 7, раз не подходит для работы с обычными правами.
Если сторонние средства проблематичны, нужно писать свои тогда. К сожалению, мне больше нечего предложить вам.
artem
к сожалению, есть разница. cd/dvdburn.exe входит в Windows AIK, т.е. он предназначен и протестирован для работы на Windows 7.
Virtual CD-ROM Control Pannel была разработана специально для Windows XP и никогда не тестировалась на более новых ОС. Строго говоря, одно время была надежда на то, что это и не понадобится — существовали планы включить поддержку формата ISO в Virtual Disk API (см. http://msdn.microsoft.com/magazine/dd569754). В результате поддержку ISO так и не реализовали, а развитие VCDCP остановили.
Поэтому применительно к Windows 7 уместно говорить о том, что аналогичного продукта Microsoft не существует. Это должно развязать вам руки в выборе стороннего аналога.
Vadim Sterkin
Кстати, трюк cdburn в конекстном меню я показывал еще в начале 2005 года :)
Между тем, я тут нашел забавный кейс на коннекте. Еще в 2008 году в МСФТ прекрасно понимали, что фича нужна, но в 7/R2 все равно не включили.
По информации из слитых сборок Windows 8, фича все-таки в ней появится. И вот это мне будет совершенно непонятно. Если приняли принципиальное решение, не внедряйте. А если внедрили, то что же вам мешало внедрить ее раньше.
Артем, поведай, неужели у вас нет внутренней тулзы для монтирования ISO? :) И если есть, может, назовешь ее?
artem
Вадим, ты вот сейчас как маленький прям :)
Мне ли тебе рассказывать о куче случаев, когда первоначальное решение оказывалось… так скажем, несколько не тем, чего хотели пользователи? Из самых последних случаев — требование аппаратной поддержки виртуализации в Windows Virtual PC, например. Мудрость заключается, в том числе, и в том, чтобы уметь признавать свои ошибки. Хотя в случае с подключением ISO, на мой взгляд, никакой ошибки не было.
Ты не поверишь — мы и раньше это прекрасно понимали :) Но одного только понимания, к сожалению, несколько не достаточно. Мне кажется, что не осталось уже людей, которые верят в то, что в том или ином решении заложены все возможности, которые разрабочики считают нужным реализовать :). Аппетит приходит во время еды, а новые потребности появляются по мере удовлетворения старых. Реализация бесконечного количества функций требует бесконечного времени. А значит, чтобы хотя бы иногда выпускать новые версии, приходится расставлять приоритеты. Очевидно, что какое-то исследование показало, что монтировать ISO требуется гораздо реже, чем… ну, скажем, чем шифровать флешки. Поэтому в реализацию функции BitLocker to Go всё-таки были вложены ресурсы, а монтирование ISO отложили когда-нибудь на потом.
Microsoft большой. О каких-то новых внутренних тулзах я узнаю буквально каждый день :) Но инструмент для монтирования ISO я правда специально искал. Нашёл только нечто дико неудобное, что требует установки специального драйвера, к тому же ещё подписанного тестовым сертификатом (а значит — не совместимого с 64-битными системами без включения специального режима при загрузке). В общем, посмотрел и забыл как страшный сон.
Vadim Sterkin
Артем, спасибо за развернутый ответ :)
Да ясно все — и что еще раньше понимали (я утрировал — ведь люди ждали этого в 2008/Vista, отсюда и кейс на коннекте), и что ошибки делали (хотя отсутствие аппаратной поддержки виртуализации мне казалось больше маркетинговым ходом, нежели техническим).
Но если она появится в следующей Windows, то получится, что два релиза ОС тянули с внедрением копеечной фичи (о да, целый драйвер нужно написать). По мне это фейл, с учетом того, что МСФТ предлагает к загрузке столько программных продуктов в формате ISO.
Ладно, заканчиваю оффтоп :)
artem
Ну, справедливости ради надо сказать, что кейс всё-таки относится ко времени разработки уже Windows 7/Server 2008 R2. Хотя бы потому, что от Vista ждали совсем другого (и ещё больше).
И да, и нет. С одной стороны, система виртуализации с поддержкой аппаратных расширений процессора и без оной — это по затратам практически как два разных продукта. С другой — решение, конечно, было и маркетинговым в том числе. С третьей, каким бы оно ни было — это не отменяет того факта, что оно оказалось ошибочным в силу того, что кто-то недооценил количество унаследованных комьютеров, на которых пользователи почему-то захотели пользоваться WVPC :)
Угу. Но не только написать, а ещё и протестировать. И ещё не надо забывать, что драйверы ещё имеют гадкую привычку постоянно занимать память. А если тут вспомнить, сколько всего полезного из Windows 7 было выкинуто в угоду производительности… Причём, выкинуто было даже уже написанное и протестированное — взять хотя бы тот же Sidebar или возможность группировать файлы, кликая по колонкам из заголовка таблицы в «Проводнике».
Ты обрати внимание, что все эти продукты предназначены для потребления не рядовыми пользователями, а техниками. Техников относительно мало (они не делают рынок), и они вполне способны искать сторонние решения. Например, именно поэтому в WVPC не стали заморачиваться с поддержкой 64-битных гостевых ОС. Единственный случай, когда работа с ISO потребовалась широким массам пользователей — это покупка электронной версии Windows 7. И тут же был выпущен специально обученный Windows 7 USB/DVD download tool!
Да ладно, это уже старый пост, тут всё равно каменты будут читать только заинтересованные лица :)
Vadim Sterkin
Да ладно, ему еще недели нет :) И думаю, что он даже в следующей Windows будет актуален — ведь это поведение наблюдается с Vista ;)
Кейс с коннекта, конечно, относится к Windows 7, т.к. народ увидел, что в Vista этого нет.
Сайдбар просто группировал гаджеты в одну область, a в 7 их отпустили в свободное плавание. Не думаю, что тут большая разница в плане потребления ресурсов.
Гм… это же в 7 есть — при наведении на столбец появляется «стрелка вниз». Я люблю эту фичу :) Или ты о чем-то другом?
И тут же обнаружилось, что создал его вендор, а не МСФТ. При этом был использован открытый исходный код с нарушением лицензии. После чего тулзу сняли и несколько месяцев исправляли этот косяк :)
Насчет аппаратной виртуализации в VPC — как бы то ни было, но получилась нужная вещь.
artem
Самое смешное, что в Vista их точно так же можно было цеплять в произвольное место рабочего стола. Просто никто это не рекламировал как «мега-улучшение». А в Windows 7 процесс, который отвечает за гаджеты, точно так же называется Sidebar.exe. Вывод? Убрали именно тот кусок кода, который отвечал за полоску справа. Да — понятно, что она оказалась не сильно популярной. (Хотя, на мой взгляд, без этой полоски гаджеты стали совершенно бесполезны). Но это только подтверждает тезисы, выдвинутые выше.
Всё, что не сильно нужно пользователям, подвергается усекновению — до релиза или даже после — в угоду ресурсам (как системным, так и разработческим). Ибо любой код, перенесённый в новую версию, надо тестировать на совместимость с новым кодом точно так же, как и новые функции.
Это всего лишь фильтр, а не группировка. Группировка осталась в контекстном меню. Но чтобы добраться до неё, теперь приходится тратить на один клик и на два движения мышкой больше.
Ещё можно вспомнить о том, что в Windows 7 канула в лету горизонтальная полоса прокрутки у дерева «Проводника» и ещё с десяток мелких, но полезных вещей.
Что лишний раз доказывает, что если функция действительно востребована большим количеством пользователей, то её — хоть тушкой, хоть чучелком — всё-таки реализуют.
Vadim Sterkin
Да, верно. Я ей пользуюсь, в основном, в папках с изображениями. Но я уже и забыл, как она была реализована в Vista. Равно как и полоса прокрутки в дереве проводника (об этом я вспомнил на днях, рецензируя статью читателя, которая скоро появится в блоге).
Артем, ты лукавишь :) Эта фича была нужна Microsoft, чтобы клиенты, купившие Windows 7 онлайн, могли записать ISO. Другими словами, появление фичи продиктовано исключительно желанием получить прибыль, а не заботой о пользователях.
И это характерный пример. Пока люди качают бесплатные ISO с сайта Microsoft, им «не нужна» возможность их монтирования. Но как только они заплатили, им похожая фича сразу становится нужна :)
Понятно, что MSFT занимается извлечением прибыли для акционеров. Но неправильно обосновывать появление Download Tool спросом пользователей.