def getVerifier()

in app/auth/BearerTokenAuth.scala [149:167]


  def getVerifier(maybeKeyId:Option[String]) = maybeVerifiers match {
    case Some(verifiers) =>
      maybeKeyId match {
        case Some(kid) =>
          logger.info(s"Provided JWT is signed with key ID $kid")
          val list = verifiers.getKeys
          if (list.size > 1) {
            Option(verifiers.getKeyByKeyId(kid))
              .map(jwk=>new RSASSAVerifier(jwk.toRSAKey))
          } else {
            if (list.isEmpty) None else Some(new RSASSAVerifier(list.get(0).toRSAKey))
          }
        case None =>
          logger.info(s"Provided JWT has no key ID, using first available cert")
          val list = verifiers.getKeys
          if (list.isEmpty) None else Some(new RSASSAVerifier(list.get(0).toRSAKey))
      }
    case None=>None
  }