sorcery 0.8.5 → 0.9.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 (163) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +3 -1
  3. data/.travis.yml +122 -5
  4. data/CHANGELOG.md +37 -1
  5. data/Gemfile +10 -18
  6. data/README.md +159 -88
  7. data/gemfiles/active_record-rails40.gemfile +7 -0
  8. data/gemfiles/active_record-rails41.gemfile +7 -0
  9. data/gemfiles/mongo_mapper-rails40.gemfile +9 -0
  10. data/gemfiles/mongo_mapper-rails41.gemfile +9 -0
  11. data/gemfiles/mongoid-rails40.gemfile +9 -0
  12. data/gemfiles/mongoid-rails41.gemfile +9 -0
  13. data/gemfiles/mongoid3-rails32.gemfile +9 -0
  14. data/lib/generators/sorcery/USAGE +1 -1
  15. data/lib/generators/sorcery/install_generator.rb +19 -5
  16. data/lib/generators/sorcery/templates/initializer.rb +34 -9
  17. data/lib/generators/sorcery/templates/migration/brute_force_protection.rb +3 -1
  18. data/lib/generators/sorcery/templates/migration/core.rb +2 -2
  19. data/lib/generators/sorcery/templates/migration/external.rb +3 -1
  20. data/lib/sorcery/adapters/active_record_adapter.rb +120 -0
  21. data/lib/sorcery/adapters/base_adapter.rb +30 -0
  22. data/lib/sorcery/adapters/data_mapper_adapter.rb +176 -0
  23. data/lib/sorcery/adapters/mongo_mapper_adapter.rb +110 -0
  24. data/lib/sorcery/adapters/mongoid_adapter.rb +97 -0
  25. data/lib/sorcery/controller/config.rb +65 -0
  26. data/lib/sorcery/controller/submodules/activity_logging.rb +16 -21
  27. data/lib/sorcery/controller/submodules/brute_force_protection.rb +6 -6
  28. data/lib/sorcery/controller/submodules/external.rb +35 -40
  29. data/lib/sorcery/controller/submodules/remember_me.rb +4 -4
  30. data/lib/sorcery/controller/submodules/session_timeout.rb +10 -6
  31. data/lib/sorcery/controller.rb +10 -74
  32. data/lib/sorcery/model/config.rb +96 -0
  33. data/lib/sorcery/model/submodules/activity_logging.rb +30 -13
  34. data/lib/sorcery/model/submodules/brute_force_protection.rb +21 -21
  35. data/lib/sorcery/model/submodules/external.rb +53 -9
  36. data/lib/sorcery/model/submodules/remember_me.rb +15 -19
  37. data/lib/sorcery/model/submodules/reset_password.rb +33 -34
  38. data/lib/sorcery/model/submodules/user_activation.rb +36 -47
  39. data/lib/sorcery/model/temporary_token.rb +4 -4
  40. data/lib/sorcery/model.rb +73 -173
  41. data/lib/sorcery/protocols/oauth.rb +42 -0
  42. data/lib/sorcery/protocols/oauth2.rb +47 -0
  43. data/lib/sorcery/providers/base.rb +38 -0
  44. data/lib/sorcery/providers/facebook.rb +63 -0
  45. data/lib/sorcery/providers/github.rb +51 -0
  46. data/lib/sorcery/providers/google.rb +51 -0
  47. data/lib/sorcery/providers/heroku.rb +57 -0
  48. data/lib/sorcery/providers/jira.rb +77 -0
  49. data/lib/sorcery/providers/linkedin.rb +66 -0
  50. data/lib/sorcery/providers/liveid.rb +53 -0
  51. data/lib/sorcery/providers/salesforce.rb +50 -0
  52. data/lib/sorcery/providers/twitter.rb +59 -0
  53. data/lib/sorcery/providers/vk.rb +63 -0
  54. data/lib/sorcery/providers/xing.rb +64 -0
  55. data/lib/sorcery/test_helpers/internal/rails.rb +14 -3
  56. data/lib/sorcery/test_helpers/internal.rb +7 -3
  57. data/lib/sorcery/test_helpers/rails/controller.rb +21 -0
  58. data/lib/sorcery/test_helpers/rails/integration.rb +26 -0
  59. data/lib/sorcery/version.rb +3 -0
  60. data/lib/sorcery.rb +82 -58
  61. data/sorcery.gemspec +19 -19
  62. data/spec/active_record/user_activation_spec.rb +1 -1
  63. data/spec/active_record/user_activity_logging_spec.rb +10 -1
  64. data/spec/active_record/user_brute_force_protection_spec.rb +1 -1
  65. data/spec/active_record/user_oauth_spec.rb +1 -1
  66. data/spec/active_record/user_remember_me_spec.rb +1 -1
  67. data/spec/active_record/user_reset_password_spec.rb +1 -1
  68. data/spec/active_record/user_spec.rb +7 -8
  69. data/spec/controllers/controller_activity_logging_spec.rb +124 -0
  70. data/spec/controllers/controller_brute_force_protection_spec.rb +43 -0
  71. data/spec/controllers/controller_http_basic_auth_spec.rb +68 -0
  72. data/spec/controllers/controller_oauth2_spec.rb +414 -0
  73. data/spec/controllers/controller_oauth_spec.rb +240 -0
  74. data/spec/controllers/controller_remember_me_spec.rb +117 -0
  75. data/spec/controllers/controller_session_timeout_spec.rb +80 -0
  76. data/spec/controllers/controller_spec.rb +218 -0
  77. data/spec/data_mapper/user_activation_spec.rb +10 -0
  78. data/spec/data_mapper/user_activity_logging_spec.rb +14 -0
  79. data/spec/data_mapper/user_brute_force_protection_spec.rb +9 -0
  80. data/spec/data_mapper/user_oauth_spec.rb +9 -0
  81. data/spec/data_mapper/user_remember_me_spec.rb +8 -0
  82. data/spec/data_mapper/user_reset_password_spec.rb +8 -0
  83. data/spec/data_mapper/user_spec.rb +27 -0
  84. data/spec/mongo_mapper/user_activation_spec.rb +1 -2
  85. data/spec/mongo_mapper/user_activity_logging_spec.rb +1 -1
  86. data/spec/mongo_mapper/user_brute_force_protection_spec.rb +1 -1
  87. data/spec/mongo_mapper/user_oauth_spec.rb +1 -1
  88. data/spec/mongo_mapper/user_remember_me_spec.rb +1 -1
  89. data/spec/mongo_mapper/user_reset_password_spec.rb +1 -1
  90. data/spec/mongo_mapper/user_spec.rb +7 -8
  91. data/spec/mongoid/user_activation_spec.rb +1 -2
  92. data/spec/mongoid/user_activity_logging_spec.rb +1 -2
  93. data/spec/mongoid/user_brute_force_protection_spec.rb +1 -2
  94. data/spec/mongoid/user_oauth_spec.rb +1 -2
  95. data/spec/mongoid/user_remember_me_spec.rb +1 -2
  96. data/spec/mongoid/user_reset_password_spec.rb +1 -2
  97. data/spec/mongoid/user_spec.rb +21 -9
  98. data/spec/orm/active_record.rb +14 -0
  99. data/spec/orm/data_mapper.rb +48 -0
  100. data/spec/orm/mongo_mapper.rb +1 -1
  101. data/spec/orm/mongoid.rb +5 -0
  102. data/spec/rails_app/app/controllers/sorcery_controller.rb +125 -59
  103. data/spec/rails_app/app/data_mapper/authentication.rb +8 -0
  104. data/spec/rails_app/app/data_mapper/user.rb +7 -0
  105. data/spec/rails_app/app/mongo_mapper/user.rb +2 -0
  106. data/spec/rails_app/config/routes.rb +27 -13
  107. data/spec/rails_app/db/migrate/core/20101224223620_create_users.rb +2 -2
  108. data/spec/shared_examples/user_activation_shared_examples.rb +108 -91
  109. data/spec/shared_examples/user_activity_logging_shared_examples.rb +83 -15
  110. data/spec/shared_examples/user_brute_force_protection_shared_examples.rb +140 -21
  111. data/spec/shared_examples/user_oauth_shared_examples.rb +21 -16
  112. data/spec/shared_examples/user_remember_me_shared_examples.rb +36 -24
  113. data/spec/shared_examples/user_reset_password_shared_examples.rb +138 -117
  114. data/spec/shared_examples/user_shared_examples.rb +297 -150
  115. data/spec/sorcery_crypto_providers_spec.rb +28 -28
  116. data/spec/spec_helper.rb +12 -18
  117. metadata +99 -165
  118. data/Gemfile.rails4 +0 -24
  119. data/VERSION +0 -1
  120. data/lib/sorcery/controller/submodules/external/protocols/oauth1.rb +0 -46
  121. data/lib/sorcery/controller/submodules/external/protocols/oauth2.rb +0 -50
  122. data/lib/sorcery/controller/submodules/external/providers/base.rb +0 -21
  123. data/lib/sorcery/controller/submodules/external/providers/facebook.rb +0 -99
  124. data/lib/sorcery/controller/submodules/external/providers/github.rb +0 -93
  125. data/lib/sorcery/controller/submodules/external/providers/google.rb +0 -92
  126. data/lib/sorcery/controller/submodules/external/providers/linkedin.rb +0 -103
  127. data/lib/sorcery/controller/submodules/external/providers/liveid.rb +0 -93
  128. data/lib/sorcery/controller/submodules/external/providers/twitter.rb +0 -94
  129. data/lib/sorcery/controller/submodules/external/providers/vk.rb +0 -101
  130. data/lib/sorcery/controller/submodules/external/providers/xing.rb +0 -98
  131. data/lib/sorcery/model/adapters/active_record.rb +0 -49
  132. data/lib/sorcery/model/adapters/mongo_mapper.rb +0 -56
  133. data/lib/sorcery/model/adapters/mongoid.rb +0 -88
  134. data/lib/sorcery/test_helpers/rails.rb +0 -16
  135. data/lib/sorcery/test_helpers.rb +0 -5
  136. data/spec/active_record/controller_activity_logging_spec.rb +0 -140
  137. data/spec/active_record/controller_brute_force_protection_spec.rb +0 -136
  138. data/spec/active_record/controller_http_basic_auth_spec.rb +0 -59
  139. data/spec/active_record/controller_oauth2_spec.rb +0 -417
  140. data/spec/active_record/controller_oauth_spec.rb +0 -212
  141. data/spec/active_record/controller_remember_me_spec.rb +0 -96
  142. data/spec/active_record/controller_session_timeout_spec.rb +0 -55
  143. data/spec/active_record/controller_spec.rb +0 -182
  144. data/spec/active_record/integration_spec.rb +0 -23
  145. data/spec/mongo_mapper/controller_spec.rb +0 -175
  146. data/spec/mongoid/controller_activity_logging_spec.rb +0 -111
  147. data/spec/mongoid/controller_spec.rb +0 -186
  148. data/spec/rails_app/public/404.html +0 -26
  149. data/spec/rails_app/public/422.html +0 -26
  150. data/spec/rails_app/public/500.html +0 -26
  151. data/spec/rails_app/public/favicon.ico +0 -0
  152. data/spec/rails_app/public/images/rails.png +0 -0
  153. data/spec/rails_app/public/javascripts/application.js +0 -2
  154. data/spec/rails_app/public/javascripts/controls.js +0 -965
  155. data/spec/rails_app/public/javascripts/dragdrop.js +0 -974
  156. data/spec/rails_app/public/javascripts/effects.js +0 -1123
  157. data/spec/rails_app/public/javascripts/prototype.js +0 -6001
  158. data/spec/rails_app/public/javascripts/rails.js +0 -175
  159. data/spec/rails_app/public/robots.txt +0 -5
  160. data/spec/rails_app/public/stylesheets/.gitkeep +0 -0
  161. data/spec/shared_examples/controller_oauth2_shared_examples.rb +0 -56
  162. data/spec/shared_examples/controller_oauth_shared_examples.rb +0 -69
  163. /data/lib/sorcery/{controller/submodules/external/protocols → protocols}/certs/ca-bundle.crt +0 -0
