Class: Auth0RS256JWTVerifier
- Inherits:
-
Object
- Object
- Auth0RS256JWTVerifier
- Defined in:
- lib/auth0_rs256_jwt_verifier.rb,
lib/auth0_rs256_jwt_verifier/jwk.rb,
lib/auth0_rs256_jwt_verifier/results.rb,
lib/auth0_rs256_jwt_verifier/user_id.rb,
lib/auth0_access_tokens_rs256_verifier.rb,
lib/auth0_rs256_jwt_verifier/certs_set.rb,
lib/auth0_rs256_jwt_verifier/jwt_decoder.rb,
lib/auth0_rs256_jwt_verifier/exp_verifier.rb,
lib/auth0_rs256_jwt_verifier/valid_jwk_set.rb,
lib/auth0_rs256_jwt_verifier/jwk_set_downloader.rb,
lib/auth0_rs256_jwt_verifier/jwt_decoder_wrapper.rb
Defined Under Namespace
Classes: CertsSet, ExpVerifier, JWK, ValidJWKSet
Instance Method Summary collapse
-
#initialize(issuer:, audience:, jwks_url:, http: HTTP, exp_verifier: ExpVerifier.new) ⇒ Auth0RS256JWTVerifier
constructor
A new instance of Auth0RS256JWTVerifier.
- #verify(access_token) ⇒ Object
Constructor Details
#initialize(issuer:, audience:, jwks_url:, http: HTTP, exp_verifier: ExpVerifier.new) ⇒ Auth0RS256JWTVerifier
Returns a new instance of Auth0RS256JWTVerifier.
16 17 18 19 20 21 22 23 |
# File 'lib/auth0_rs256_jwt_verifier.rb', line 16 def initialize(issuer:, audience:, jwks_url:, http: HTTP, exp_verifier: ExpVerifier.new) @audience = audience @issuer = issuer @jwks_url = jwks_url @jwks_downloader = JWKSetDownloader.new(http) @exp_verifier = exp_verifier @certificates = nil end |
Instance Method Details
#verify(access_token) ⇒ Object
25 26 27 28 29 30 31 32 33 34 35 36 |
# File 'lib/auth0_rs256_jwt_verifier.rb', line 25 def verify(access_token) payload = JWTDecoderWrapper.new( @audience, @issuer, certificates, exp_verifier: @exp_verifier, jwt_decoder: JWTDecoder.new, ).decode(access_token) Results::ValidAccessToken.new(UserId.new(payload.sub)) rescue JWTDecoderWrapper::Error Results::INVALID_ACCESS_TOKEN end |