Пользователь
0,4
рейтинг
2 сентября 2012 в 14:01

Разработка → «Пользовательские скрипты могут быть добавлены только из Интернет-магазина Chrome»? Нет, не только

Изменение политики установки юзерскриптов в Google Chrome.

В браузере Chrome версии 21 появилось новшество, известное ещё с её бета-версии: при попытке установить юзерскрипт браузер выдаёт провокационное, но некорректное по сути сообщение (в баре на странице вверху):

Расширения, приложения и пользовательские скрипты могут быть добавлены только из Интернет-магазина Chrome. Подробнее…
Ещё 20 августа было всё нормально, но с установкой новой версии политика начала действовать.

На самом деле, как они дальше поясняют, это утверждение неверно и представляет собой, по сути, дешёвый провокационный трюк, подталкивающий авторов опубликовать расширения в их «магазине». Выгода небольшая, но прямая, потому что регистрация автора — платная (однократно 5$), и часть авторов пойдут на это, потому что не каждый пользователь нажмёт ссылку «Подробнее...» и так и будет думать, что устанавливать расширения стало возможным только из «магазина». Даже поиск в Яндексе показывает такой типичный ход мыслей пользователей:
цитата из поиска
При установке пишет: «Расширения, приложения и пользовательские скрипты могут быть добавлены только из Интернет-магазина Chrome.» … простите меня может глупость говорю, новый хром версия 21.0.1180.60 m — ни в какую не хочет устанавливать ваше расширение, пишет, что расширения могут быть установлены только из магазина Chrome APP, дайте пож-та ссылку на ваше расширение в магазине хрома, или точное название чтобы найти его там по поиску.
И даже часть авторов в масштабе всего мира — это довольно много, счёт пойдёт, думается на десятки тысяч; можно ожидать ликующие отчёты маркетологов в служебной переписке компании уже в первый месяц нововведений.

Однозначно, это что-то новое в мире настольных браузеров, ранее встречавшееся только в Аппсторе и подобных закрытых средах. Что ж, читаем дальше, можно ли продолжить использование расширений и скриптов в этом браузере, не внося денег в не имеющий отношения к вам магазин.

По клику на "Подробнее..." видим страницу:
Скриншот текста


Повторение на случай непоказа картинки
Добавление расширений с других веб-сайтов

Мы стремимся сделать работу в Интернете более безопасной. Для этого мы недавно изменили правила добавления в браузер расширений, которых нет в Интернет-магазине Chrome. Раньше любой веб-сайт мог предложить вам добавить в браузер свое расширение. В последней же версии Google Chrome пользователь должен явно указать, что хочет установить такой компонент, добавив его на странице «Расширения».

Причины изменений

Чтобы вы могли безопасно работать в Интернете, группа аналитиков и технических специалистов проверяет все расширения в нашем магазине. Это позволяет найти вредоносные программы и не дать им попасть в магазин. К сожалению, мы не можем гарантировать надежность расширений на других веб-сайтах. Например, хакеры могут создавать сайты, которые автоматически запускают установку вредоносных программ. Такие расширения могут тайно отслеживать все данные, которые вы вводите в Интернете. Это позволяет злоумышленникам использовать информацию в своих целях.

Благодаря изменениям в процедуре установки расширений веб-сайты не могут автоматически запускать этот процесс, а вы получаете возможность лучше контролировать расширения, которые добавляете в Chrome.

Разработчикам: если вы распространяете расширение с помощью своего веб-сайта, рекомендуем вам добавить его в Интернет-магазин Chrome. Дополнительные инструкции по добавлению продуктов в Интернет-магазин Chrome и использованию встроенных средств, позволяющих устанавливать расширение прямо с вашего сайта, можно найти на веб-сайте Google для разработчиков.
Администраторам корпоративных систем: вы можете указать URL, с которых разрешено устанавливать расширения, приложения и темы, непосредственно в правилах ExtensionInstallSources.

Инструкции по добавлению расширений с других веб-сайтов

Рекомендуется добавлять расширения только с тех сайтов, которым вы доверяете. Чтобы сделать это в Chrome, выполните указанные ниже действия.

1. Загрузите файл расширения с веб-сайта и сохраните его на компьютере.
2. Нажмите на значок гаечного ключа на панели инструментов.
3. Выберите Инструменты > Расширения.
4. Найдите сохраненный файл и перетащите его на страницу «Расширения».
5. В открывшемся диалоговом окне проверьте список разрешений. Чтобы продолжить, нажмите кнопку Установить.

