Class: Firebase::Auth::IDTokenKeeper::PublicKeysEndpoint
- Inherits:
-
Object
- Object
- Firebase::Auth::IDTokenKeeper::PublicKeysEndpoint
- Defined in:
- lib/firebase/auth/id_token_keeper/public_keys_endpoint.rb
Constant Summary collapse
- PUBLIC_KEYS_URI =
'https://www.googleapis.com/robot/v1/metadata/x509/securetoken@system.gserviceaccount.com'
Instance Method Summary collapse
- #exist_public_key_by?(kid:) ⇒ Boolean
- #find_certificate_by(kid:) ⇒ Object
- #find_public_key_by(kid:) ⇒ Object
- #public_keys ⇒ Object
- #response ⇒ Object
- #response_body ⇒ Object
- #response_status ⇒ Object
Instance Method Details
#exist_public_key_by?(kid:) ⇒ Boolean
20 21 22 |
# File 'lib/firebase/auth/id_token_keeper/public_keys_endpoint.rb', line 20 def exist_public_key_by?(kid:) public_keys.has_key?(kid) end |
#find_certificate_by(kid:) ⇒ Object
15 16 17 18 |
# File 'lib/firebase/auth/id_token_keeper/public_keys_endpoint.rb', line 15 def find_certificate_by(kid:) OpenSSL::X509::Certificate.new(public_keys[kid]) if exist_public_key_by?(kid: kid) end |
#find_public_key_by(kid:) ⇒ Object
11 12 13 |
# File 'lib/firebase/auth/id_token_keeper/public_keys_endpoint.rb', line 11 def find_public_key_by(kid:) public_keys[kid] end |
#public_keys ⇒ Object
24 25 26 27 28 29 30 |
# File 'lib/firebase/auth/id_token_keeper/public_keys_endpoint.rb', line 24 def public_keys @public_keys ||= if response_status == 200 JSON.parse(response_body) else [] end end |
#response ⇒ Object
40 41 42 |
# File 'lib/firebase/auth/id_token_keeper/public_keys_endpoint.rb', line 40 def response @response ||= URI.open(PUBLIC_KEYS_URI) end |
#response_body ⇒ Object
32 33 34 |
# File 'lib/firebase/auth/id_token_keeper/public_keys_endpoint.rb', line 32 def response_body @response_body ||= response.read end |
#response_status ⇒ Object
36 37 38 |
# File 'lib/firebase/auth/id_token_keeper/public_keys_endpoint.rb', line 36 def response_status @response_status ||= response.status[0].to_i end |