devise_auth_proxy 0.2.0 → 0.2.5

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f48da9026374575851d42fa970741c996e24d095039cd46a044130fda595b9c2
4
- data.tar.gz: a753b83b27ca69ca517524521d1af05cffb3807a6b5e31168a0b26b35da71dba
3
+ metadata.gz: 54a12786ff44717317afaf03bca8d41aed0b3df36ec491cca13ce34838b5b7c8
4
+ data.tar.gz: 0e23049fd68046dfde43c365fe7134a55aae905c82a6aff25b365a6bbb687777
5
5
  SHA512:
6
- metadata.gz: 714c1ea62a39dab0087f874ce637cb1576c4b142a132e59f17aeed0a870d299f720041573da16f3197d7428ad8cf81dddb4979ea42dc903ba99c35b6fb3df1c4
7
- data.tar.gz: 4f3bf097a00d7610e902a789a80f03adce1fe790ca71947adeb5f5273e042afe2ca9ee97b25b316757e672e8136fcb8cb08fec976eae68bfd33bd661c95b8140
6
+ metadata.gz: 0aaeaf03058722742dc4bd87025a8571fb0951bbca6b150f57d0eacf72e66431ffac3fde17ad8174dd816c3755efe1f790d344c81b548f60f1a72a93b961fd8e
7
+ data.tar.gz: aedc16cf90e583de6dfffe619cd1caec73c3833417b22de1cb9720cf79d80f09ec4509861b4ee70cb431fdc6835d219ecdd0eae4e1876a11404f493e42ee32ef
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- devise_auth_proxy (0.2.0)
4
+ devise_auth_proxy (0.2.5)
5
5
  devise
6
6
 
7
7
  GEM
@@ -3,7 +3,9 @@ require 'devise_auth_proxy/version'
3
3
 
4
4
  module DeviseAuthProxy
5
5
  class << self
6
- attr_accessor :env_key, :auto_create, :auto_update, :auth_key, :attribute_map, :default_role, :logout_url
6
+ attr_accessor :env_key, :auto_create, :auto_update, :auth_key,
7
+ :attribute_map, :default_role, :logout_service, :logout_url,
8
+ :http_cookie
7
9
  end
8
10
 
9
11
  # request.env key for remote user name
@@ -26,11 +28,16 @@ module DeviseAuthProxy
26
28
  # Set default role for new user.
27
29
  self.default_role = []
28
30
 
31
+ # Set the service using to logout.
32
+ self.logout_service = nil
33
+
29
34
  # Settings for redirecting to the remote user logout URL
30
35
  # Enable by including DeviseAuthProxy::Controllers::Helpers in ApplicationController
31
36
  # (it overrides Devise's after_sign_out_path_for method).
32
37
  self.logout_url = '/'
33
38
 
39
+ self.http_cookie = nil
40
+
34
41
  def self.configure
35
42
  yield self
36
43
  end
@@ -1,9 +1,20 @@
1
+ require 'service/foss_identity'
2
+
1
3
  module DeviseAuthProxy
2
4
  module Helper
3
5
 
4
6
  # Modify session controller after user log out.
5
7
  # To redirect user to a custom url.
6
8
  def after_sign_out_path_for(resource_or_scope)
9
+ unless DeviseAuthProxy.logout_service.nil?
10
+ case DeviseAuthProxy.logout_service
11
+ when 'foss_identity'
12
+ Service::FossIdentity.sign_out(DeviseAuthProxy.logout_url, DeviseAuthProxy.http_cookie)
13
+ else
14
+ # do nothing
15
+ end
16
+ end
17
+
7
18
  return DeviseAuthProxy.logout_url if DeviseAuthProxy.logout_url
8
19
  super
9
20
  end
@@ -13,6 +13,7 @@ module Devise
13
13
 
14
14
  return fail(:invalid) unless resource
15
15
 
16
+ DeviseAuthProxy.http_cookie = env["HTTP_COOKIE"]
16
17
  # remember_me(resource)
17
18
  success!(resource)
18
19
  end
@@ -1,3 +1,3 @@
1
1
  module DeviseAuthProxy
2
- VERSION = "0.2.0"
2
+ VERSION = "0.2.5"
3
3
  end
@@ -0,0 +1,15 @@
1
+ require 'net/http'
2
+ require 'uri'
3
+
4
+ module Service
5
+ module FossIdentity
6
+ module_function
7
+
8
+ def sign_out(path, cookie)
9
+ Net::HTTP.post(
10
+ URI(path),
11
+ "cookie" => cookie
12
+ )
13
+ end
14
+ end
15
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: devise_auth_proxy
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.2.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - QuangTK
@@ -49,6 +49,7 @@ files:
49
49
  - lib/devise_auth_proxy/model.rb
50
50
  - lib/devise_auth_proxy/strategy.rb
51
51
  - lib/devise_auth_proxy/version.rb
52
+ - lib/service/foss_identity.rb
52
53
  homepage: https://github.com/me0den/devise_auth_proxy
53
54
  licenses:
54
55
  - MIT