Дисклеймер по `разводу на жмота`
Специально для любителей выкрикнуть «Вам что, жалко 5 долларов для поддержки браузера?», вспомним, что, например, Майкрософт никогда не «ведётся» на выплаты компенсаций, чтобы не создавать прецедентов, мы никогда не подаём цыганке «копеечку» и не «ведёмся» на раскрутку хора цыганок-провокаторш за спиной. Вспоминаем поговорку «Дай ему палец — он и руку откусит» и видим принципиальную разницу между схемой поддержки разработчиков в 3 других браузерах и нововведением в Хроме.

Выводы такие.

Да, начиная с изменения формата собственных расширений Хрома, начавшихся 1-1.5 месяца назад, они ведут планомерную работу по перекрыванию источников взлома браузера с использованием вредоносных юзерскриптов и расширений. Правда, 1.5 года назад они «невзначай» ввели плату (одноразовую) для разработчиков на право публикации расширений, даже бесплатных. Поэтому, если разработчик делает расширение для себя или для узкого круга знакомых или для небольшого сообщества вокруг сайта (что чаще всего бывает), он уже не может опубликовать расширение в «магазине», не вступив в денежные отношения с создателем браузера — один раз, но придётся сделать платёж, что примерно равно регистрации с помощью мобильного — компания узнаёт о держателе счёта дополнительную информацию.

В общем, для защиты от хакеров, для поиска нарушителей это даже хорошо (похожую схему платных писем предлагала MS для защиты от спаммеров), хотя, наверное, без труда найдутся способы создания фиктивного счёта. С третьей стороны, они утверждают, что каждое приложение проходит проверку, поэтому получаемые деньги, очевидно, тратятся на поддержку службы проверки, а это будут немалые расходы, если она нужна действительно эффективной.

Получение статуса разработчика для других браузеров


Для сравнения, Safari создаёт статус разработчика (Start developing Safari extensions today) с лицензией на год, но бесплатно (для расширений). (Существует Safari 5.1.7 for Windows от мая 2012, задвинуто сюда support.apple.com/kb/DL1531 (us), ru.)

Firefox никогда не производил попыток монетизировать процесс вовлечения разработчиков; у него есть раздел сайта с аддонами, на нём может зарегистрироваться любой пользователь или разработчик, что не составляет напряжения или проблемы. Пользователи могут составлять списки (подборки) своих аддонов, следить за списками других и писать отзывы, а разработчики — ещё и публиковать расширения (аддоны, темы, обои).

Opera проводит тоже политику модерации разработчиков, но на бесплатной основе. Разработчик должен зарегистрироваться: my.opera.com/community/terms-of-service (англ., гугл-транс-руc.), но в условиях нет ни слова на платность. Гугл, конечно, перешёл границы необходимости бесплатной популяризации и уже может позволить подкручивать гайки, а у Оперы пока не очень велик объём модерации.

Кроме того, Опера имеет встроенную поддержку юзерскриптов и юзерстилей 2 способами — для всех сайтов и посайтово. Способ установки — самый сложный из всех остальных браузеров, но осиливаемый пользователями.

IE… Ну, они вообще ничего не делают в плане поддержки расширений, за них делают другие (в том числе и браузеры). Имеется лишь примитивная возможность установки мультисайтовых (для всех сайтов сразу) юзерстилей по аналогии с похожей функцией Сафари, но существующей с версии IE7.

Оставшиеся возможности для Chrome


Однако, в Chrome предусмотрены, судя по тексту правил, и 2 обходных способа (и снова, не все) установки расширений и юзерскриптов: через прописывание специального тега с кодом разработчика расширения прямо на вебстранице (смешно — если есть доступ к странице и коду, то зачем юзерскрипты) или через установку из локального файла, как описано в 5 пунктах инструкции. Второе удлиняет процесс инсталляции, что правильно с точки зрения развеивания зомбированности пользователя, не осознающего свои действия в окне браузера и считающего их безопасными. Впрочем, и на 5 пунктов можно прозомбировать, но уже сложнее убедить проделать нетипичную цепочку действий в системе по сравнению с работой в окне браузера.

Значит, некоторый прогресс в безопасности есть, права разработчика не ущемлены, из зоны бесплатности он и его браузер не вышли. Надо всего лишь не размещать скрипты в «Магазине» или однократно заплатить Гуглу 5$ за такое право.

Теперь придётся описать длинную инструкцию по установке расширения в браузер Chrome не из его «магазина». Она почти побивает рекорды сложности Оперы, ссылка на инструкцию к которой приведена выше.

