devise_masquerade 0.0.9 → 0.1.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.
Potentially problematic release.
This version of devise_masquerade might be problematic. Click here for more details.
- checksums.yaml +15 -0
- data/README.md +4 -2
- data/lib/devise_masquerade/model.rb +1 -1
- data/lib/devise_masquerade/version.rb +1 -1
- data/spec/controllers/devise/masquerades_controller_spec.rb +2 -2
- data/spec/models/user_spec.rb +2 -2
- metadata +5 -19
checksums.yaml
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
---
|
2
|
+
!binary "U0hBMQ==":
|
3
|
+
metadata.gz: !binary |-
|
4
|
+
ZmNkZTIzYTc0M2FhNzg5NThhZTIxZTNiMzdjNWI5NzcxZjQ2M2Q2NA==
|
5
|
+
data.tar.gz: !binary |-
|
6
|
+
YjdkNmFlOWQ4MzFhZWY5YzM3ZGVhYTFkOGI2NDBiODZmZWFiNjM3Ng==
|
7
|
+
SHA512:
|
8
|
+
metadata.gz: !binary |-
|
9
|
+
NWM2ZmYzZmM0MmFjNDdiMTJhMGViNTA0NTEyMjA0ZGMxYWJjMjAwMWY0MGM1
|
10
|
+
MTcwYzllZmIxY2Q2YjdhMzczNWMwMjZjOWVjMjVlYjI0ZGUxODc5YzEyYzNk
|
11
|
+
N2VkNmU3NzcxYTUzODdmYWI1MmI5MTI4NWZjMDMwZWE2MDExZmY=
|
12
|
+
data.tar.gz: !binary |-
|
13
|
+
OThlZTU1NGZjMzIxZjlmNDhlYzMwOWYzM2IxMDQzNjM3NzQ3NDI5ZDViZTJm
|
14
|
+
ODU0NmZiZGM3YWY3NmE5NWQ1MjBkMWQ0YzBhY2Q5YmNjYjU2YmY3YjBmNzM4
|
15
|
+
NzcxYmMxYmNiYWFiYTkxM2I3OWFhODcyZjliNDIxZGI1ZWU5Mzc=
|
data/README.md
CHANGED
@@ -6,6 +6,8 @@
|
|
6
6
|
|
7
7
|
[](https://coderwall.com/oivoodoo)
|
8
8
|
|
9
|
+
[](https://github.com/oivoodoo/devise_masquerade)
|
10
|
+
|
9
11
|
It's a utility library for enabling functionallity like login as button for
|
10
12
|
admin.
|
11
13
|
|
@@ -32,7 +34,7 @@ In the view you can use url helper for defining link:
|
|
32
34
|
In the model you'll need to add the parameter :masqueradable to the existing comma separated values in the devise method:
|
33
35
|
|
34
36
|
devise :invitable, :confirmable, :database_authenticatable, :registerable, :masqueradable
|
35
|
-
|
37
|
+
|
36
38
|
Add into your application_controller.rb:
|
37
39
|
|
38
40
|
before_filter :masquerade_user!
|
@@ -76,7 +78,7 @@ helpers:
|
|
76
78
|
|
77
79
|
Devise.masquerade_param = 'masquerade'
|
78
80
|
Devise.masquerade_expires_in = 10.seconds
|
79
|
-
Devise.masquerade_key_size = 16 # size of the generate by SecureRandom.
|
81
|
+
Devise.masquerade_key_size = 16 # size of the generate by SecureRandom.urlsafe_base64
|
80
82
|
|
81
83
|
## Demo project
|
82
84
|
|
@@ -12,7 +12,7 @@ module Devise
|
|
12
12
|
|
13
13
|
module InstanceMethods
|
14
14
|
def masquerade!
|
15
|
-
@masquerade_key = SecureRandom.
|
15
|
+
@masquerade_key = SecureRandom.urlsafe_base64(Devise.masquerade_key_size)
|
16
16
|
|
17
17
|
Rails.cache.write("#{self.class.name.pluralize.downcase}:#{@masquerade_key}:masquerade", id, :expires_in => Devise.masquerade_expires_in)
|
18
18
|
end
|
@@ -11,7 +11,7 @@ describe Devise::MasqueradesController do
|
|
11
11
|
let(:mask) { create(:user) }
|
12
12
|
|
13
13
|
before do
|
14
|
-
SecureRandom.should_receive(:
|
14
|
+
SecureRandom.should_receive(:urlsafe_base64).and_return("secure_key")
|
15
15
|
|
16
16
|
get :show, :id => mask.to_param
|
17
17
|
end
|
@@ -34,7 +34,7 @@ describe Devise::MasqueradesController do
|
|
34
34
|
let(:mask) { create(:user) }
|
35
35
|
|
36
36
|
before do
|
37
|
-
SecureRandom.should_receive(:
|
37
|
+
SecureRandom.should_receive(:urlsafe_base64).and_return("secure_key")
|
38
38
|
get :show, :id => mask.to_param
|
39
39
|
end
|
40
40
|
|
data/spec/models/user_spec.rb
CHANGED
@@ -5,13 +5,13 @@ describe User do
|
|
5
5
|
|
6
6
|
describe '#masquerade!' do
|
7
7
|
it 'should cache special key on masquerade' do
|
8
|
-
SecureRandom.should_receive(:
|
8
|
+
SecureRandom.should_receive(:urlsafe_base64).with(16).and_return("secure_key")
|
9
9
|
user.masquerade!
|
10
10
|
end
|
11
11
|
end
|
12
12
|
|
13
13
|
describe '#remove_masquerade_key' do
|
14
|
-
before { SecureRandom.stub(:
|
14
|
+
before { SecureRandom.stub(:urlsafe_base64).and_return("secure_key") }
|
15
15
|
|
16
16
|
let(:key) { 'users:secure_key:masquerade' }
|
17
17
|
|
metadata
CHANGED
@@ -1,20 +1,18 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: devise_masquerade
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0
|
5
|
-
prerelease:
|
4
|
+
version: 0.1.0
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Alexandr Korsak
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date:
|
11
|
+
date: 2014-01-14 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
14
|
name: bundler
|
16
15
|
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
16
|
requirements:
|
19
17
|
- - ! '>='
|
20
18
|
- !ruby/object:Gem::Version
|
@@ -22,7 +20,6 @@ dependencies:
|
|
22
20
|
type: :development
|
23
21
|
prerelease: false
|
24
22
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
23
|
requirements:
|
27
24
|
- - ! '>='
|
28
25
|
- !ruby/object:Gem::Version
|
@@ -30,7 +27,6 @@ dependencies:
|
|
30
27
|
- !ruby/object:Gem::Dependency
|
31
28
|
name: railties
|
32
29
|
requirement: !ruby/object:Gem::Requirement
|
33
|
-
none: false
|
34
30
|
requirements:
|
35
31
|
- - ! '>='
|
36
32
|
- !ruby/object:Gem::Version
|
@@ -38,7 +34,6 @@ dependencies:
|
|
38
34
|
type: :runtime
|
39
35
|
prerelease: false
|
40
36
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
-
none: false
|
42
37
|
requirements:
|
43
38
|
- - ! '>='
|
44
39
|
- !ruby/object:Gem::Version
|
@@ -46,7 +41,6 @@ dependencies:
|
|
46
41
|
- !ruby/object:Gem::Dependency
|
47
42
|
name: devise
|
48
43
|
requirement: !ruby/object:Gem::Requirement
|
49
|
-
none: false
|
50
44
|
requirements:
|
51
45
|
- - ! '>='
|
52
46
|
- !ruby/object:Gem::Version
|
@@ -54,7 +48,6 @@ dependencies:
|
|
54
48
|
type: :runtime
|
55
49
|
prerelease: false
|
56
50
|
version_requirements: !ruby/object:Gem::Requirement
|
57
|
-
none: false
|
58
51
|
requirements:
|
59
52
|
- - ! '>='
|
60
53
|
- !ruby/object:Gem::Version
|
@@ -129,33 +122,26 @@ files:
|
|
129
122
|
homepage: http://github.com/oivoodoo/devise_masquerade/
|
130
123
|
licenses:
|
131
124
|
- MIT
|
125
|
+
metadata: {}
|
132
126
|
post_install_message:
|
133
127
|
rdoc_options: []
|
134
128
|
require_paths:
|
135
129
|
- lib
|
136
130
|
required_ruby_version: !ruby/object:Gem::Requirement
|
137
|
-
none: false
|
138
131
|
requirements:
|
139
132
|
- - ! '>='
|
140
133
|
- !ruby/object:Gem::Version
|
141
134
|
version: '0'
|
142
|
-
segments:
|
143
|
-
- 0
|
144
|
-
hash: 3658538405332268443
|
145
135
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
146
|
-
none: false
|
147
136
|
requirements:
|
148
137
|
- - ! '>='
|
149
138
|
- !ruby/object:Gem::Version
|
150
139
|
version: '0'
|
151
|
-
segments:
|
152
|
-
- 0
|
153
|
-
hash: 3658538405332268443
|
154
140
|
requirements: []
|
155
141
|
rubyforge_project:
|
156
|
-
rubygems_version: 1.
|
142
|
+
rubygems_version: 2.1.11
|
157
143
|
signing_key:
|
158
|
-
specification_version:
|
144
|
+
specification_version: 4
|
159
145
|
summary: use for login as functionallity on your admin users pages
|
160
146
|
test_files:
|
161
147
|
- features/back.feature
|