metadata CHANGED
@@ -1,232 +1,163 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sorcery
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.5
4
+ version: 0.9.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Noam Ben Ari
8
8
  - Kir Shatrov
9
+ - Grzegorz Witek
9
10
  autorequire:
10
11
  bindir: bin
11
12
  cert_chain: []
12
- date: 2013-12-19 00:00:00.000000000 Z
13
+ date: 2015-01-13 00:00:00.000000000 Z
13
14
  dependencies:
14
15
  - !ruby/object:Gem::Dependency
15
16
  name: oauth
16
17
  requirement: !ruby/object:Gem::Requirement
17
18
  requirements:
18
- - - ~>
19
+ - - "~>"
20
+ - !ruby/object:Gem::Version
21
+ version: '0.4'
22
+ - - ">="
19
23
  - !ruby/object:Gem::Version
20
24
  version: 0.4.4
21
25
  type: :runtime
22
26
  prerelease: false
23
27
  version_requirements: !ruby/object:Gem::Requirement
24
28
  requirements:
25
- - - ~>
29
+ - - "~>"
30
+ - !ruby/object:Gem::Version
31
+ version: '0.4'
32
+ - - ">="
26
33
  - !ruby/object:Gem::Version
27
34
  version: 0.4.4
28
35
  - !ruby/object:Gem::Dependency
