rename user verifier
This commit is contained in:
@@ -6,13 +6,13 @@ import com.auth0.jwt.algorithms.Algorithm
|
||||
import com.auth0.jwt.interfaces.DecodedJWT
|
||||
import org.koin.core.annotation.Factory
|
||||
import ru.shadowsparky.backend.domain.JwtInfo
|
||||
import ru.shadowsparky.backend.domain.LoginVerifier
|
||||
import ru.shadowsparky.backend.domain.UserVerifier
|
||||
import ru.shadowsparky.backend.domain.USER_ID_ARG
|
||||
|
||||
@Factory
|
||||
class TokenVerifier(
|
||||
private val jwtInfo: JwtInfo,
|
||||
private val loginVerifier: LoginVerifier
|
||||
private val userVerifier: UserVerifier
|
||||
) {
|
||||
|
||||
val verifier: JWTVerifier = JWT.require(Algorithm.HMAC512(jwtInfo.secret))
|
||||
@@ -22,7 +22,7 @@ class TokenVerifier(
|
||||
|
||||
suspend fun verify(token: String): DecodedJWT {
|
||||
val jwt = verifier.verify(token)
|
||||
loginVerifier.verify(jwt.getClaim(USER_ID_ARG).asLong())
|
||||
userVerifier.verify(jwt.getClaim(USER_ID_ARG).asLong())
|
||||
return jwt
|
||||
}
|
||||
}
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
package ru.shadowsparky.backend.domain
|
||||
|
||||
interface LoginVerifier {
|
||||
interface UserVerifier {
|
||||
suspend fun verify(userId: Long)
|
||||
}
|
||||
|
||||
+3
-3
@@ -16,7 +16,7 @@ import ru.shadowsparky.backend.data.TokenVerifier
|
||||
import ru.shadowsparky.backend.domain.ExceptionInfo
|
||||
import ru.shadowsparky.backend.domain.INVALID_TOKEN_MSG
|
||||
import ru.shadowsparky.backend.domain.JwtInfo
|
||||
import ru.shadowsparky.backend.domain.LoginVerifier
|
||||
import ru.shadowsparky.backend.domain.UserVerifier
|
||||
import ru.shadowsparky.backend.domain.USER_ID_ARG
|
||||
import ru.shadowsparky.backend.domain.VerifyTokenException
|
||||
import ru.shadowsparky.http.domain.HttpException
|
||||
@@ -36,7 +36,7 @@ fun ApplicationCall.obtainUserId(): Long {
|
||||
fun Application.configureJwt(
|
||||
jwtInfo: JwtInfo,
|
||||
tokenVerifier: TokenVerifier,
|
||||
loginVerifier: LoginVerifier
|
||||
userVerifier: UserVerifier
|
||||
) {
|
||||
install(Authentication) {
|
||||
jwt(AUTH_JWT_NAME) {
|
||||
@@ -46,7 +46,7 @@ fun Application.configureJwt(
|
||||
val userId = credential.payload.getClaim(USER_ID_ARG).asLong()
|
||||
try {
|
||||
if (userId != null) {
|
||||
loginVerifier.verify(userId)
|
||||
userVerifier.verify(userId)
|
||||
if (credential.payload.expiresAt == null) {
|
||||
throw VerifyTokenException("Static tokens not supported!")
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user