class LobbyBoy::OpenIDConnect::IdToken
Wraps a OpenIDConnect::ResponseObject::IdToken providing some useful methods for it.
Attributes
jwt_token[RW]
Public Class Methods
new(jwt_token, public_key = nil)
click to toggle source
Creates a new IdToken
by decoding the given JWT token using the given public key.
@param jwt_token
[String] The JWT token received from the OpenID Connect provider. @param public_key [String] Public key or secret. Only required for signed tokens.
Calls superclass method
# File lib/lobby_boy/openid_connect/id_token.rb, line 14 def initialize(jwt_token, public_key = nil) @jwt_token = jwt_token id_token = ::OpenIDConnect::ResponseObject::IdToken.decode jwt_token, public_key super id_token end
Public Instance Methods
datetime_from_seconds(seconds)
click to toggle source
# File lib/lobby_boy/openid_connect/id_token.rb, line 34 def datetime_from_seconds(seconds) DateTime.strptime seconds.to_s, '%s' end
expires_at()
click to toggle source
# File lib/lobby_boy/openid_connect/id_token.rb, line 20 def expires_at datetime_from_seconds __getobj__.exp end
expires_in()
click to toggle source
Number of seconds left until this ID token expires.
# File lib/lobby_boy/openid_connect/id_token.rb, line 30 def expires_in [0, __getobj__.exp - Time.now.to_i].max end
issued_at()
click to toggle source
# File lib/lobby_boy/openid_connect/id_token.rb, line 24 def issued_at datetime_from_seconds __getobj__.iat end