Files
python-oauth2-proxy-k8s/backend-dotnet
2025-10-02 16:59:42 +05:00
..
2025-10-02 15:19:15 +05:00
2025-10-02 15:19:15 +05:00
2025-10-02 15:19:15 +05:00
2025-10-02 16:59:42 +05:00
2025-10-02 15:19:15 +05:00
2025-10-02 15:19:15 +05:00
2025-10-02 15:19:15 +05:00
2025-10-02 15:19:15 +05:00
2025-10-02 16:59:42 +05:00
2025-10-02 15:19:15 +05:00

.NET 8 Backend

Функционально эквивалентный бэкенд на .NET 8 для Dex Demo.

Запуск

Локально

dotnet run

Docker

docker build -t dex-demo-backend-dotnet:latest .
docker run -p 8000:8000 \
  -e DB_HOST=postgres \
  -e DB_PORT=5440 \
  -e DEX_ISSUER=https://dex.127.0.0.1.sslip.io/ \
  dex-demo-backend-dotnet:latest

Особенности реализации

  • Minimal APIs: современный подход ASP.NET Core без лишнего бойлерплейта
  • Records: для моделей данных (immutable, concise)
  • Dapper: микро-ORM для чистой и производительной работы с БД
  • Dommel: расширение Dapper для CRUD операций
  • OpenIdConnect: стандартный механизм получения JWKS
  • Npgsql: официальный PostgreSQL provider для .NET
  • Async/await: полностью асинхронный код
  • Top-level statements: без Program/Main класса

API

  • GET /api/health - проверка здоровья
  • GET /api/user-info - информация о пользователе (требует авторизацию)

Переменные окружения

Все переменные идентичны Python версии:

  • DB_HOST, DB_PORT, DB_NAME, DB_USER, DB_PASSWORD
  • DEX_ISSUER
  • INSECURE_DEV_MODE, INSECURE_DEV_EMAIL