29
36
  name: oauth2
30
37
  requirement: !ruby/object:Gem::Requirement
31
38
  requirements:
32
- - - '>='
39
+ - - ">="
33
40
  - !ruby/object:Gem::Version
34
41
  version: 0.8.0
35
- - - <
36
- - !ruby/object:Gem::Version
37
- version: 1.0.0
38
42
  type: :runtime
39
43
  prerelease: false
40
44
  version_requirements: !ruby/object:Gem::Requirement
41
45
  requirements:
42
- - - '>='
46
+ - - ">="
43
47
  - !ruby/object:Gem::Version
44
48
  version: 0.8.0
45
- - - <
46
- - !ruby/object:Gem::Version
47
- version: 1.0.0
48
49
  - !ruby/object:Gem::Dependency
49
- name: bcrypt-ruby
50
+ name: bcrypt
50
51
  requirement: !ruby/object:Gem::Requirement
51
52
  requirements:
52
- - - '>='
53
+ - - "~>"
53
54
  - !ruby/object:Gem::Version
54
- version: '3.0'
55
+ version: '3.1'
55
56
  type: :runtime
56
57
  prerelease: false
57
58
  version_requirements: !ruby/object:Gem::Requirement
58
59
  requirements:
59
- - - '>='
60
+ - - "~>"
60
61
  - !ruby/object:Gem::Version
