Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unbounded сессии #193

Closed
6 tasks
viribus-issue-bot opened this issue Jul 23, 2024 · 0 comments · Fixed by #205
Closed
6 tasks

Unbounded сессии #193

viribus-issue-bot opened this issue Jul 23, 2024 · 0 comments · Fixed by #205
Assignees
Labels
good first issue 👶 Задача подходит для новичков new feature 🆕 Новая фича или запрос на нее

Comments

@viribus-issue-bot
Copy link

viribus-issue-bot commented Jul 23, 2024

Issue open by Roman Dyakov via telegram message.

Сессии Auth API, которые не привязаны к определенному при создании набору скоупов. При добавлении пользователю прав, у пользовательской сессии права тоже расширяются.

Технически, у этой сессии нет session scopes, то есть для нее не создаются новые записи в таблице session_scope_link. Вместо этого во всех проверках используются user_scope

  • Добавить в таблицу session в базе данных новый параметр unbounded BOOLEAN
  • Сгенерировать миграцию. Для всех сессий, которые сейчас действительные, поместить значение True, иначе False
  • В ручки login поместить новый параметр unbounded с значениями true/false/null
  • Исправить ручку get_me: возвращать список user_scope в списке session_scope, если сессия unbounded.
  • Исправить ручку get_me: увеличивать срок жизни токена только в том случае, если токен unbounded
  • Исправить security guard внутри Auth API: проверять не session_scopes, а user_scopes, если сессия unbounded
@github-project-automation github-project-automation bot moved this to Backlog in Viribus Team Jul 23, 2024
@dyakovri dyakovri added new feature 🆕 Новая фича или запрос на нее good first issue 👶 Задача подходит для новичков labels Jul 23, 2024
@dyakovri dyakovri moved this from Backlog to Todo in Viribus Team Jul 29, 2024
@DaymasS DaymasS linked a pull request Sep 12, 2024 that will close this issue
3 tasks
Temmmmmo pushed a commit that referenced this issue Dec 7, 2024
## Изменения
Были добавлены unbounded (далее неограниченные) сессии. Неограниченные
сессии позволяют пользователю не обновлять токен сессии для обновления
списка его скоупов (прав). Список скоупов у таких сессий не привязан к
сессии, а подтягивается из групп, к которым относится пользователь.

## Детали реализации
Все активные до обновления сессии станут неограниченными.

Для создания неограниченной сессии необходимо при создании сессии
указать поле is_unbounded: true

Для создания ограниченной сессии это поле можно не указывать
(Стандартное значение поля is_unbounded - false)

При авторизации через login/register генерируемая сессия будет
неограниченной

<!-- resolves #193 -->


## Check-List
<!-- После сохранения у следующих полей появятся галочки, которые нужно
проставить мышкой -->
- [ ] Вы проверили свой код перед отправкой запроса?
- [ ] Вы написали тесты к реализованным функциям?
- [ ] Вы не забыли применить форматирование `black` и `isort` для
_Back-End_ или `Prettier` для _Front-End_?
@github-project-automation github-project-automation bot moved this from In Progress to Done in Viribus Team Dec 7, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
good first issue 👶 Задача подходит для новичков new feature 🆕 Новая фича или запрос на нее
Projects
Archived in project
Development

Successfully merging a pull request may close this issue.

3 participants