Univerzalni licencni server za sve DAL proizvode
Go to file
djuka dc0114e4b7 Inicijalni commit: kompletna implementacija + dokumentacija + testovi
- Kompletna Go implementacija licencnog servera (19 Go fajlova)
- Klijentski API: activate, deactivate, validate
- Admin API: CRUD licence, stats, audit log
- Admin dashboard: htmx + Go templates
- RSA-2048 potpisivanje licencnih podataka
- Rate limiting i API key autentifikacija
- MySQL migracije i seed podaci (ESIR, ARV, LIGHT_TICKET)
- Unit testovi: keygen, crypto, model, middleware (24 testa)
- Dokumentacija: SPEC.md, ARCHITECTURE.md, SETUP.md, API.md, TESTING.md, README.md

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-04 07:42:25 +00:00
.claude Inicijalni commit: kompletna implementacija + dokumentacija + testovi 2026-03-04 07:42:25 +00:00
cmd/server Inicijalni commit: kompletna implementacija + dokumentacija + testovi 2026-03-04 07:42:25 +00:00
crypto Inicijalni commit: kompletna implementacija + dokumentacija + testovi 2026-03-04 07:42:25 +00:00
docs Inicijalni commit: kompletna implementacija + dokumentacija + testovi 2026-03-04 07:42:25 +00:00
internal Inicijalni commit: kompletna implementacija + dokumentacija + testovi 2026-03-04 07:42:25 +00:00
migrations Inicijalni commit: kompletna implementacija + dokumentacija + testovi 2026-03-04 07:42:25 +00:00
static Inicijalni commit: kompletna implementacija + dokumentacija + testovi 2026-03-04 07:42:25 +00:00
templates Inicijalni commit: kompletna implementacija + dokumentacija + testovi 2026-03-04 07:42:25 +00:00
.env.example Inicijalni commit: kompletna implementacija + dokumentacija + testovi 2026-03-04 07:42:25 +00:00
.gitignore Inicijalni commit: kompletna implementacija + dokumentacija + testovi 2026-03-04 07:42:25 +00:00
API.md Inicijalni commit: kompletna implementacija + dokumentacija + testovi 2026-03-04 07:42:25 +00:00
CLAUDE.md Inicijalni commit: kompletna implementacija + dokumentacija + testovi 2026-03-04 07:42:25 +00:00
go.mod Inicijalni commit: kompletna implementacija + dokumentacija + testovi 2026-03-04 07:42:25 +00:00
go.sum Inicijalni commit: kompletna implementacija + dokumentacija + testovi 2026-03-04 07:42:25 +00:00
README.md Inicijalni commit: kompletna implementacija + dokumentacija + testovi 2026-03-04 07:42:25 +00:00
TESTING.md Inicijalni commit: kompletna implementacija + dokumentacija + testovi 2026-03-04 07:42:25 +00:00

DAL License Server

Univerzalni licencni server za sve DAL proizvode (ESIR, ARV, Light-Ticket).

Funkcionalnosti

  • Kreiranje i upravljanje licencama za N proizvoda
  • RSA-2048 potpisivanje licencnih podataka
  • Aktivacija/deaktivacija licenci sa machine fingerprint-om
  • Admin dashboard (htmx) za upravljanje
  • REST API za klijentske aplikacije i admin operacije
  • Audit log svih akcija
  • Rate limiting na klijentskim endpointima

Tech stack

  • Backend: Go 1.22+ (net/http, bez framework-a)
  • Baza: MySQL 8.0
  • Admin UI: htmx + Go html/template
  • Kripto: RSA-2048 (potpis), AES-256-GCM (enkripcija na klijentima)

Brzi start

# 1. Kopiraj konfiguraciju
cp .env.example .env
# Uredi .env sa pravim vrednostima

# 2. Kreiraj MySQL bazu
mysql -u root -e "CREATE DATABASE dal_license_db CHARACTER SET utf8mb4;"
mysql -u root -e "CREATE USER 'license'@'localhost' IDENTIFIED BY 'TVOJA_LOZINKA';"
mysql -u root -e "GRANT ALL ON dal_license_db.* TO 'license'@'localhost';"

# 3. Generiši RSA ključeve (ako ne postoje)
openssl genrsa -out crypto/private.pem 2048
openssl rsa -in crypto/private.pem -pubout -out crypto/public.pem
chmod 600 crypto/private.pem

# 4. Pokreni server
go run cmd/server/main.go
# Server dostupan na http://localhost:8090

Dokumentacija

Port

Server radi na portu 8090 (konfigurisano u .env).


DAL d.o.o. | Mart 2026