openid_connect 1.1.5 → 1.1.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +5 -5
- data/VERSION +1 -1
- data/lib/openid_connect.rb +1 -0
- data/lib/openid_connect/response_object/id_token.rb +1 -3
- data/spec/openid_connect/response_object/id_token_spec.rb +13 -9
- metadata +3 -3
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 | 
            -
             | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 2 | 
            +
            SHA256:
         | 
| 3 | 
            +
              metadata.gz: 9e45b59e9c8ee8497e0abfc6d4bef24909ebe88e847d2cb6741a84294263a8a1
         | 
| 4 | 
            +
              data.tar.gz: 64adaed69ac28e6e722562d63e5cd1f94a29a89f78a1faecf3ab8821a3768b2e
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 78b735b49e830c6fe4a400ecf33d13bfcd6565bc502313cb5b0496cd80f226133ce989909399e2da1f2f2191039ba47060d89def1517cb832eb613a7bcef464f
         | 
| 7 | 
            +
              data.tar.gz: 30771e6665ecac2029982510f54b3ecae6bf6b030d6624fc7d3d9e115b657cffe890d2d9aaaf6ccde1fed9ecd8fe54105e6f4af3697f8d48a194f51f542341ea
         | 
    
        data/VERSION
    CHANGED
    
    | @@ -1 +1 @@ | |
| 1 | 
            -
            1.1. | 
| 1 | 
            +
            1.1.6
         | 
    
        data/lib/openid_connect.rb
    CHANGED
    
    | @@ -8,6 +8,7 @@ require 'validate_url' | |
| 8 8 | 
             
            require 'validate_email'
         | 
| 9 9 | 
             
            require 'attr_required'
         | 
| 10 10 | 
             
            require 'attr_optional'
         | 
| 11 | 
            +
            require 'json/jwt'
         | 
| 11 12 | 
             
            require 'rack/oauth2'
         | 
| 12 13 | 
             
            require 'rack/oauth2/server/authorize/error_with_connect_ext'
         | 
| 13 14 | 
             
            require 'rack/oauth2/server/authorize/request_with_connect_params'
         | 
| @@ -1,5 +1,3 @@ | |
| 1 | 
            -
            require 'json/jwt'
         | 
| 2 | 
            -
             | 
| 3 1 | 
             
            module OpenIDConnect
         | 
| 4 2 | 
             
              class ResponseObject
         | 
| 5 3 | 
             
                class IdToken < ConnectObject
         | 
| @@ -58,7 +56,7 @@ module OpenIDConnect | |
| 58 56 |  | 
| 59 57 | 
             
                  def left_half_hash_of(string, hash_length)
         | 
| 60 58 | 
             
                    digest = OpenSSL::Digest.new("SHA#{hash_length}").digest string
         | 
| 61 | 
            -
                     | 
| 59 | 
            +
                    Base64.urlsafe_encode64 digest[0, hash_length / (2 * 8)], padding: false
         | 
| 62 60 | 
             
                  end
         | 
| 63 61 |  | 
| 64 62 | 
             
                  class << self
         | 
| @@ -157,7 +157,7 @@ describe OpenIDConnect::ResponseObject::IdToken do | |
| 157 157 | 
             
                    t = id_token.to_jwt private_key do |t|
         | 
| 158 158 | 
             
                      t.header[:x5u] = "http://server.example.com/x5u"
         | 
| 159 159 | 
             
                    end
         | 
| 160 | 
            -
                    h =  | 
| 160 | 
            +
                    h = Base64.urlsafe_decode64 t.split('.').first
         | 
| 161 161 | 
             
                    h.should include 'x5u'
         | 
| 162 162 | 
             
                  end
         | 
| 163 163 | 
             
                end
         | 
| @@ -169,8 +169,9 @@ describe OpenIDConnect::ResponseObject::IdToken do | |
| 169 169 | 
             
                      jwt = JSON::JWT.decode t, public_key
         | 
| 170 170 | 
             
                      jwt.should include :at_hash
         | 
| 171 171 | 
             
                      jwt.should_not include :c_hash
         | 
