diff --git a/pom.xml b/pom.xml
index 8136386..075b2eb 100644
--- a/pom.xml
+++ b/pom.xml
@@ -90,6 +90,24 @@
org.springframework.boot
spring-boot-starter-validation
+
+ io.jsonwebtoken
+ jjwt-api
+ 0.11.5
+
+
+ io.jsonwebtoken
+ jjwt-impl
+ 0.11.5
+ runtime
+
+
+ io.jsonwebtoken
+ jjwt-jackson
+ 0.11.5
+ runtime
+
+
diff --git a/src/main/java/com/crov/controllers/AuthController.java b/src/main/java/com/crov/controllers/AuthController.java
new file mode 100644
index 0000000..1f1f956
--- /dev/null
+++ b/src/main/java/com/crov/controllers/AuthController.java
@@ -0,0 +1,23 @@
+package com.crov.controllers;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.ResponseEntity;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+
+import com.crov.services.AuthService;
+
+@RestController
+@RequestMapping("/api/auth")
+public class AuthController {
+
+ @Autowired
+ private AuthService authService;
+
+ @PostMapping("/token")
+ public ResponseEntity login(@RequestParam String username, @RequestParam String password) {
+ return ResponseEntity.ok(authService.login(username, password));
+ }
+}
diff --git a/src/main/java/com/crov/controllers/SeguridadLicenciasController.java b/src/main/java/com/crov/controllers/SeguridadLicenciasController.java
new file mode 100644
index 0000000..792f05f
--- /dev/null
+++ b/src/main/java/com/crov/controllers/SeguridadLicenciasController.java
@@ -0,0 +1,199 @@
+package com.crov.controllers;
+
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.UUID;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.ResponseEntity;
+import org.springframework.web.bind.annotation.CrossOrigin;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import com.crov.crovWSTotal.EncriptadorAES;
+import com.crov.crovWSTotal.Utilerias;
+import com.crov.models.ActivationKey;
+import com.crov.models.ActivationKey.ActiveKey;
+import com.crov.models.ActivationKey.TipoKey;
+import com.crov.models.PersonSoftware;
+import com.crov.models.PersonSoftware.ActivePerson;
+import com.crov.models.PersonSoftware.BlackListPerson;
+import com.crov.models.Software;
+import com.crov.models.Software.ActiveSofware;
+import com.crov.requests.PersonSoftwareRequest;
+import com.crov.services.ActivationKeyService;
+import com.crov.services.PersonSoftwareService;
+import com.crov.services.SoftwareService;
+
+@RestController
+@CrossOrigin(origins = "http://localhost:5173")
+@RequestMapping("/api/seguridadLicencias")
+public class SeguridadLicenciasController {
+
+ private static final String LICENCIA_DEMO = "0db513ee-7757-11ed-a1eb-0242ac120002";
+
+ @Autowired
+ ActivationKeyService actKeyServ;
+
+ @Autowired
+ SoftwareService softwareServ;
+
+ @Autowired
+ PersonSoftwareService personServ;
+
+ @PostMapping("/registroLicencia")
+ public ResponseEntity