61
- version: '3.0'
62
+ version: '3.1'
62
63
  - !ruby/object:Gem::Dependency
63
64
  name: abstract
64
65
  requirement: !ruby/object:Gem::Requirement
65
66
  requirements:
66
- - - '>='
67
+ - - ">="
67
68
  - !ruby/object:Gem::Version
68
69
  version: 1.0.0
69
70
  type: :development
70
71
  prerelease: false
71
72
  version_requirements: !ruby/object:Gem::Requirement
72
73
  requirements:
73
- - - '>='
74
+ - - ">="
74
75
  - !ruby/object:Gem::Version
75
76
  version: 1.0.0
76
- - !ruby/object:Gem::Dependency
77
- name: rails
78
- requirement: !ruby/object:Gem::Requirement
79
- requirements:
80
- - - '>='
81
- - !ruby/object:Gem::Version
82
- version: 3.2.15
83
- type: :development
84
- prerelease: false
85
- version_requirements: !ruby/object:Gem::Requirement
86
- requirements:
87
- - - '>='
88
- - !ruby/object:Gem::Version
89
- version: 3.2.15
90
77
  - !ruby/object:Gem::Dependency
91
78
  name: json
92
79
  requirement: !ruby/object:Gem::Requirement
93
80
  requirements:
94
- - - '>='
81
+ - - ">="
95
82
  - !ruby/object:Gem::Version
96
83
  version: 1.7.7
97
84
  type: :development
98
85
  prerelease: false
99
86
  version_requirements: !ruby/object:Gem::Requirement
100
87
  requirements:
101
- - - '>='
88
+ - - ">="
102
89
  - !ruby/object:Gem::Version
103
90
  version: 1.7.7
104
- - !ruby/object:Gem::Dependency
105
- name: rspec
106
- requirement: !ruby/object:Gem::Requirement
107
- requirements:
108
- - - ~>
109
- - !ruby/object:Gem::Version
110
- version: 2.5.0
111
- type: :development
112
- prerelease: false
113
- version_requirements: !ruby/object:Gem::Requirement
114
- requirements:
115
- - - ~>
116
- - !ruby/object:Gem::Version
117
- version: 2.5.0
118
- - !ruby/object:Gem::Dependency
119
- name: rspec-rails
120
- requirement: !ruby/object:Gem::Requirement
121
- requirements:
122
- - - ~>
123
- - !ruby/object:Gem::Version
124
- version: 2.5.0
125
- type: :development
126
- prerelease: false
127
- version_requirements: !ruby/object:Gem::Requirement
128
- requirements:
129
- - - ~>
130
- - !ruby/object:Gem::Version
131
- version: 2.5.0
132
- - !ruby/object:Gem::Dependency
133
- name: sqlite3
134
- requirement: !ruby/object:Gem::Requirement
135
- requirements:
136
- - - '>='
137
- - !ruby/object:Gem::Version
138
- version: '0'
139
- type: :development
140
- prerelease: false
141
- version_requirements: !ruby/object:Gem::Requirement
142
- requirements:
143
- - - '>='
144
- - !ruby/object:Gem::Version
145
- version: '0'
146
91
  - !ruby/object:Gem::Dependency
147
92
  name: yard
148
93
  requirement: !ruby/object:Gem::Requirement
149
94
  requirements:
150
- - - ~>
95
+ - - "~>"
151
96
  - !ruby/object:Gem::Version
152
97
  version: 0.6.0
153
98
  type: :development
154
99
  prerelease: false
155
100
  version_requirements: !ruby/object:Gem::Requirement
156
101
  requirements:
157
- - - ~>
102
+ - - "~>"
158
103
  - !ruby/object:Gem::Version
159
104
  version: 0.6.0
160
105
  - !ruby/object:Gem::Dependency
161
- name: bundler
106
+ name: timecop
162
107
  requirement: !ruby/object:Gem::Requirement
