Add SSO
This commit is contained in:
76
ZITADEL_QUICK_START.md
Normal file
76
ZITADEL_QUICK_START.md
Normal file
@@ -0,0 +1,76 @@
|
||||
# 🚀 Быстрый старт с 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!
|
||||
Reference in New Issue
Block a user