Class: FirebaseAuth::IDTokenVerifier

Inherits:
Object
  • Object
show all
Defined in:
lib/firebase_auth/id_token_verifier.rb

Constant Summary collapse

JWT_OPTIONS =
{ algorithm: 'RS256', verify_iat: true }

Instance Method Summary collapse

Constructor Details

#initialize(public_keys) ⇒ IDTokenVerifier

Returns a new instance of IDTokenVerifier.



5
6
7
# File 'lib/firebase_auth/id_token_verifier.rb', line 5

def initialize(public_keys)
  @public_keys = public_keys
end

Instance Method Details

#verify(id_token) ⇒ Object



9
10
11
12
# File 'lib/firebase_auth/id_token_verifier.rb', line 9

def verify(id_token)
  kid = JWT.decode(id_token, nil, false).last['kid'] rescue nil
  decode_jwt(id_token, @public_keys.look_up(kid))
end