163
108
  requirements:
164
- - - '>='
109
+ - - ">="
165
110
  - !ruby/object:Gem::Version
166
- version: 1.1.0
111
+ version: '0'
167
112
  type: :development
168
113
  prerelease: false
169
114
  version_requirements: !ruby/object:Gem::Requirement
170
115
  requirements:
171
- - - '>='
116
+ - - ">="
172
117
  - !ruby/object:Gem::Version
173
- version: 1.1.0
118
+ version: '0'
174
119
  - !ruby/object:Gem::Dependency
175
120
  name: simplecov
176
121
  requirement: !ruby/object:Gem::Requirement
177
122
  requirements:
178
- - - '>='
123
+ - - ">="
179
124
  - !ruby/object:Gem::Version
180
125
  version: 0.3.8
181
126
  type: :development
182
127
  prerelease: false
183
128
  version_requirements: !ruby/object:Gem::Requirement
184
129
  requirements:
185
- - - '>='
130
+ - - ">="
186
131
  - !ruby/object:Gem::Version
187
132
  version: 0.3.8
188
133
  - !ruby/object:Gem::Dependency
189
- name: timecop
190
- requirement: !ruby/object:Gem::Requirement
191
- requirements:
192
- - - '>='
193
- - !ruby/object:Gem::Version
194
- version: '0'
195
- type: :development
196
- prerelease: false
197
- version_requirements: !ruby/object:Gem::Requirement
198
- requirements:
199
- - - '>='
200
- - !ruby/object:Gem::Version
201
- version: '0'
202
- - !ruby/object:Gem::Dependency
203
- name: mongo_mapper
134
+ name: rspec
204
135
  requirement: !ruby/object:Gem::Requirement
205
136
  requirements:
206
- - - '>='
137
+ - - "~>"
207
138
  - !ruby/object:Gem::Version
208
- version: '0'
139
+ version: 3.0.0
209
140
  type: :development
210
141
  prerelease: false
211
142
  version_requirements: !ruby/object:Gem::Requirement
212
143
  requirements:
213
- - - '>='
144
+ - - "~>"
214
145
  - !ruby/object:Gem::Version
215
- version: '0'
146
+ version: 3.0.0
216
147
  - !ruby/object:Gem::Dependency
217
- name: mongoid
148
+ name: rspec-rails
218
149
  requirement: !ruby/object:Gem::Requirement
219
150
  requirements:
220
- - - ~>
151
+ - - "~>"
221
152
  - !ruby/object:Gem::Version
222
- version: 2.4.4
153
+ version: 3.0.0
223
154
  type: :development
224
155
  prerelease: false
225
156
  version_requirements: !ruby/object:Gem::Requirement
226
157
  requirements:
227
- - - ~>
158
+ - - "~>"
228
159
  - !ruby/object:Gem::Version
229
- version: 2.4.4
160
+ version: 3.0.0
230
161
  description: Provides common authentication needs such as signing in/out, activating
231
162
  by email and resetting password.
232
163
  email: nbenari@gmail.com
@@ -234,17 +165,22 @@ executables: []
234
165
  extensions: []
235
166
  extra_rdoc_files: []
236
167
  files:
237
- - .document
238
- - .gitignore
239
- - .rspec
240
- - .travis.yml
168
+ - ".document"
169
+ - ".gitignore"
170
+ - ".rspec"
171
+ - ".travis.yml"
241
172
  - CHANGELOG.md
242
173
  - Gemfile
243
- - Gemfile.rails4
244
174
  - LICENSE.txt
245
175
  - README.md
246
176
  - Rakefile
247
- - VERSION
177
+ - gemfiles/active_record-rails40.gemfile
178
+ - gemfiles/active_record-rails41.gemfile
179
+ - gemfiles/mongo_mapper-rails40.gemfile
180
+ - gemfiles/mongo_mapper-rails41.gemfile
181
+ - gemfiles/mongoid-rails40.gemfile
182
+ - gemfiles/mongoid-rails41.gemfile
183
+ - gemfiles/mongoid3-rails32.gemfile
248
184
  - lib/generators/sorcery/USAGE
249
185
  - lib/generators/sorcery/helpers.rb
250
186
  - lib/generators/sorcery/install_generator.rb
@@ -257,22 +193,16 @@ files:
257
193
  - lib/generators/sorcery/templates/migration/reset_password.rb
258
194
  - lib/generators/sorcery/templates/migration/user_activation.rb
259
195
  - lib/sorcery.rb
196
+ - lib/sorcery/adapters/active_record_adapter.rb
197
+ - lib/sorcery/adapters/base_adapter.rb
198
+ - lib/sorcery/adapters/data_mapper_adapter.rb
199
+ - lib/sorcery/adapters/mongo_mapper_adapter.rb
200
+ - lib/sorcery/adapters/mongoid_adapter.rb
260
201
  - lib/sorcery/controller.rb
