├── .git-blame-ignore-revs ├── .github └── workflows │ ├── ci.yml │ └── clean.yml ├── .gitignore ├── .scalafix.conf ├── .scalafmt.conf ├── LICENSE ├── README.md ├── circe └── src │ ├── main │ └── scala │ │ └── me │ │ └── wojnowski │ │ └── oidc4s │ │ └── json │ │ └── circe │ │ ├── AudienceCirceDecoder.scala │ │ ├── CirceJsonSupport.scala │ │ ├── IdTokenCirceDecoder.scala │ │ ├── IssuerCirceDecoder.scala │ │ ├── JoseHeaderCirceDecoder.scala │ │ ├── JsonWebKeySetCirceDecoder.scala │ │ └── OpenIdConfigurationCirceDecoder.scala │ └── test │ ├── resources │ ├── fullIdTokenWithSingleAudience.json │ ├── minIdTokenWithMultipleAudiences.json │ ├── minIdTokenWithSingleAudience.json │ └── validOpenIdConfiguration.json │ └── scala │ └── me │ └── wojnowski │ └── oidc4s │ └── json │ └── circe │ ├── IdTokenClaimsCirceJsonSupportTest.scala │ ├── JoseHeaderCirceJsonSupportTest.scala │ ├── JwksCirceJsonSupportTest.scala │ └── OpenIdConfigCirceJsonSupport.scala ├── core └── src │ ├── main │ └── scala │ │ └── me │ │ └── wojnowski │ │ └── oidc4s │ │ ├── Algorithm.scala │ │ ├── Cache.scala │ │ ├── ClientId.scala │ │ ├── IdTokenClaims.scala │ │ ├── IdTokenVerifier.scala │ │ ├── Issuer.scala │ │ ├── JoseHeader.scala │ │ ├── KeyUtils.scala │ │ ├── ProductSerializableNoStackTrace.scala │ │ ├── PublicKeyProvider.scala │ │ ├── config │ │ ├── Location.scala │ │ ├── OpenIdConfig.scala │ │ └── OpenIdConnectDiscovery.scala │ │ ├── impure │ │ ├── AtomicRefCache.scala │ │ └── implicits │ │ │ └── package.scala │ │ ├── json │ │ ├── JsonDecoder.scala │ │ └── JsonSupport.scala │ │ └── transport │ │ └── Transport.scala │ └── test │ ├── resources │ └── jwks.json │ └── scala │ └── me │ └── wojnowski │ └── oidc4s │ ├── CatsRefCacheTests.scala │ ├── IdTokenClaimsTest.scala │ ├── IdTokenVerifierTest.scala │ ├── OpenIdConnectDiscoveryTest.scala │ ├── PropertyIdTokenVerifierTest.scala │ ├── PublicKeyProviderTest.scala │ ├── TimeUtils.scala │ ├── impure │ └── AtomicRefCacheTests.scala │ └── mocks │ ├── CacheMock.scala │ ├── HttpTransportMock.scala │ └── JsonSupportMock.scala ├── project ├── build.properties └── plugins.sbt ├── quick-sttp3-circe └── src │ └── main │ └── scala │ └── me │ └── wojnowski │ └── oidc4s │ └── quick │ └── SttpCirceTokenVerifier.scala ├── quick-sttp4-circe └── src │ └── main │ └── scala │ └── me │ └── wojnowski │ └── oidc4s │ └── quick │ └── Sttp4CirceIdTokenVerifier.scala ├── sttp3 └── src │ ├── main │ └── scala │ │ └── me │ │ └── wojnowski │ │ └── oidc4s │ │ └── transport │ │ └── sttp │ │ └── SttpTransport.scala │ └── test │ └── scala │ └── me │ └── wojnowski │ └── oidc4s │ └── transport │ └── sttp │ └── SttpTransportTest.scala ├── sttp4 └── src │ ├── main │ └── scala │ │ └── me │ │ └── wojnowski │ │ └── oidc4s │ │ └── transport │ │ └── sttp4 │ │ └── SttpTransport.scala │ └── test │ └── scala │ └── me │ └── wojnowski │ └── oidc4s │ └── transport │ └── sttp4 │ └── SttpTransportTest.scala └── testkit └── src ├── main └── scala │ └── me │ └── wojnowski │ └── oidc4s │ └── testkit │ └── IdTokenVerifierMock.scala └── test └── scala └── me └── wojnowski └── oidc4s └── testkit └── IdTokenVerifierMockTest.scala /.git-blame-ignore-revs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/.git-blame-ignore-revs -------------------------------------------------------------------------------- /.github/workflows/ci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/.github/workflows/ci.yml -------------------------------------------------------------------------------- /.github/workflows/clean.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/.github/workflows/clean.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/.gitignore -------------------------------------------------------------------------------- /.scalafix.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/.scalafix.conf -------------------------------------------------------------------------------- /.scalafmt.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/.scalafmt.conf -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/README.md -------------------------------------------------------------------------------- /circe/src/main/scala/me/wojnowski/oidc4s/json/circe/AudienceCirceDecoder.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/circe/src/main/scala/me/wojnowski/oidc4s/json/circe/AudienceCirceDecoder.scala -------------------------------------------------------------------------------- /circe/src/main/scala/me/wojnowski/oidc4s/json/circe/CirceJsonSupport.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/circe/src/main/scala/me/wojnowski/oidc4s/json/circe/CirceJsonSupport.scala -------------------------------------------------------------------------------- /circe/src/main/scala/me/wojnowski/oidc4s/json/circe/IdTokenCirceDecoder.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/circe/src/main/scala/me/wojnowski/oidc4s/json/circe/IdTokenCirceDecoder.scala -------------------------------------------------------------------------------- /circe/src/main/scala/me/wojnowski/oidc4s/json/circe/IssuerCirceDecoder.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/circe/src/main/scala/me/wojnowski/oidc4s/json/circe/IssuerCirceDecoder.scala -------------------------------------------------------------------------------- /circe/src/main/scala/me/wojnowski/oidc4s/json/circe/JoseHeaderCirceDecoder.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/circe/src/main/scala/me/wojnowski/oidc4s/json/circe/JoseHeaderCirceDecoder.scala -------------------------------------------------------------------------------- /circe/src/main/scala/me/wojnowski/oidc4s/json/circe/JsonWebKeySetCirceDecoder.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/circe/src/main/scala/me/wojnowski/oidc4s/json/circe/JsonWebKeySetCirceDecoder.scala -------------------------------------------------------------------------------- /circe/src/main/scala/me/wojnowski/oidc4s/json/circe/OpenIdConfigurationCirceDecoder.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/circe/src/main/scala/me/wojnowski/oidc4s/json/circe/OpenIdConfigurationCirceDecoder.scala -------------------------------------------------------------------------------- /circe/src/test/resources/fullIdTokenWithSingleAudience.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/circe/src/test/resources/fullIdTokenWithSingleAudience.json -------------------------------------------------------------------------------- /circe/src/test/resources/minIdTokenWithMultipleAudiences.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/circe/src/test/resources/minIdTokenWithMultipleAudiences.json -------------------------------------------------------------------------------- /circe/src/test/resources/minIdTokenWithSingleAudience.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/circe/src/test/resources/minIdTokenWithSingleAudience.json -------------------------------------------------------------------------------- /circe/src/test/resources/validOpenIdConfiguration.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/circe/src/test/resources/validOpenIdConfiguration.json -------------------------------------------------------------------------------- /circe/src/test/scala/me/wojnowski/oidc4s/json/circe/IdTokenClaimsCirceJsonSupportTest.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/circe/src/test/scala/me/wojnowski/oidc4s/json/circe/IdTokenClaimsCirceJsonSupportTest.scala -------------------------------------------------------------------------------- /circe/src/test/scala/me/wojnowski/oidc4s/json/circe/JoseHeaderCirceJsonSupportTest.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/circe/src/test/scala/me/wojnowski/oidc4s/json/circe/JoseHeaderCirceJsonSupportTest.scala -------------------------------------------------------------------------------- /circe/src/test/scala/me/wojnowski/oidc4s/json/circe/JwksCirceJsonSupportTest.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/circe/src/test/scala/me/wojnowski/oidc4s/json/circe/JwksCirceJsonSupportTest.scala -------------------------------------------------------------------------------- /circe/src/test/scala/me/wojnowski/oidc4s/json/circe/OpenIdConfigCirceJsonSupport.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/circe/src/test/scala/me/wojnowski/oidc4s/json/circe/OpenIdConfigCirceJsonSupport.scala -------------------------------------------------------------------------------- /core/src/main/scala/me/wojnowski/oidc4s/Algorithm.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/core/src/main/scala/me/wojnowski/oidc4s/Algorithm.scala -------------------------------------------------------------------------------- /core/src/main/scala/me/wojnowski/oidc4s/Cache.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/core/src/main/scala/me/wojnowski/oidc4s/Cache.scala -------------------------------------------------------------------------------- /core/src/main/scala/me/wojnowski/oidc4s/ClientId.scala: -------------------------------------------------------------------------------- 1 | package me.wojnowski.oidc4s 2 | 3 | case class ClientId(value: String) extends AnyVal 4 | -------------------------------------------------------------------------------- /core/src/main/scala/me/wojnowski/oidc4s/IdTokenClaims.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/core/src/main/scala/me/wojnowski/oidc4s/IdTokenClaims.scala -------------------------------------------------------------------------------- /core/src/main/scala/me/wojnowski/oidc4s/IdTokenVerifier.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/core/src/main/scala/me/wojnowski/oidc4s/IdTokenVerifier.scala -------------------------------------------------------------------------------- /core/src/main/scala/me/wojnowski/oidc4s/Issuer.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/core/src/main/scala/me/wojnowski/oidc4s/Issuer.scala -------------------------------------------------------------------------------- /core/src/main/scala/me/wojnowski/oidc4s/JoseHeader.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/core/src/main/scala/me/wojnowski/oidc4s/JoseHeader.scala -------------------------------------------------------------------------------- /core/src/main/scala/me/wojnowski/oidc4s/KeyUtils.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/core/src/main/scala/me/wojnowski/oidc4s/KeyUtils.scala -------------------------------------------------------------------------------- /core/src/main/scala/me/wojnowski/oidc4s/ProductSerializableNoStackTrace.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/core/src/main/scala/me/wojnowski/oidc4s/ProductSerializableNoStackTrace.scala -------------------------------------------------------------------------------- /core/src/main/scala/me/wojnowski/oidc4s/PublicKeyProvider.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/core/src/main/scala/me/wojnowski/oidc4s/PublicKeyProvider.scala -------------------------------------------------------------------------------- /core/src/main/scala/me/wojnowski/oidc4s/config/Location.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/core/src/main/scala/me/wojnowski/oidc4s/config/Location.scala -------------------------------------------------------------------------------- /core/src/main/scala/me/wojnowski/oidc4s/config/OpenIdConfig.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/core/src/main/scala/me/wojnowski/oidc4s/config/OpenIdConfig.scala -------------------------------------------------------------------------------- /core/src/main/scala/me/wojnowski/oidc4s/config/OpenIdConnectDiscovery.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/core/src/main/scala/me/wojnowski/oidc4s/config/OpenIdConnectDiscovery.scala -------------------------------------------------------------------------------- /core/src/main/scala/me/wojnowski/oidc4s/impure/AtomicRefCache.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/core/src/main/scala/me/wojnowski/oidc4s/impure/AtomicRefCache.scala -------------------------------------------------------------------------------- /core/src/main/scala/me/wojnowski/oidc4s/impure/implicits/package.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/core/src/main/scala/me/wojnowski/oidc4s/impure/implicits/package.scala -------------------------------------------------------------------------------- /core/src/main/scala/me/wojnowski/oidc4s/json/JsonDecoder.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/core/src/main/scala/me/wojnowski/oidc4s/json/JsonDecoder.scala -------------------------------------------------------------------------------- /core/src/main/scala/me/wojnowski/oidc4s/json/JsonSupport.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/core/src/main/scala/me/wojnowski/oidc4s/json/JsonSupport.scala -------------------------------------------------------------------------------- /core/src/main/scala/me/wojnowski/oidc4s/transport/Transport.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/core/src/main/scala/me/wojnowski/oidc4s/transport/Transport.scala -------------------------------------------------------------------------------- /core/src/test/resources/jwks.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/core/src/test/resources/jwks.json -------------------------------------------------------------------------------- /core/src/test/scala/me/wojnowski/oidc4s/CatsRefCacheTests.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/core/src/test/scala/me/wojnowski/oidc4s/CatsRefCacheTests.scala -------------------------------------------------------------------------------- /core/src/test/scala/me/wojnowski/oidc4s/IdTokenClaimsTest.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/core/src/test/scala/me/wojnowski/oidc4s/IdTokenClaimsTest.scala -------------------------------------------------------------------------------- /core/src/test/scala/me/wojnowski/oidc4s/IdTokenVerifierTest.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/core/src/test/scala/me/wojnowski/oidc4s/IdTokenVerifierTest.scala -------------------------------------------------------------------------------- /core/src/test/scala/me/wojnowski/oidc4s/OpenIdConnectDiscoveryTest.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/core/src/test/scala/me/wojnowski/oidc4s/OpenIdConnectDiscoveryTest.scala -------------------------------------------------------------------------------- /core/src/test/scala/me/wojnowski/oidc4s/PropertyIdTokenVerifierTest.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/core/src/test/scala/me/wojnowski/oidc4s/PropertyIdTokenVerifierTest.scala -------------------------------------------------------------------------------- /core/src/test/scala/me/wojnowski/oidc4s/PublicKeyProviderTest.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/core/src/test/scala/me/wojnowski/oidc4s/PublicKeyProviderTest.scala -------------------------------------------------------------------------------- /core/src/test/scala/me/wojnowski/oidc4s/TimeUtils.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/core/src/test/scala/me/wojnowski/oidc4s/TimeUtils.scala -------------------------------------------------------------------------------- /core/src/test/scala/me/wojnowski/oidc4s/impure/AtomicRefCacheTests.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/core/src/test/scala/me/wojnowski/oidc4s/impure/AtomicRefCacheTests.scala -------------------------------------------------------------------------------- /core/src/test/scala/me/wojnowski/oidc4s/mocks/CacheMock.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/core/src/test/scala/me/wojnowski/oidc4s/mocks/CacheMock.scala -------------------------------------------------------------------------------- /core/src/test/scala/me/wojnowski/oidc4s/mocks/HttpTransportMock.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/core/src/test/scala/me/wojnowski/oidc4s/mocks/HttpTransportMock.scala -------------------------------------------------------------------------------- /core/src/test/scala/me/wojnowski/oidc4s/mocks/JsonSupportMock.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/core/src/test/scala/me/wojnowski/oidc4s/mocks/JsonSupportMock.scala -------------------------------------------------------------------------------- /project/build.properties: -------------------------------------------------------------------------------- 1 | sbt.version=1.11.7 2 | -------------------------------------------------------------------------------- /project/plugins.sbt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/project/plugins.sbt -------------------------------------------------------------------------------- /quick-sttp3-circe/src/main/scala/me/wojnowski/oidc4s/quick/SttpCirceTokenVerifier.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/quick-sttp3-circe/src/main/scala/me/wojnowski/oidc4s/quick/SttpCirceTokenVerifier.scala -------------------------------------------------------------------------------- /quick-sttp4-circe/src/main/scala/me/wojnowski/oidc4s/quick/Sttp4CirceIdTokenVerifier.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/quick-sttp4-circe/src/main/scala/me/wojnowski/oidc4s/quick/Sttp4CirceIdTokenVerifier.scala -------------------------------------------------------------------------------- /sttp3/src/main/scala/me/wojnowski/oidc4s/transport/sttp/SttpTransport.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/sttp3/src/main/scala/me/wojnowski/oidc4s/transport/sttp/SttpTransport.scala -------------------------------------------------------------------------------- /sttp3/src/test/scala/me/wojnowski/oidc4s/transport/sttp/SttpTransportTest.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/sttp3/src/test/scala/me/wojnowski/oidc4s/transport/sttp/SttpTransportTest.scala -------------------------------------------------------------------------------- /sttp4/src/main/scala/me/wojnowski/oidc4s/transport/sttp4/SttpTransport.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/sttp4/src/main/scala/me/wojnowski/oidc4s/transport/sttp4/SttpTransport.scala -------------------------------------------------------------------------------- /sttp4/src/test/scala/me/wojnowski/oidc4s/transport/sttp4/SttpTransportTest.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/sttp4/src/test/scala/me/wojnowski/oidc4s/transport/sttp4/SttpTransportTest.scala -------------------------------------------------------------------------------- /testkit/src/main/scala/me/wojnowski/oidc4s/testkit/IdTokenVerifierMock.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/testkit/src/main/scala/me/wojnowski/oidc4s/testkit/IdTokenVerifierMock.scala -------------------------------------------------------------------------------- /testkit/src/test/scala/me/wojnowski/oidc4s/testkit/IdTokenVerifierMockTest.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwojnowski/oidc4s/HEAD/testkit/src/test/scala/me/wojnowski/oidc4s/testkit/IdTokenVerifierMockTest.scala --------------------------------------------------------------------------------