From e35191c28dd28b1fecb68d734b6375decbe1e44c Mon Sep 17 00:00:00 2001 From: Zach Smith Date: Thu, 25 May 2017 13:52:47 -0700 Subject: Base64 decode public key file in token authorization --- src/main/scala/xyz/driver/core/app.scala | 11 ++++++++--- src/main/scala/xyz/driver/core/json.scala | 3 ++- src/main/scala/xyz/driver/core/rest.scala | 5 +++-- 3 files changed, 13 insertions(+), 6 deletions(-) (limited to 'src/main/scala/xyz') diff --git a/src/main/scala/xyz/driver/core/app.scala b/src/main/scala/xyz/driver/core/app.scala index db8aa10..e66fe73 100644 --- a/src/main/scala/xyz/driver/core/app.scala +++ b/src/main/scala/xyz/driver/core/app.scala @@ -126,9 +126,14 @@ object app { val swagger: Swagger = reader.read(toJavaTypeSet(apiTypes).asJava) // Removing trailing spaces - swagger.setPaths(swagger.getPaths.asScala.map { case (key, path) => - key.trim -> path - }.toMap.asJava) + swagger.setPaths( + swagger.getPaths.asScala + .map { + case (key, path) => + key.trim -> path + } + .toMap + .asJava) Json.pretty().writeValueAsString(swagger) } catch { diff --git a/src/main/scala/xyz/driver/core/json.scala b/src/main/scala/xyz/driver/core/json.scala index b9d0745..b203c91 100644 --- a/src/main/scala/xyz/driver/core/json.scala +++ b/src/main/scala/xyz/driver/core/json.scala @@ -18,7 +18,8 @@ import xyz.driver.core.time.Time object json { import DefaultJsonProtocol._ - private def UuidInPath[T]: PathMatcher1[Id[T]] = PathMatchers.JavaUUID.map((id: UUID) => Id[T](id.toString.toLowerCase)) + private def UuidInPath[T]: PathMatcher1[Id[T]] = + PathMatchers.JavaUUID.map((id: UUID) => Id[T](id.toString.toLowerCase)) def IdInPath[T]: PathMatcher1[Id[T]] = UuidInPath[T] | new PathMatcher1[Id[T]] { def apply(path: Path) = path match { diff --git a/src/main/scala/xyz/driver/core/rest.scala b/src/main/scala/xyz/driver/core/rest.scala index 1db9d09..6944cf7 100644 --- a/src/main/scala/xyz/driver/core/rest.scala +++ b/src/main/scala/xyz/driver/core/rest.scala @@ -214,8 +214,9 @@ package rest { object CachedTokenAuthorization { def apply[U <: User](publicKeyFile: Path, issuer: String): CachedTokenAuthorization[U] = { lazy val publicKey: PublicKey = { - val publicKeyBytes = Files.readAllBytes(publicKeyFile) - val spec = new X509EncodedKeySpec(publicKeyBytes) + val publicKeyBase64Encoded = Files.readAllBytes(publicKeyFile) + val publicKeyBase64Decoded = java.util.Base64.getDecoder.decode(publicKeyBase64Encoded) + val spec = new X509EncodedKeySpec(publicKeyBase64Decoded) KeyFactory.getInstance("RSA").generatePublic(spec) } new CachedTokenAuthorization[U](publicKey, issuer) -- cgit v1.2.3