oauth2-checker 0.1.0 → 0.2.0

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.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/oauth2/checker.rb +10 -15
  3. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: f79f3fc4b16316be4ff25aa1a0e80bd1f04d7d2f
4
- data.tar.gz: cc47c8cb5bf21cc3adbf9eb7cf02b12b13364934
3
+ metadata.gz: a13681001a07a13b77eb53f1e7c8bf2f75240a5d
4
+ data.tar.gz: e67b162a1aefa0fd698d7804987089daa4b78a47
5
5
  SHA512:
6
- metadata.gz: 759c721ed47a49af66738f606b2789c9f2f30e69db648f1ca678b2e9d58330b335803b5bad172e8fd964ca0a8bcbbf1848c53e64fd70d98b0384430ef32e8988
7
- data.tar.gz: ea2249f7f776a085033427a9ff797e761ff74a91f6b75eb74b76edeea81121a27843aa2046102c60e4399390805835cae47e81f4aea88c92b5705c08e6950359
6
+ metadata.gz: a060caf95b0e9cd199b6baf960db72a3fec7a6deafdfe17e1d0dfabac00167e1f3fbf2b0e7e8bea1430baffe4b78bba406c0c0c8f6da302a2da0d8521d8f4e38
7
+ data.tar.gz: 82601ac65c50a2b82959294e1847037e8832fa41e52c41625bb295213fe3c80babff542badaa92da67e2e2b2655618feb0406868f00050515758f2bb8e578e37
@@ -1,32 +1,27 @@
1
1
  require 'oauth2'
2
2
 
3
3
  class OAuth2::Checker
4
+ attr_reader :client
4
5
  def initialize(client_id, client_secret, options = {}, &block)
5
6
  @client = OAuth2::Client.new(client_id, client_secret, options, &block)
6
7
  end
7
8
 
8
9
  def check_access_token(token)
9
- # raise exception if no token exists
10
- # at = AccessToken.where(token: token).take
11
-
12
- # try to check if token is still valid with oauth provider
13
- begin
14
- # try to do a request to the oauth provider
15
- req = @client.request(:get, "oauth/token/info", {:params => {:access_token => token}})
16
- # if i got here, the request was success => token is valid
17
- return token
18
- rescue
19
- # unexisting or expired token, access denied
20
- return false
21
- end
10
+ validate(token)[0]
22
11
  end
23
12
 
24
13
  def get_resource_owner(token)
14
+ owner = validate(token)[1]
15
+ owner.nil? ? 'undefined' : owner
16
+ end
17
+
18
+ ## validates the token and return [valid (boolen), resource_owner_id (string or nil)]
19
+ def validate(token)
25
20
  begin
26
21
  req = @client.request(:get, "oauth/token/info", {:params => {:access_token => token}})
27
- return req.parsed["resource_owner_id"]
22
+ return [true, req.parsed["resource_owner_id"]]
28
23
  rescue
29
- return "undefined"
24
+ return [false, nil]
30
25
  end
31
26
  end
32
27
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: oauth2-checker
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sandro Mehic
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2016-08-26 00:00:00.000000000 Z
12
+ date: 2016-11-15 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: oauth2