feat: учётки стенда заводятся при старте, пароль совпадает с логином
This commit is contained in:
parent
7f8501696e
commit
a3224cb63a
4 changed files with 10 additions and 11 deletions
|
|
@ -2,10 +2,11 @@
|
|||
|
||||
Без входа система не работает (lct-23), а заводить первого администратора
|
||||
руками в базе — плохой первый шаг для того, кто разворачивает стенд.
|
||||
Скрипт создаёт по одной записи на роль и печатает пароли один раз.
|
||||
Скрипт создаёт по одной записи на роль; compose запускает его при каждом
|
||||
старте backend, существующие записи он не трогает.
|
||||
|
||||
Пароли случайные: зашитый в репозиторий «admin/admin» переживёт сдачу
|
||||
и уедет в реальный класс.
|
||||
Пароль совпадает с логином: стенд учебный, его поднимают на показе и в классе,
|
||||
и учётки должны быть известны заранее, без поиска строки в логе контейнера.
|
||||
|
||||
make users создать недостающие
|
||||
make users force=1 пересоздать пароли существующих
|
||||
|
|
@ -13,7 +14,6 @@
|
|||
|
||||
import asyncio
|
||||
import os
|
||||
import secrets
|
||||
import sys
|
||||
from pathlib import Path
|
||||
|
||||
|
|
@ -45,7 +45,7 @@ async def main() -> int:
|
|||
print(f" {login}: уже есть")
|
||||
continue
|
||||
|
||||
password = secrets.token_urlsafe(9)
|
||||
password = login
|
||||
if user is None:
|
||||
user = User(login=login, full_name=full_name, role=role.value, service=service)
|
||||
db.add(user)
|
||||
|
|
@ -67,10 +67,9 @@ async def main() -> int:
|
|||
print("все учётные записи на месте (пересоздать: make users force=1)")
|
||||
return 0
|
||||
|
||||
print("\nЗаписано. Пароли показываются один раз:\n")
|
||||
print("\nЗаписано, пароль совпадает с логином:\n")
|
||||
for login, password in created:
|
||||
print(f" {login:10} {password}")
|
||||
print("\nСменить пароль можно только пересозданием: экран смены пароля — lct-24.")
|
||||
return 0
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue