Skip to content
Инфраструктурный API

Потребители

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

Потребители — это конечные пользователи вашего продукта. Это намеренно отдельная от сотрудников проекта система идентификации: потребитель — это потребительский аккаунт, который существует только внутри вашего проекта, общается только с плоскостью /consumer/v1 и никогда не может обладать учётными данными для управления проектом. Разделение структурное — у двух плоскостей разная аутентификация, разные токены и разные области данных.

Плоскость потребителя

Всё, что делает конечный пользователь, проходит через /consumer/v1/*:

ОбластьЭндпоинты
ИдентификацияGET /consumer/v1/me, привязанные идентичности для входа под /consumer/v1/me/identities
АккаунтGET /consumer/v1/account, использование по /consumer/v1/account/usage, сценарии экспорта и удаления
Аутентификация устройствсемейство /consumer/v1/auth/device/* — запрос/проверка (challenge/verify), токены сопряжения, регистрация, обновление и отзыв сессий
Устройствасемейство /consumer/v1/devices
Сетичастные mesh-сети (vspace) под /consumer/v1/vspaces
Биллингсобственный тариф, подписка и счета потребителя под /consumer/v1/billing/*
АудитGET /consumer/v1/audit-log — собственный след потребителя

Как устройство входит в систему

Семейство аутентификации устройств реализует поток на основе запроса-подтверждения (challenge):

  1. устройство запрашивает challenge (POST /consumer/v1/auth/device/challenge) и доказывает владение своим ключом (…/challenge/verify);
  2. уже авторизованная поверхность может выдать устройству одноразовый токен сопряжения (POST /consumer/v1/auth/device/pair-token), чтобы привязать его к аккаунту;
  3. устройство регистрируется (POST /consumer/v1/auth/device/register) и держит сессию, которую можно обновлять (…/sessions/refresh), — а аккаунт может отозвать любую сессию или все сразу.

После этого GET /consumer/v1/bootstrap выдаёт устройству его профиль конфигурации — тот самый документ, который быстрый старт для Apple передаёт в SDK.

Гарантии изоляции

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

Справочник

Каждая операция выше описана в сгенерированном справочнике API в разделе плоскости потребителя.