Есть ещё третий способ исхитриться (подсказывают из Chromium): при запуске браузера указать параметр --enable-easy-off-store-extension-install — установка расширений останется такой же простой, как прежде. В Windows удобно будет поставить параметр в ярлык, написав в его свойствах (к примеру):
С:\Program Files\Google\Chrome\Application\chrome.exe --enable-easy-off-store-extension-install


+ 4-й способ, указанный SpiritOfVox в комментарии habrahabr.ru/post/150693/#comment_5104872 — доверенные сайты записать в реестр в Windows.
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome\ExtensionInstallSources]
"1"="http://userscripts.org/*"


Инструкция по установке юзерскрипта из userscripts.org


(Похожая инструкция на английском для английской версии браузера.)
Находимся на странице описания скрипта, с которой обычно инсталлируют юзерскрипт.



1. Нажать на кнопку «Install». Видим процесс загрузки в баре файлов внизу страницы.



2. Получить расширение, загруженное в компьютер как файл (бар загрузок внизу) и «отлуп» вверху (ла-ла-ла-"… только из Интернет-магазина").



3. Не верим провокации и действуем по плану "Це": открываем страницу расширений браузера.


(Или по закладке с адресом chrome://chrome/extensions/ .)

4. Если расширение уже установлено в виде прежней версии, удаляем старую версию (обязательно, иначе сохранится старая до перезагрузки браузера).



5. Открыть из нижнего бара папку, содержащую скачанный файл юзерскрипта.



UPD 7.09.2012: @kraleksandr подсказал, что 5-6 можно объединить, потащив значок файла сразу из панели загрузок на список расширений — хорошо, лишнего действия с окном файл-менеджера нет.

(Вот он, выделенный уже в момент просмотра.)



6. Перетащить файл юзерскрипта на список расширений, так, чтобы появилась надпись «Чтобы установить расширение, перетащите его».


(Появление надписи принципиально, потому что если мы перетащим и бросим НЕ на список расширений, а рядом с ним, тоже появится сакраментальная жёлтая надпись вверху — якобы, Хром не разрешает устанавливать расширения не из магазина.)

Обратите внимание, что допустимое ранее бросание юзерскрипта на любую другую открытую страницу тоже приведёт к сакраментальной фразе из пункта 2. Установить скрипт можно, лишь открыв страницу расширений. Если обнаружен такой диалог — это уже неправильный ход установки, вслед за ним будет «пункт 2».
Не делать так:

7. Отпускаем файл, получаем стандартное предупреждение безопасности.



8. После согласия с установкой получаем беспроблемно установленный юзерскрипт, которым можно пользоваться без перезагрузки браузера, лишь с перезагрузкой страницы сайта, для которого он предназначен.





Заключение


Вначале Chrome сразу стал лидером по простоте установки расширений. Бросок на любую страницу, пара кликов подтверждений — готово. Или клик по ссылке и пара подтверждений. Сейчас имеем сложный многоступенчатый процесс, если только ссылка не находится в «магазине». Лидером простоты снова стал Firefox, исторически первый браузер, введший юзерскрипты в их общепризнанном ныне виде.

Процесс забрасывания скрипта в файле в окошко расширений — это типичный способ отладки юзерскриптов, который знаком разработчику. Но он будет нов и сложен (или хотя бы необычен) для пользователя, поэтому пользователи, скорее всего, будут активнее хотеть простой ссылки в «магазине», чем даже скрипта с известного и признанного userscripts.org. С другой стороны, это даст время подумать, стоит ли доверять скрипту, находящемуся не в магазине — ведь магазинные скрипты обещают контролировать, модерировать, что создатели браузера не могли бы обеспечить на любом другом сайте.

Некоторые пользователи будут использовать запуск Хрома с параметром --enable-easy-off-store-extension-install — он позволит забыть о политике и заниматься делом. Скорее всего, это будет удобно для тех, кто слишком часто ставит расширения, чтобы выполнять каждый раз несложную, но многоходовую процедуру установки через сохраняемый файл.

Ссылки:
* List of Chromium Command Line Switches, 2012-09-02
* habrahabr.ru/post/111666 — Создание и публикация расширения [Opera], январь 2011
* Написание расширения для Оперы и Хрома: взгляд на процесс, 28 ноября 2011
* Установка юзерскриптов в Опере в общих случаях и для защищённых страниц (https), 25 марта 2012
* support.apple.com/kb/DL1531 — Safari 5.1.7 for Windows, May 09, 2012
* developer.apple.com/programs/safari — Apple Developer Programs for Safari Extensions
* инструкция по установке юзерскрипта на английском для английской версии браузера

P.S. Подскажите, как пишутся сообщения в английской версии Хрома, чтобы внести их в инструкцию.
spmbt @spmbt
карма
157,5
рейтинг 0,4
Реклама помогает поддерживать и развивать наши сервисы

Подробнее
Реклама

Самое читаемое Разработка

Комментарии (46)

  • –18
    О, копирасты очередной анальный зонд вставили пользователям хрома. Ну, придумали как обойти, так пофиксят в следующем релизе.
    • 0
      Это не копирасты, это маркетологи, имхо.
      • +1
        Разве не безопасность — основная причина данных действий? Причем тут маркетинг?
        • –1
          Основной доход Гугла — онлайн реклама, чем больше пользователь привязывается к сервисам Гугла, тем больше возможности показать ему рекламу.
  • –5
    Пасиб, вчера как-раз мучался устанавливая плагин VLC.
  • +9
    Интернет-аудитория захвачена. Пришла пора разворачивать процесс монетизации использования «бесплатного и самого быстрого браузера».
    • 0
      В своё время IE был «бесплатным и самым быстрым». Финал известен всем :)
      • 0
        Вроде платным он не стал, а у IE10 особых недостатков (отклонений от стандартов) и нет.
        • 0
          У IE остался вечный недостаток — жуткая медлительность в разработке. IE10 начнёт устаревать уже к своему выходу, а к моменту появления IE11 вообще будет неактуальным.
          Ну и хреново обновляется он у пользователей.
  • +1
    А вот не понял до сих пор, где именно проблема. Недавно отлаживал расширение, и как прежде подгружал новую версию через «Load unpacked extension». А для публикации таки заплатил 5 долларов.

    В принципе это абсолютно то же самое, что и в Play для приложений, но в 5 раз дешевле.
  • +16
    Выгода небольшая, но прямая, потому что регистрация автора — платная (однократно 5$)… И даже часть авторов в масштабе всего мира — это довольно много, счёт пойдёт, думается на десятки тысяч; можно ожидать ликующие отчёты маркетологов в служебной переписке компании уже в первый месяц нововведений.

    Извините, но полнейший бред. Оплата аккаунта сделана для того, чтобы отсеять различных создателей вирусов и adware в первую очередь, плюс $5 с разработчика в масштабах Google — очень смешная сумма.
    • +1
      Вы действительно верите, что отсеются создатели вирусов и спама? Отсеются любители, не знающие, как из этого извлечь выгоду. Но я про это написал, если Вы читали дальше, то там написано:
      В общем, для защиты от хакеров, для поиска нарушителей это даже хорошо (похожую схему платных писем предлагала MS для защиты от спаммеров), хотя, наверное, без труда найдутся способы создания фиктивного счёта.
      • +2
        5$ снимаются для того чтобы:
        1. Получить данные о карточке. (Именно так происходит защита, если есть карточка, значит есть куда посылать иски).
        2. Отсеять хлам за который автору жалко заплатить 5$.
        • 0
          Visa virtual несогласна с первым пунктом.
        • 0
          Получить полностью анонимную или на «левого» человека карточку не проблема.
          • +1
            На самом деле, все не проблема. Кроме «защититься от всего».

            Это всего лишь, одна из степеней защиты, не всегда эффективная, но все же работающая.
    • НЛО прилетело и опубликовало эту надпись здесь
    • +5
      Вирусы и adware давно приносят огромные деньги. Так что $5 — это не защита от них вообще.
    • +3
      Скорее, защита от явного мусора.
      • 0
        Как обычно не весь мусор отсеивается и с мусором интересные идеи тоже отсеиваются.
    • –2
      Вирусописатели зарабатывают куда больше несчастных пяти долларов, требуемых за регистрацию. Эта сумма смешная не только в масштабах Google.
      • 0
        Представим ситуацию, вы заплатили 5$ при этом данные оплаты были записаны гуглом. Предположим вы выложили вирус, гугл или еще кто то через день-два (хотя не знаю как там с премодерацией) узнает о вирусе. Дальше блокировка аккаунта и оплаты теми же реквизитами. Думаю будет вноситься в какой нибудь черный список. И много ли людей успеют новым вирусом, за 1-2 дня заработать более 5 баксов? Это еще учитывая модерацию. А если учитывая её, то это надо как то так еще спрятать, чтобы не заметили — т.к. если заметят прощай 5$ и не видать дохода. В случае бесплатной регистрации можно как минимум наклепать 1000 фейковых аккаунтов, а через них заливать тучу вирусов. С платной же регистраницей никто не будет так до автоматизма выкидывать деньги. Все это дело становится просто не выгодным.
        • +1
          Сомневаюсь что оплата будет производиться с личной карточки. За 1-2 дня более 5 баксов это вообще без проблем.
        • 0
          1. Есть анонимные карты (совершенно легальные)
          2. Вирусописатели не зарабатывают через магазин гугла.
          3. Если учитывать такую чудесную модерацию — то и деньги брать незачем.
  • +9
    Комментарии разработчиков Chromium почему были введены такие меры.
  • +3
    А что мешает перетащить скрипт в окно расширений хрома?
    • 0
      А кто говорит, что что-то мешает?
  • 0
    Расширение Tampermonkey тоже больше не помогает с установкой пользовательских скриптов?
    • –1
      Не знаю, не пользуюсь. Если попробуете — напишите, будет тоже полезно.
      • 0
        С ним работает быстро и удобно, рекомендую как альтернативу.
        • 0
          У него минус в том, что список расширений разбивается на два — основной и внутри Tampermonkey. И он имеет какие-то свои правила и ограничения кодов. Например, как будет работать кроссдоменный доступ по PostMessage? Например, с аналогичной оболочкой для Safari NinjaKit я встретился с такими ограничениями.
          • 0
            у меня был простой скрипт для внутреннего пользования в онлайн-игрушке. Надо было придумать лёгкий способ его использовать и Tampermonkey оказался очень удачным решением)
  • +2
    Есть возможность создать список доверенных сайтов в реестре. Например, для userscripts.org:

    Текст .reg файла
    Windows Registry Editor Version 5.00
    
    [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome\ExtensionInstallSources]
    "1"="http://userscripts.org/*"

    Готовый файл
    • 0
      Объясните обычным пользователям как, и, главное, зачем им править реестр.
      • 0
        Открываете ссылку, сохраняете файл с reg расширением, запускаете, на вопросы отвечаете утвердительно.

        Смысл в том, что после этого и перезапуска Chrome ставить с userscripts.org можно будет как с маркета. Параметром командной строки не пользовался, но вероятно эффект такой же. Но вообще это они придумали для компаний с AD, что бы всем забабахивать единый список доверенных сайтов.
        • 0
          У вас ошибка, с самого начала.
          Обычный пользователь сразу же подумает «Ой, ну зачем мне заморачиваться» и плюнет на это дело.
          • 0
            Не для средних умов, согласен. Рецепт элитарный.
          • +1
            У вас ошибка, с самого начала.
            Обычный пользователь сразу же подумает «Ой, что такое юзерскрипт? Зачем мне заморачиваться?» и плюнет на это дело.
  • +1
    HabrAjax? «Доступ к вашим данным на всех веб-сайтах»? Зачем?
    • 0
      Это не тема данного топика. Этот вопрос можно задать автору в топике про расширение.
    • 0
      В самом деле, не знаю, почему Хром считает так. Доступ открыт только на 3 сайта, с которыми он работает. Даже для простых скриптов Хром утверждает такое.
    • 0
      Вообще-то написано «Доступ с Вашими данными», это далеко не одно и то же. То есть с данными, доступными на Хабре (включая имя, пароль и токен доступа) я скриптом могу делать доступ к любым другим сайтам — это возможно, но пользу может принести только для habrastorage.ru. Если бы Хабр имел OAuth, возможности были бы интереснее — вход с его логином на другие сайты. Но доступ к данным на других сайтах в случае с Хабром (кроме habrastorage) невозможен.
      • 0
        Пункт 7, отчетливо видна «к». Может стоит зафайлить баг в хроме?
        • 0
          Да, действительно, минут 10 думал по этому поводу и что-то забыл точную формулировку. Если желаете оформить баг (он общий и старый, как подсказал комментатор ниже), но мне думается, что это тоже политика (тогда сделают вид, что не могут исправить) или в самом деле есть лазейки, или перестраховка Гугла на их случай. Однажды кто-то описывал на Хабре, почему появляются предупреждения, но я тогда так и не разобрался (но и не было задачи докопаться до сути, потому что правила доступа у меня в заголовке ограничивают, а сообщение Гугла противоречит им — что-то не так с правилами или с Гуглом? Правила написаны ещё для Fx и подтверждены Гуглом в его документации.).
    • 0
      Это по умолчанию для всех юзерскриптов, очередная пугалка от гугла (правда уже старая).
  • 0
    Буквально недавно сделал знакомому небольшой плагин для облегчения его рутинной работы.

    Просто скинул через скайп .crx, сказал перейти на chrome://extensions/ и бросить туда файл.

    Никаких проблем — все просто и ненапряжно.

    Кстати, потом и апдейты таким же образом накатывал :)

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.