oauth2-checker 0.1.0 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
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