202
+ - lib/sorcery/controller/config.rb
261
203
  - lib/sorcery/controller/submodules/activity_logging.rb
262
204
  - lib/sorcery/controller/submodules/brute_force_protection.rb
263
205
  - lib/sorcery/controller/submodules/external.rb
264
- - lib/sorcery/controller/submodules/external/protocols/certs/ca-bundle.crt
265
- - lib/sorcery/controller/submodules/external/protocols/oauth1.rb
266
- - lib/sorcery/controller/submodules/external/protocols/oauth2.rb
267
- - lib/sorcery/controller/submodules/external/providers/base.rb
268
- - lib/sorcery/controller/submodules/external/providers/facebook.rb
269
- - lib/sorcery/controller/submodules/external/providers/github.rb
270
- - lib/sorcery/controller/submodules/external/providers/google.rb
271
- - lib/sorcery/controller/submodules/external/providers/linkedin.rb
272
- - lib/sorcery/controller/submodules/external/providers/liveid.rb
273
- - lib/sorcery/controller/submodules/external/providers/twitter.rb
274
- - lib/sorcery/controller/submodules/external/providers/vk.rb
275
- - lib/sorcery/controller/submodules/external/providers/xing.rb
276
206
  - lib/sorcery/controller/submodules/http_basic_auth.rb
277
207
  - lib/sorcery/controller/submodules/remember_me.rb
278
208
  - lib/sorcery/controller/submodules/session_timeout.rb
@@ -285,9 +215,7 @@ files:
285
215
  - lib/sorcery/crypto_providers/sha512.rb
286
216
  - lib/sorcery/engine.rb
287
217
  - lib/sorcery/model.rb
288
- - lib/sorcery/model/adapters/active_record.rb
289
- - lib/sorcery/model/adapters/mongo_mapper.rb
290
- - lib/sorcery/model/adapters/mongoid.rb
218
+ - lib/sorcery/model/config.rb
291
219
  - lib/sorcery/model/submodules/activity_logging.rb
292
220
  - lib/sorcery/model/submodules/brute_force_protection.rb
293
221
  - lib/sorcery/model/submodules/external.rb
@@ -295,21 +223,28 @@ files:
295
223
  - lib/sorcery/model/submodules/reset_password.rb
296
224
  - lib/sorcery/model/submodules/user_activation.rb
297
225
  - lib/sorcery/model/temporary_token.rb
226
+ - lib/sorcery/protocols/certs/ca-bundle.crt
227
+ - lib/sorcery/protocols/oauth.rb
228
+ - lib/sorcery/protocols/oauth2.rb
229
+ - lib/sorcery/providers/base.rb
230
+ - lib/sorcery/providers/facebook.rb
231
+ - lib/sorcery/providers/github.rb
232
+ - lib/sorcery/providers/google.rb
233
+ - lib/sorcery/providers/heroku.rb
234
+ - lib/sorcery/providers/jira.rb
235
+ - lib/sorcery/providers/linkedin.rb
236
+ - lib/sorcery/providers/liveid.rb
237
+ - lib/sorcery/providers/salesforce.rb
238
+ - lib/sorcery/providers/twitter.rb
239
+ - lib/sorcery/providers/vk.rb
240
+ - lib/sorcery/providers/xing.rb
298
241
  - lib/sorcery/railties/tasks.rake
299
- - lib/sorcery/test_helpers.rb
300
242
  - lib/sorcery/test_helpers/internal.rb
301
243
  - lib/sorcery/test_helpers/internal/rails.rb
302
- - lib/sorcery/test_helpers/rails.rb
244
+ - lib/sorcery/test_helpers/rails/controller.rb
245
+ - lib/sorcery/test_helpers/rails/integration.rb
246
+ - lib/sorcery/version.rb
303
247
  - sorcery.gemspec
304
- - spec/active_record/controller_activity_logging_spec.rb
305
- - spec/active_record/controller_brute_force_protection_spec.rb
306
- - spec/active_record/controller_http_basic_auth_spec.rb
307
- - spec/active_record/controller_oauth2_spec.rb
308
- - spec/active_record/controller_oauth_spec.rb
309
- - spec/active_record/controller_remember_me_spec.rb
310
- - spec/active_record/controller_session_timeout_spec.rb
311
- - spec/active_record/controller_spec.rb
312
- - spec/active_record/integration_spec.rb
313
248
  - spec/active_record/user_activation_spec.rb
314
249
  - spec/active_record/user_activity_logging_spec.rb
315
250
  - spec/active_record/user_brute_force_protection_spec.rb
