Method: OpenIDConnect::ResponseObject::IdToken.decode_self_issued
- Defined in:
- lib/openid_connect/response_object/id_token.rb
.decode_self_issued(jwt_string) ⇒ Object
73 74 75 76 77 78 79 80 |
# File 'lib/openid_connect/response_object/id_token.rb', line 73 def decode_self_issued(jwt_string) jwt = JSON::JWT.decode jwt_string, :skip_verification jwk = JSON::JWK.new jwt[:sub_jwk] raise InvalidToken.new('Missing sub_jwk') if jwk.blank? raise InvalidToken.new('Invalid subject') unless jwt[:sub] == jwk.thumbprint jwt.verify! jwk new jwt end |