| 172 | 
            -
                      jwt[:at_hash].should ==  | 
| 173 | 
            -
                        OpenSSL::Digest::SHA256.digest('access_token')[0, 128 / 8]
         | 
| 172 | 
            +
                      jwt[:at_hash].should == Base64.urlsafe_encode64(
         | 
| 173 | 
            +
                        OpenSSL::Digest::SHA256.digest('access_token')[0, 128 / 8],
         | 
| 174 | 
            +
                        padding: false
         | 
| 174 175 | 
             
                      )
         | 
| 175 176 | 
             
                    end
         | 
| 176 177 | 
             
                  end
         | 
| @@ -193,8 +194,9 @@ describe OpenIDConnect::ResponseObject::IdToken do | |
| 193 194 | 
             
                    jwt = JSON::JWT.decode t, public_key
         | 
| 194 195 | 
             
                    jwt.should_not include :at_hash
         | 
| 195 196 | 
             
                    jwt.should include :c_hash
         | 
| 196 | 
            -
                    jwt[:c_hash].should ==  | 
| 197 | 
            -
                      OpenSSL::Digest::SHA256.digest('authorization_code')[0, 128 / 8]
         | 
| 197 | 
            +
                    jwt[:c_hash].should == Base64.urlsafe_encode64(
         | 
| 198 | 
            +
                      OpenSSL::Digest::SHA256.digest('authorization_code')[0, 128 / 8],
         | 
| 199 | 
            +
                      padding: false
         | 
| 198 200 | 
             
                    )
         | 
| 199 201 | 
             
                  end
         | 
| 200 202 | 
             
                end
         | 
| @@ -209,11 +211,13 @@ describe OpenIDConnect::ResponseObject::IdToken do | |
| 209 211 | 
             
                    jwt = JSON::JWT.decode t, public_key
         | 
| 210 212 | 
             
                    jwt.should include :at_hash
         | 
| 211 213 | 
             
                    jwt.should include :c_hash
         | 
| 212 | 
            -
                    jwt[:at_hash].should ==  | 
| 213 | 
            -
                      OpenSSL::Digest::SHA256.digest('access_token')[0, 128 / 8]
         | 
| 214 | 
            +
                    jwt[:at_hash].should == Base64.urlsafe_encode64(
         | 
| 215 | 
            +
                      OpenSSL::Digest::SHA256.digest('access_token')[0, 128 / 8],
         | 
| 216 | 
            +
                      padding: false
         | 
| 214 217 | 
             
                    )
         | 
| 215 | 
            -
                    jwt[:c_hash].should ==  | 
| 216 | 
            -
                      OpenSSL::Digest::SHA256.digest('authorization_code')[0, 128 / 8]
         | 
| 218 | 
            +
                    jwt[:c_hash].should == Base64.urlsafe_encode64(
         | 
| 219 | 
            +
                      OpenSSL::Digest::SHA256.digest('authorization_code')[0, 128 / 8],
         | 
| 220 | 
            +
                      padding: false
         | 
| 217 221 | 
             
                    )
         | 
| 218 222 | 
             
                  end
         | 
| 219 223 | 
             
                end
         | 
    
        metadata
    CHANGED
    
    | @@ -1,14 +1,14 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: openid_connect
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 1.1. | 
| 4 | 
            +
              version: 1.1.6
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - nov matake
         | 
| 8 8 | 
             
            autorequire: 
         | 
| 9 9 | 
             
            bindir: bin
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date: 2018- | 
| 11 | 
            +
            date: 2018-04-27 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: tzinfo
         | 
| @@ -320,7 +320,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement | |
| 320 320 | 
             
                  version: '0'
         | 
| 321 321 | 
             
            requirements: []
         | 
| 322 322 | 
             
            rubyforge_project: 
         | 
| 323 | 
            -
            rubygems_version: 2. | 
| 323 | 
            +
            rubygems_version: 2.7.3
         | 
| 324 324 | 
             
            signing_key: 
         | 
| 325 325 | 
             
            specification_version: 4
         | 
| 326 326 | 
             
            summary: OpenID Connect Server & Client Library
         |