Class: SignIn::ServiceAccountAccessTokenJwtDecoder

Inherits:
Object
  • Object
show all
Defined in:
app/services/sign_in/service_account_access_token_jwt_decoder.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(service_account_access_token_jwt:) ⇒ ServiceAccountAccessTokenJwtDecoder

Returns a new instance of ServiceAccountAccessTokenJwtDecoder.



7
8
9
# File 'app/services/sign_in/service_account_access_token_jwt_decoder.rb', line 7

def initialize(service_account_access_token_jwt:)
  @service_account_access_token_jwt = 
end

Instance Attribute Details

#service_account_access_token_jwtObject (readonly)

Returns the value of attribute service_account_access_token_jwt.



5
6
7
# File 'app/services/sign_in/service_account_access_token_jwt_decoder.rb', line 5

def 
  @service_account_access_token_jwt
end

Instance Method Details

#perform(with_validation: true) ⇒ Object



11
12
13
14
15
16
17
18
19
20
21
22
# File 'app/services/sign_in/service_account_access_token_jwt_decoder.rb', line 11

def perform(with_validation: true)
  decoded_token = (with_validation)
  ServiceAccountAccessToken.new(service_account_id: decoded_token.,
                                audience: decoded_token.aud,
                                scopes: decoded_token.scopes,
                                user_attributes: decoded_token.user_attributes,
                                user_identifier: decoded_token.sub,
                                uuid: decoded_token.jti,
                                version: decoded_token.version,
                                expiration_time: Time.zone.at(decoded_token.exp),
                                created_time: Time.zone.at(decoded_token.iat))
end