@@ -317,7 +252,21 @@ files:
317
252
  - spec/active_record/user_remember_me_spec.rb
318
253
  - spec/active_record/user_reset_password_spec.rb
319
254
  - spec/active_record/user_spec.rb
320
- - spec/mongo_mapper/controller_spec.rb
255
+ - spec/controllers/controller_activity_logging_spec.rb
256
+ - spec/controllers/controller_brute_force_protection_spec.rb
257
+ - spec/controllers/controller_http_basic_auth_spec.rb
258
+ - spec/controllers/controller_oauth2_spec.rb
259
+ - spec/controllers/controller_oauth_spec.rb
260
+ - spec/controllers/controller_remember_me_spec.rb
261
+ - spec/controllers/controller_session_timeout_spec.rb
262
+ - spec/controllers/controller_spec.rb
263
+ - spec/data_mapper/user_activation_spec.rb
264
+ - spec/data_mapper/user_activity_logging_spec.rb
265
+ - spec/data_mapper/user_brute_force_protection_spec.rb
266
+ - spec/data_mapper/user_oauth_spec.rb
267
+ - spec/data_mapper/user_remember_me_spec.rb
268
+ - spec/data_mapper/user_reset_password_spec.rb
269
+ - spec/data_mapper/user_spec.rb
321
270
  - spec/mongo_mapper/user_activation_spec.rb
322
271
  - spec/mongo_mapper/user_activity_logging_spec.rb
323
272
  - spec/mongo_mapper/user_brute_force_protection_spec.rb
@@ -325,8 +274,6 @@ files:
325
274
  - spec/mongo_mapper/user_remember_me_spec.rb
326
275
  - spec/mongo_mapper/user_reset_password_spec.rb
327
276
  - spec/mongo_mapper/user_spec.rb
328
- - spec/mongoid/controller_activity_logging_spec.rb
329
- - spec/mongoid/controller_spec.rb
330
277
  - spec/mongoid/user_activation_spec.rb
331
278
  - spec/mongoid/user_activity_logging_spec.rb
332
279
  - spec/mongoid/user_brute_force_protection_spec.rb
@@ -335,12 +282,15 @@ files:
335
282
  - spec/mongoid/user_reset_password_spec.rb
336
283
  - spec/mongoid/user_spec.rb
337
284
  - spec/orm/active_record.rb
285
+ - spec/orm/data_mapper.rb
338
286
  - spec/orm/mongo_mapper.rb
339
287
  - spec/orm/mongoid.rb
340
288
  - spec/rails_app/app/active_record/authentication.rb
341
289
  - spec/rails_app/app/active_record/user.rb
342
290
  - spec/rails_app/app/active_record/user_provider.rb
343
291
  - spec/rails_app/app/controllers/sorcery_controller.rb
292
+ - spec/rails_app/app/data_mapper/authentication.rb
293
+ - spec/rails_app/app/data_mapper/user.rb
344
294
  - spec/rails_app/app/helpers/application_helper.rb
345
295
  - spec/rails_app/app/mailers/sorcery_mailer.rb
346
296
  - spec/rails_app/app/mongo_mapper/authentication.rb
@@ -380,21 +330,6 @@ files:
380
330
  - spec/rails_app/db/schema.rb
381
331
  - spec/rails_app/db/seeds.rb
382
332
  - spec/rails_app/log/development.log
383
- - spec/rails_app/public/404.html
384
- - spec/rails_app/public/422.html
385
- - spec/rails_app/public/500.html
386
- - spec/rails_app/public/favicon.ico
387
- - spec/rails_app/public/images/rails.png
388
- - spec/rails_app/public/javascripts/application.js
389
- - spec/rails_app/public/javascripts/controls.js
390
- - spec/rails_app/public/javascripts/dragdrop.js
391
- - spec/rails_app/public/javascripts/effects.js
392
- - spec/rails_app/public/javascripts/prototype.js
393
- - spec/rails_app/public/javascripts/rails.js
394
- - spec/rails_app/public/robots.txt
395
- - spec/rails_app/public/stylesheets/.gitkeep
396
- - spec/shared_examples/controller_oauth2_shared_examples.rb
397
- - spec/shared_examples/controller_oauth_shared_examples.rb
398
333
  - spec/shared_examples/user_activation_shared_examples.rb
399
334
  - spec/shared_examples/user_activity_logging_shared_examples.rb
400
335
  - spec/shared_examples/user_brute_force_protection_shared_examples.rb
@@ -415,19 +350,18 @@ require_paths:
415
350
  - lib
416
351
  required_ruby_version: !ruby/object:Gem::Requirement
417
352
  requirements:
418
- - - '>='
353
+ - - ">="
419
354
  - !ruby/object:Gem::Version
