Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
T
trismegisto-services
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Mauro Paolo Josue Zuñiga Mallqui
trismegisto-services
Commits
1d09c733
Commit
1d09c733
authored
Nov 09, 2024
by
Mauro Paolo Josue Zuñiga Mallqui
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[ADD] AVANCE
parent
4c3d7a2a
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
21 additions
and
12 deletions
+21
-12
JWTokenApi.java
...ava/web/multitask/trismegistoservices/api/JWTokenApi.java
+17
-8
TokenSingleton.java
...ltitask/trismegistoservices/singleton/TokenSingleton.java
+0
-2
JWTokenUtil.java
.../web/multitask/trismegistoservices/utils/JWTokenUtil.java
+4
-2
No files found.
src/main/java/web/multitask/trismegistoservices/api/JWTokenApi.java
View file @
1d09c733
...
...
@@ -144,7 +144,7 @@ class JWTokenApi {
if
(
json
.
has
(
"ms"
))
{
json
.
remove
(
"ms"
);
}
String
tokenized
=
jwtTokenUtil
.
tokenizeData
(
data
,
ms
,
onelife
);
String
tokenized
=
jwtTokenUtil
.
tokenizeData
(
json
.
toString
()
,
ms
,
onelife
);
if
(
onelife
)
{
tokenSingleton
.
addToken
(
tokenized
);
}
...
...
@@ -155,16 +155,25 @@ class JWTokenApi {
}
@PostMapping
(
"/detokenize"
)
public
ResponseEntity
<?>
detokenize
(
@RequestBody
String
token
)
{
JSONObject
json
=
new
JSONObject
(
token
);
public
ResponseEntity
<?>
detokenize
(
@RequestBody
String
tokenBody
)
{
JSONObject
json
=
new
JSONObject
(
tokenBody
);
String
token
=
json
.
getString
(
"token"
);
boolean
doConsume
=
json
.
optBoolean
(
"consume"
,
false
);
try
{
if
(!
tokenSingleton
.
isTokenAvailable
(
json
.
getString
(
"token"
)))
{
return
ResponseEntity
.
status
(
400
).
body
(
new
JSONObject
().
put
(
"data"
,
""
).
put
(
"message"
,
"1-life token has been already consumed"
).
put
(
"status"
,
false
).
toMap
());
}
else
{
if
(
jwtTokenUtil
.
isTokenExpired
(
json
.
getString
(
"token"
)))
{
if
(
jwtTokenUtil
.
isTokenExpired
(
token
))
{
return
ResponseEntity
.
status
(
400
).
body
(
new
JSONObject
().
put
(
"data"
,
""
).
put
(
"message"
,
"Token has expired"
).
put
(
"status"
,
false
).
toMap
());
}
else
{
String
detokenized
=
jwtTokenUtil
.
detokenizeData
(
json
.
getString
(
"token"
));
if
(!
tokenSingleton
.
isTokenAvailable
(
token
))
{
return
ResponseEntity
.
status
(
400
).
body
(
new
JSONObject
().
put
(
"data"
,
""
).
put
(
"message"
,
"token has been already consumed"
).
put
(
"status"
,
false
).
toMap
());
}
else
{
String
detokenized
=
jwtTokenUtil
.
detokenizeData
(
token
,
doConsume
);
if
(
detokenized
.
isEmpty
()){
return
ResponseEntity
.
status
(
400
).
body
(
new
JSONObject
().
put
(
"data"
,
""
).
put
(
"message"
,
"Invalid Token"
).
put
(
"status"
,
false
).
toMap
());
}
else
{
if
(
doConsume
)
{
tokenSingleton
.
consumeToken
(
token
);
}
}
return
ResponseEntity
.
ok
(
new
JSONObject
().
put
(
"data"
,
detokenized
).
put
(
"message"
,
"OK"
).
put
(
"status"
,
true
).
toMap
());
}
}
...
...
src/main/java/web/multitask/trismegistoservices/singleton/TokenSingleton.java
View file @
1d09c733
...
...
@@ -9,8 +9,6 @@ import org.springframework.scheduling.annotation.Scheduled;
import
org.springframework.stereotype.Component
;
import
web.multitask.trismegistoservices.utils.JWTokenUtil
;
import
java.util.stream.IntStream
;
@Getter
@Component
@NoArgsConstructor
...
...
src/main/java/web/multitask/trismegistoservices/utils/JWTokenUtil.java
View file @
1d09c733
...
...
@@ -15,6 +15,8 @@ import org.springframework.stereotype.Component;
import
web.multitask.trismegistoservices.model.User
;
import
web.multitask.trismegistoservices.singleton.TokenSingleton
;
import
javax.annotation.Nullable
;
@Component
public
class
JWTokenUtil
implements
Serializable
{
...
...
@@ -22,7 +24,6 @@ public class JWTokenUtil implements Serializable{
private
String
jwtSecret
;
@Value
(
"${app.jwtSecret2}"
)
private
String
jwtSecret2
;
TokenSingleton
tokenSingleton
=
new
TokenSingleton
();
public
String
generateToken
(
User
user
,
BigInteger
ms
,
boolean
onelife
)
{
JSONObject
json
=
new
JSONObject
();
...
...
@@ -51,7 +52,8 @@ public class JWTokenUtil implements Serializable{
.
compact
();
}
public
String
detokenizeData
(
String
token
){
public
String
detokenizeData
(
String
token
,
@Nullable
boolean
doConsume
){
String
tokenReturned
=
""
;
try
{
tokenReturned
=
Jwts
.
parserBuilder
()
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment