Skip to content

Conversation

@Umiacha
Copy link
Contributor

@Umiacha Umiacha commented Nov 20, 2025

Изменения

Несколько переправил существующий класс TelegramAuth для использования авторизации с виджетом.
Данная авторизация предполагает использование виджета, рекомендованного ТГ. Причем в генерации виджета выбираем настройку "Authorization type -> Redirect to URL" и явно ее прописываем в нем (или можно дергать метод TelegramAuth._redirect_url()).

Детали реализации

  • Для работы авторизации нужно в .env-файл добавить токен ТГ бота, через которого будет проходить авторизация (название переменной -- TELEGRAM_BOT_TOKEN).
  • Бота (токен которого используется) нужно привязать через BotFather к домену сайта, на котором будет располагаться виджет (команда /setdomain в диалоге с BotFather в Телеграме).

Check-List

  • Вы проверили свой код перед отправкой запроса?
  • Вы написали тесты к реализованным функциям?
  • Вы не забыли применить форматирование black и isort для Back-End или Prettier для Front-End?

@Umiacha Umiacha requested a review from Zimovchik November 20, 2025 17:37
@Umiacha Umiacha self-assigned this Nov 20, 2025
@github-actions
Copy link

💩 Code linting failed, use black and isort to fix it.

@github-actions
Copy link

github-actions bot commented Nov 22, 2025

Code Coverage

Coverage Report
FileStmtsMissCoverMissing
auth_backend
   __main__.py330%1–5
   base.py12467%6–9
   exceptions.py45687%32, 50–52, 57, 78
auth_backend/auth_method
   base.py63494%52, 54, 61, 143
   method_mixins.py32294%27, 50
   oauth.py561770%38, 44, 49–54, 58–69, 95–100
   outer.py1142975%27, 34, 41, 48, 99, 105, 114, 168–173, 186–194, 206–212
   userdata_mixin.py19574%32, 37–40
auth_backend/auth_plugins
   airflow.py331652%26–37, 42–65
   authentic.py19010346%53–65, 70–83, 87–102, 106–112, 116–122, 129–131, 141–197, 204–254, 259, 264–265, 275–282, 311–317, 326, 331–341, 346–359
   coder.py321650%25–34, 39–52
   email.py2551495%91, 248, 333, 335, 340, 351–357, 404, 445, 496, 506
   github.py1046339%57–116, 130–174, 184, 189, 195–207
   google.py1126443%65–124, 138–166, 176, 182–186, 190–195, 199–208
   keycloak.py1046240%53–115, 125–175, 185, 190, 196–201
   lkmsu.py16411232%60–113, 131–169, 179–201, 206, 211, 217–227, 231–245, 249–278, 282–291
   mailu.py341847%25–34, 39–54
   postgres.py432053%29–35, 40–46, 51–63
   telegram.py1035448%58–85, 100–118, 131, 139, 147–167, 172–186
   vk.py1288236%71–123, 137–175, 185, 190, 196–213, 220–246
   yandex.py1278335%58–128, 141–179, 190, 196, 202–228
auth_backend/cli
   group.py13130%1–17
   process.py56560%1–72
   scope.py11110%1–20
   user.py20200%1–40
   user_group.py12120%1–25
auth_backend/kafka
   kafka.py502060%30–33, 42–44, 56–59, 72–82, 85, 93, 103
   kafkameta.py9278%8, 12
auth_backend/models
   base.py83594%79, 100–102, 106
   db.py146597%53, 57, 215, 219, 232
   dynamic_settings.py27774%24–31
auth_backend/routes
   base.py28293%21–22
   exc_handlers.py43686%31, 56, 69, 95, 117, 125
   groups.py84396%85, 135, 137
   oidc.py34197%94
   scopes.py36392%24, 53–54
   user.py952772%53, 55, 57–66, 72–78, 90–110, 161, 171
   user_session.py84693%80–89, 119, 121, 182, 189
auth_backend/schemas
   models.py100397%150–152
auth_backend/schemas/types
   scopes.py24675%30–32, 37, 40, 42
auth_backend/utils
   jwt.py57788%35–42
   oidc_token.py37878%26, 39–43, 48, 74
   security.py46296%41, 66
   smtp.py771877%76–79, 101–120
   string.py7186%12
   user_session_control.py41295%33, 41
TOTAL3117102367% 

Summary

Tests Skipped Failures Errors Time
72 6 💤 0 ❌ 0 🔥 12.928s ⏱️

@Zimovchik Zimovchik merged commit 9fc6f94 into main Nov 27, 2025
2 checks passed
@Zimovchik Zimovchik deleted the iss229/new-oauth-tg branch November 27, 2025 18:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Добавить Телеграм как метод оаухт в Твой ФФ

3 participants