Перейти к содержимому

Решения

Клиентские сайты на поддержке

У вас на руках входы в кабинеты двух-трёх десятков магазинов, которые принадлежат другим людям. Эта страница про то, как развести эти сессии: кабинет на профиль, вход и его второй шаг рядом, свой адрес выхода на каждого заказчика и доступ, который отдают и забирают обратно.
120 в день
Потолок кабинетных действий в торговле
2
Смен входа в кабинет за день
Логин, пароль, страница, заметка
Лежит на самом профиле
На этой машине, без сети
Где считается второй шаг
На одной машине разом
Профиль открывается

Двадцать кабинетов в одном браузере

Украденной кабинетной куке не нужен пароль, чтобы добраться до настроек оплаты. Двадцать кабинетов заказчиков это двадцать входов, и один браузер со всеми ними означает, что одна кража достаёт до всех.

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

Свой профиль каждому сайту заказчика

Профиль это отдельный браузер. У него своя папка, и туда ложится всё, что движок сохраняет: куки, хранилище, сохранённые входы и история.

Между двумя такими папками ничего не переходит, потому что движок про соседнюю не знает. Отсюда скучное правило: один заказчик, один профиль, даже когда два сайта стоят на одном хостинге.

Что разводитсяВ своём профилеВ общем браузере
Кабинетная кукаСессия одного магазинаОдна кража достаёт все кабинеты
Сохранённый входРядом с профилем, который им пользуетсяТаблица, которую уже открывали трое
Ключ второго шагаВ профиле, который входитТелефон с полусотней одинаковых строк
Адрес выходаСвоя страна на заказчикаНовая страна в журнале расширения каждое утро

Вход и его второй шаг

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

Пароль закрывает сама система, тем же средством, которым держит ваши остальные пароли, и своего ключа у программы нет. На наш сервер он не уходит.

  • Логин и пароль

    На профиле, и на встроенном движке одно нажатие ставит их в открытую форму.

  • Страница входа

    Адрес того самого кабинета, сохранённый заметкой, а не ярлыком, который его открывает.

  • Второй шаг

    Ключ выдаёт шесть цифр на этой машине, без обращения в сеть и без телефона.

  • Таблица, которая у вас уже есть

    Ввоз из таблицы узнаёт столбец ключей по имени, по-русски и по-английски.

Одна страна каждый понедельник

Сторожевые расширения следят, откуда входит управляющий, и адрес, которого сайт ещё не видел, приводит к лишней проверке или к запрету входа.

Профиль, закреплённый за одним адресом выхода, делает эти сессии похожими на одного человека за одним столом, чем они и являются. Часы и языки идут за страной выхода для тех стран, что есть в списке самой программы.

Адрес вы приносите свой

Прокси мы не продаём. Витрина внутри программы это справочник поставщиков, а заказ там это записанная просьба.

Темп работы в чужом кабинете

Правка товаров через кабинет со скоростью машины читается как захваченный вход, а не как занятый вебмастер. Расширение не спрашивает, кто вы, прежде чем запереть кабинет на час.

Счёт ведётся на профиль в день, предупреждает до конца и называет счётчик на экране. Остановить вас он не может.

ДействиеВ деньПредупреждение
Новые товары1060%
Правки товаров4075%
Письма покупателям3075%
Смены входа в кабинет250%

Передача сайта коллеге

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

Забрать обратно это снять одну галочку: профиль уходит из его программы при следующей сверке. Доступ по папкам сужает подрядчика до тех заказчиков, с которыми он работает.

  • Одно окно на профиль

    Запуск занимает профиль на три минуты и продлевает каждую минуту, поэтому вдвоём в один кабинет не войти.

  • Отказ называет держателя

    Второй машине говорят, какая машина держит профиль и с какого времени.

  • Журнал переживает уход

    Каждая строка несёт то рабочее пространство, где всё случилось, поэтому уход человека не опустошает историю.

Ваш собственный присмотр тоже перекрыт

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

Выключателя у профиля для этого нет, поэтому средство записи, за которое платит заказчик, сеанса внутри профиля не увидит. Чтобы убедиться, что ошибка долетела до сборщика, открывайте ту страницу в обычном браузере.

  • Отчёты о падениях

    sentry.io и bugsnag.com

  • Скорость

    newrelic.com

  • Запись сеансов

    logrocket.com, hotjar.com, fullstory.com и mouseflow.com

Чего это не делает

  • Общий список трекеров работает в каждом сценарии, и выключателя у профиля для него нет. Сборщики ошибок и записи сеансов на собственном сайте заказчика закрыты вместе со счётчиками, поэтому профилем не подтвердить, что ошибка долетела до сборщика.
  • Это не менеджер паролей: одна пара на профиль, ни хранилища, ни поиска по аккаунтам, ни места для запасных кодов. Ключ второго шага лежит в файле профиля текстом, от других пользователей машины его держат права файла, а на Windows только ваша пользовательская папка.
  • Отзыв доступа убирает профиль из программы коллеги и оставляет куки, уже записанные на его диск. Единого корпоративного входа нет, а роль действует на всё рабочее пространство, а не на одну папку.
  • Сайт это не чинит. Устаревший магазин, решение платёжного посредника о торговом счёте, пределы вашего хостинга на кабинет и кабинетные сессии, которые уже делят один браузер, остаются как были.

Как проверить

За каждым утверждением выше стоит файл, а там, где это можно измерить, ещё и стенд, который краснеет, как только утверждение перестаёт быть правдой.

Каждый профиль это браузер со своим разделом сессии
apps/desktop/src/lib/profiles.js (partitionFor) · apps/desktop/test/profile-clone.js
Пара входа закрыта на диске и остаётся здесь
apps/desktop/src/lib/profiles.js · apps/desktop/test/login-stays-local.js
Коды сходятся с опубликованными образцами и сети не требуют
apps/desktop/src/lib/totp.js · apps/desktop/test/totp.js
Одно окно на профиль, с названным держателем и истекающим замком
apps/server/src/profiles/profiles.service.ts · apps/server/test/profile-lock.js
Потолки и пороги предупреждения для работы в кабинете
packages/shared/src/index.js (SCENARIOS.shopping) · apps/desktop/test/entitlement-quota.js
Общий список грузится в каждом сценарии и на обоих движках
apps/desktop/assets/trackers_general.json · apps/desktop/test/слежка-по-хостам.js

Вопросы

Аккаунта площадки тут нет, зачем тогда профиль?
Затем, что кабинетный вход и есть аккаунт. Именно его угоняют и именно за ним читает сторожевое расширение.
Можно посадить трёх мелких заказчиков в один профиль?
Можно, и не надо. Потерянная сессия тогда стоит одного заказчика, а не трёх, ради чего профиль и заводится.
Коллега получает куки, когда я делюсь сайтом?
Нет. Общий доступ везёт профиль и его настройки, а сессия остаётся в папке профиля на той машине, которая его открывала.
А если мы вдвоём откроем один кабинет разом?
Второй машине отказывают по имени, называя держателя и время, когда замок взят. Сам замок отпускает через три минуты после того, как машина перестала его продлевать.

Откройте профиль одному сайту заказчика

Бесплатный тариф даёт два профиля, без срока и без карты. Начните с того кабинета, который открываете чаще всего.