77 lines
2.8 KiB
Markdown
77 lines
2.8 KiB
Markdown
# 🚀 Быстрый старт с ZITADEL
|
||
|
||
## Что нужно сделать
|
||
|
||
### 1️⃣ Создать приложение в ZITADEL
|
||
|
||
1. Зайдите на [zitadel.cloud](https://zitadel.cloud) или используйте свой инстанс
|
||
2. Создайте новый проект или выберите существующий
|
||
3. Нажмите **"New Application"**
|
||
4. Выберите **"Web Application"**
|
||
5. Выберите **"Code (with PKCE)"**
|
||
6. Добавьте Redirect URI: `http://localhost:8000/api/auth/oidc/zitadel/callback`
|
||
7. Сохраните **Client ID** и **Client Secret**
|
||
|
||
### 2️⃣ Настроить .env файл
|
||
|
||
Откройте `backend/.env` и добавьте:
|
||
|
||
```bash
|
||
# ZITADEL Configuration
|
||
ZITADEL_ISSUER=https://your-instance.zitadel.cloud
|
||
ZITADEL_CLIENT_ID=123456789012345678@your-project
|
||
ZITADEL_CLIENT_SECRET=your-secret-key-here
|
||
|
||
# URLs
|
||
BASE_URL=http://localhost:8000
|
||
FRONTEND_URL=http://localhost:3000
|
||
```
|
||
|
||
### 3️⃣ Запустить приложение
|
||
|
||
```bash
|
||
# Backend
|
||
cd backend
|
||
python main.py
|
||
|
||
# Frontend (в другом терминале)
|
||
cd frontend
|
||
npm run dev
|
||
```
|
||
|
||
### 4️⃣ Проверить
|
||
|
||
1. Откройте http://localhost:3000
|
||
2. Увидите кнопку **"Войти через ZITADEL"** 🔐
|
||
3. Нажмите и войдите через ZITADEL
|
||
4. Готово! ✅
|
||
|
||
## Что происходит?
|
||
|
||
1. **Пользователь нажимает кнопку** → Перенаправление на ZITADEL
|
||
2. **Вход в ZITADEL** → Пользователь вводит логин/пароль
|
||
3. **Callback** → ZITADEL возвращает код авторизации
|
||
4. **Обмен кода на токен** → Backend получает данные пользователя
|
||
5. **Создание пользователя** → Автоматическое создание в системе
|
||
6. **JWT токен** → Пользователь получает токен для доступа
|
||
7. **Автоматический вход** → Перенаправление в панель
|
||
|
||
## Проблемы?
|
||
|
||
### Кнопка ZITADEL не появляется
|
||
- Проверьте `.env` файл
|
||
- Убедитесь что `ZITADEL_CLIENT_ID` и `ZITADEL_ISSUER` заполнены
|
||
- Перезапустите backend
|
||
|
||
### Ошибка "Invalid redirect_uri"
|
||
- Проверьте Redirect URI в настройках ZITADEL
|
||
- Должен быть: `http://localhost:8000/api/auth/oidc/zitadel/callback`
|
||
|
||
### Ошибка "Invalid client"
|
||
- Проверьте `ZITADEL_CLIENT_ID` и `ZITADEL_CLIENT_SECRET`
|
||
- Убедитесь что приложение активно в ZITADEL
|
||
|
||
## Готово! 🎉
|
||
|
||
Теперь пользователи могут входить через ZITADEL!
|