420
355
  version: 1.9.3
421
356
  required_rubygems_version: !ruby/object:Gem::Requirement
422
357
  requirements:
423
- - - '>='
358
+ - - ">="
424
359
  - !ruby/object:Gem::Version
425
360
  version: '0'
426
361
  requirements: []
427
362
  rubyforge_project:
428
- rubygems_version: 2.0.3
363
+ rubygems_version: 2.2.2
429
364
  signing_key:
430
365
  specification_version: 4
431
- summary: Magical authentication for Rails 3 applications
366
+ summary: Magical authentication for Rails 3 & 4 applications
432
367
  test_files: []
433
- has_rdoc:
data/Gemfile.rails4 DELETED
@@ -1,24 +0,0 @@
1
- source 'https://rubygems.org'
2
-
3
- gem 'oauth', "~> 0.4.4"
4
- gem 'oauth2', "~> 0.8.0"
5
- gem 'bcrypt-ruby', "~> 3.0.0"
6
-
7
- gem "rspec", "~> 2.14.0"
8
- gem 'rspec-rails', "~> 2.14.0"
9
- #gem 'ruby-debug19'
10
- gem 'sqlite3'
11
- gem "yard", "~> 0.6.0"
12
- gem "bundler", ">= 1.1.0"
13
- gem 'timecop'
14
-
15
- group :mongomapper do
16
- gem 'mongo_mapper', github: 'jnunemaker/mongomapper'
17
- end
18
-
19
- group :mongoid do
20
- gem 'mongoid', github: 'mongoid/mongoid', ref: 'f91feef0a0c6b83a1b878e154f1014536aa1c298'
21
- gem 'bson_ext'
22
- end
23
-
24
- gem 'rails', '~> 4.0.1'
data/VERSION DELETED
@@ -1 +0,0 @@
1
- 0.8.2
@@ -1,46 +0,0 @@
1
- require 'oauth'
2
- module Sorcery
3
- module Controller
4
- module Submodules
5
- module External
6
- module Protocols
7
- module Oauth1
8
- def oauth_version
9
- "1.0"
10
- end
11
-
12
- def get_request_token(token=nil,secret=nil)
13
- return ::OAuth::RequestToken.new(get_consumer(), token, secret) if token && secret
14
-
15
- get_consumer.get_request_token(:oauth_callback => @callback_url)
16
- end
17
-
18
- def authorize_url(args)
19
- get_request_token(
20
- args[:request_token],
21
- args[:request_token_secret]
22
- ).authorize_url({
23
- :oauth_callback => @callback_url
24
- })
25
- end
26
-
27
- def get_access_token(args)
28
- get_request_token(
29
- args[:request_token],
30
- args[:request_token_secret]
31
- ).get_access_token({
32
- :oauth_verifier => args[:oauth_verifier]
33
- })
34
- end
35
-
36
- protected
37
-
38
- def get_consumer
39
- ::OAuth::Consumer.new(@key, @secret, :site => @site)
40
- end
41
- end
42
- end
43
- end
44
- end
45
- end
46
- end
@@ -1,50 +0,0 @@
1
- require 'oauth2'
2
- module Sorcery
3
- module Controller
4
- module Submodules
5
- module External
6
- module Protocols
7
- module Oauth2
8
- def oauth_version
9
- "2.0"
10
- end
11
-
12
- def authorize_url(options = {})
13
- client = build_client(options)
14
- client.auth_code.authorize_url(
15
- :redirect_uri => @callback_url,
16
- :scope => @scope,
17
- :display => @display,
18
- :state => @state
19
- )
20
- end
21
-
22
- def get_access_token(args, options = {})
23
- client = build_client(options)
24
- client.auth_code.get_token(
25
- args[:code],
26
- {
27
- :redirect_uri => @callback_url,
28
- :parse => options.delete(:parse)
29
- },
30
- options
31
- )
32
- end
33
-
34
- def build_client(options = {})
35
- defaults = {
36
- :site => @site,
37
- :ssl => { :ca_file => Config.ca_file }
38
- }
39
- ::OAuth2::Client.new(
40
- @key,
41
- @secret,
42
- defaults.merge!(options)
43
- )
44
- end
45
- end
46
- end
47
- end
48
- end
49
- end
50
- end
@@ -1,21 +0,0 @@
1
- module Sorcery
2
- module Controller
3
- module Submodules
4
- module External
5
- module Providers
6
- module Base
7
- module BaseClient
8
- def self.included(base)
9
- base.module_eval do
10
- class << self
11
- attr_accessor :original_callback_url
12
- end
13
- end
14
- end
15
- end
16
- end
17
- end
18
- end
19
- end
20
- end
21
- end