Короткий ответ
| Формат | Кто создаёт | Для чего нужен | Главный риск |
|---|---|---|---|
tdata | Telegram Desktop | Локальная работа официального настольного клиента | Копия данных может дать доступ к активной авторизации |
*.session | MTProto-библиотека, например Telethon | Повторное подключение программы без нового кода входа | Файл содержит ключ авторизации и может открыть доступ к аккаунту |
JSON рядом с session | Конкретный сторонний инструмент | Его собственные настройки и метаданные | Стандартной схемы нет; внутри могут оказаться телефон, прокси и секреты |
Любую Telegram-сессию нужно защищать как пароль. Не отправляйте её в чат, тикет, облачную папку с общей ссылкой и не добавляйте в Git.
Что такое сессия
После входа Telegram запоминает авторизованное устройство или приложение. Благодаря этому код подтверждения не требуется при каждом запуске.
Сессия привязана не только к номеру телефона. Она включает данные, необходимые клиенту для продолжения авторизованного соединения. Формат хранения зависит от программы: Telegram Desktop использует собственный каталог, а Telethon по умолчанию создаёт SQLite-файл.
Список подключённых устройств пользователь контролирует в Telegram: Настройки → Устройства или Конфиденциальность → Активные сеансы.
tdata: данные Telegram Desktop
tdata — каталог локальных данных Telegram Desktop. Его внутреннее устройство является реализацией конкретного клиента и может меняться между версиями.
Практические правила:
- устанавливайте Telegram Desktop из официального источника;
- не скачивайте чужие папки
tdataи «готовые аккаунты»; - не переносите рабочую авторизацию через мессенджеры и публичные файловые хранилища;
- защищайте профиль операционной системы и блокируйте приложение паролем;
- для нового рабочего устройства выполняйте обычный вход и проверяйте его в списке активных сеансов.
Копирование каталога между компьютерами не является надёжным способом миграции. Оно может не сработать из-за версии клиента, защиты локальных данных или особенностей окружения — и создаёт лишнюю копию действующей авторизации.
session: авторизация программы
В Telethon имя или путь, переданный клиенту, обычно соответствует SQLite-файлу *.session. Документация библиотеки прямо указывает: файл хранит адрес дата-центра, ключ авторизации и служебное состояние. По умолчанию там также могут кэшироваться сведения о встреченных пользователях и чатах.
Безопасный принцип прост: одна управляемая интеграция — одна отдельно созданная сессия с понятным владельцем и назначением.
from pathlib import Path
session_path = Path.home() / ".local" / "share" / "my-app" / "telegram"
session_path.mkdir(parents=True, exist_ok=True, mode=0o700)
Этот пример создаёт закрытый каталог, но не выполняет вход и не содержит учётных данных. Авторизацию проводите интерактивно в доверенном окружении согласно документации выбранной библиотеки.
JSON — не единый формат Telegram
Связка session + JSON — соглашение конкретного приложения, а не официальный переносимый формат Telegram или Telethon. Названия и смысл полей различаются между инструментами.
В JSON могут находиться:
- номер телефона и идентификатор владельца;
- путь к session-файлу;
- параметры приложения;
- адрес и учётные данные прокси;
- служебные метки стороннего сервиса;
- пароль двухэтапной аутентификации — его хранить там нельзя.
Не пытайтесь «исправить пару» или подставить идентификаторы официальных клиентов. Для собственной MTProto-интеграции создайте приложение в my.telegram.org и используйте выданные именно вам api_id и api_hash в соответствии с условиями Telegram.
Что нельзя публиковать
Проверьте репозиторий, логи, архивы и тикеты на следующие данные:
*.session
*.session-journal
tdata/
*string_session*
telegram*.json
Названия JSON-файлов зависят от проекта, поэтому одного шаблона недостаточно. Добавьте конкретные пути в .gitignore, а секреты храните в предназначенном для этого хранилище.
# Локальная авторизация Telegram
.secrets/telegram/
runtime/telegram-sessions/
*.session
*.session-journal
gitignore защищает только от случайного нового коммита. Если файл уже попал в историю, его нужно считать скомпрометированным и отозвать сессию.
Подключение своей интеграции
- Определите законную цель и владельца аккаунта.
- Выберите официальный Bot API, если сценарий не требует действий от имени пользователя.
- Если необходим MTProto, зарегистрируйте собственное приложение в
my.telegram.org. - Создайте отдельную сессию в контролируемом окружении.
- Ограничьте доступ к файлу процессом интеграции и ответственными администраторами.
- Запишите назначение, владельца, дату создания и процедуру отзыва.
- Проверьте лимиты и правила Telegram до запуска автоматизации.
Telegram предупреждает, что спам, накрутки и злоупотребление API могут привести к постоянной блокировке. Техническая возможность отправить действие не означает, что оно разрешено правилами платформы или законом.
Как передавать работу между сотрудниками
Не отправляйте session-файл следующему оператору. Передавайте роль и документацию, а доступ оформляйте через управляемый контур:
| Нужно передать | Безопасный способ |
|---|---|
| Работа в официальном клиенте | Добавить новое устройство владельца и проверить активные сеансы |
| Управление каналом или группой | Назначить сотруднику отдельную роль средствами Telegram |
| Работа интеграции | Передать сервис, права и runbook без выгрузки session-файла |
| Доступ к HereCRM | Создать отдельного пользователя с необходимой ролью |
Так можно отозвать доступ одного сотрудника без смены общего аккаунта и без распространения копий авторизации.
Если сессия утекла
Действуйте как при утечке пароля:
- Откройте официальный клиент Telegram на доверенном устройстве.
- Завершите подозрительный сеанс или все остальные сеансы.
- Включите либо смените пароль двухэтапной аутентификации.
- Проверьте защищённость привязанной почты.
- Удалите файл из публичного доступа, логов и артефактов сборки.
- Выпустите новую сессию для интеграции и обновите секрет в контролируемом хранилище.
- Проверьте сообщения, изменения профиля, администраторов каналов и другие действия за период риска.
Простое удаление файла на одном компьютере не завершает уже скопированную авторизацию — её нужно отозвать через Telegram.
Контрольный список
- Используется собственный аккаунт и собственное приложение API.
- Сессия создана для конкретной интеграции, а не скопирована из неизвестного источника.
- Файлы исключены из Git, резервных копий общего доступа и диагностических логов.
- В JSON нет 2FA, прокси-пароля и ключей в открытом виде.
- Доступ ограничен ответственными администраторами.
- Владелец знает, где посмотреть и как отозвать активные сеансы.
- Автоматизация соответствует правилам Telegram и применимому законодательству.
Источники
- Telegram FAQ: безопасность аккаунта
- Telegram: создание собственного API-приложения
- Telethon: устройство и защита session-файлов
Материал описывает безопасную эксплуатацию собственных аккаунтов и не является инструкцией по покупке, передаче, массовой регистрации или обходу ограничений Telegram.