sorcery 0.16.1 → 0.16.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +8 -0
- data/README.md +1 -3
- data/lib/generators/sorcery/templates/initializer.rb +10 -0
- data/lib/generators/sorcery/templates/migration/core.rb +1 -3
- data/lib/sorcery/adapters/mongoid_adapter.rb +1 -1
- data/lib/sorcery/model.rb +11 -6
- data/lib/sorcery/providers/slack.rb +1 -1
- data/lib/sorcery/version.rb +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c616c0cfea97510b53d2383bb84dfa5fb7026681b8a0a55d762f60b2ad71505b
|
4
|
+
data.tar.gz: 07dc2d7787635cc92fea05896318fcf4602e59355ca3c092f448e44763b030d5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 45fe6636bfc0785eeaaf276a0d178eb75259c2daf9f8b4f19b26f246a80cd5297c2a931414b98d03df5bd9b4b71d0dad3bdd1a4ed44a2e1aa099988466bb7b43
|
7
|
+
data.tar.gz: b9695085f19f77a106c6e5e19eb6ead86e4068efc5ca0adb1909563d42397ee6fbfa6d061bd828eebbf558bd93a579b21a275f7a58a62c942c40f0ad04a2e214
|
data/CHANGELOG.md
CHANGED
@@ -1,6 +1,14 @@
|
|
1
1
|
# Changelog
|
2
2
|
## HEAD
|
3
3
|
|
4
|
+
## 0.16.2
|
5
|
+
|
6
|
+
* Inline core migration index definition [#281](https://github.com/Sorcery/sorcery/pull/281)
|
7
|
+
* Add missing remember_me attributes to config [#180](https://github.com/Sorcery/sorcery/pull/180)
|
8
|
+
* Fix MongoID adapter breaking on save [#284](https://github.com/Sorcery/sorcery/pull/284)
|
9
|
+
* Don't pass token to Slack in query params. Prevents 'invalid_auth' error [#287](https://github.com/Sorcery/sorcery/pull/287)
|
10
|
+
* Fix valid_password? not using configured values when called alone [#293](https://github.com/Sorcery/sorcery/pull/293)
|
11
|
+
|
4
12
|
## 0.16.1
|
5
13
|
|
6
14
|
* Fix default table name being incorrect in migration generator [#274](https://github.com/Sorcery/sorcery/pull/274)
|
data/README.md
CHANGED
@@ -2,9 +2,7 @@
|
|
2
2
|
|
3
3
|
[![Gem Version](https://badge.fury.io/rb/sorcery.svg)](https://rubygems.org/gems/sorcery)
|
4
4
|
[![Gem Downloads](https://img.shields.io/gem/dt/sorcery.svg)](https://rubygems.org/gems/sorcery)
|
5
|
-
[![Build Status](https://
|
6
|
-
[![Code Climate](https://codeclimate.com/github/Sorcery/sorcery.svg)](https://codeclimate.com/github/Sorcery/sorcery)
|
7
|
-
[![Join the chat at https://gitter.im/Sorcery/sorcery](https://badges.gitter.im/join_chat.svg)](https://gitter.im/Sorcery/sorcery?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
|
5
|
+
[![Build Status](https://github.com/Sorcery/sorcery/actions/workflows/ruby.yml/badge.svg?branch=master)](https://github.com/Sorcery/sorcery/actions/workflows/ruby.yml)
|
8
6
|
|
9
7
|
Magical Authentication for Rails. Supports ActiveRecord, DataMapper, Mongoid and MongoMapper.
|
10
8
|
|
@@ -306,6 +306,16 @@ Rails.application.config.sorcery.configure do |config|
|
|
306
306
|
# user.subclasses_inherit_config =
|
307
307
|
|
308
308
|
# -- remember_me --
|
309
|
+
# change default remember_me_token attribute.
|
310
|
+
# Default: `:remember_me_token`
|
311
|
+
#
|
312
|
+
# user.remember_me_token_attribute_name =
|
313
|
+
|
314
|
+
# change default remember_me_token_expires_at attribute.
|
315
|
+
# Default: `:remember_me_token_expires_at`
|
316
|
+
#
|
317
|
+
# user.remember_me_token_expires_at_attribute_name =
|
318
|
+
|
309
319
|
# How long in seconds the session length will be
|
310
320
|
# Default: `60 * 60 * 24 * 7`
|
311
321
|
#
|
@@ -1,13 +1,11 @@
|
|
1
1
|
class SorceryCore < <%= migration_class_name %>
|
2
2
|
def change
|
3
3
|
create_table :<%= tableized_model_class %> do |t|
|
4
|
-
t.string :email, null: false
|
4
|
+
t.string :email, null: false, index: { unique: true }
|
5
5
|
t.string :crypted_password
|
6
6
|
t.string :salt
|
7
7
|
|
8
8
|
t.timestamps null: false
|
9
9
|
end
|
10
|
-
|
11
|
-
add_index :<%= tableized_model_class %>, :email, unique: true
|
12
10
|
end
|
13
11
|
end
|
@@ -32,7 +32,7 @@ module Sorcery
|
|
32
32
|
end
|
33
33
|
|
34
34
|
def define_callback(time, event, method_name, options = {})
|
35
|
-
@klass.send callback_name(time, event, options), method_name, options.slice(:if)
|
35
|
+
@klass.send callback_name(time, event, options), method_name, **options.slice(:if)
|
36
36
|
end
|
37
37
|
|
38
38
|
def callback_name(time, event, options)
|
data/lib/sorcery/model.rb
CHANGED
@@ -131,6 +131,14 @@ module Sorcery
|
|
131
131
|
@sorcery_config.encryption_provider.encrypt(*tokens)
|
132
132
|
end
|
133
133
|
|
134
|
+
# FIXME: This method of passing config to the hashing provider is
|
135
|
+
# questionable, and has been refactored in Sorcery v1.
|
136
|
+
def set_encryption_attributes
|
137
|
+
@sorcery_config.encryption_provider.stretches = @sorcery_config.stretches if @sorcery_config.encryption_provider.respond_to?(:stretches) && @sorcery_config.stretches
|
138
|
+
@sorcery_config.encryption_provider.join_token = @sorcery_config.salt_join_token if @sorcery_config.encryption_provider.respond_to?(:join_token) && @sorcery_config.salt_join_token
|
139
|
+
@sorcery_config.encryption_provider.pepper = @sorcery_config.pepper if @sorcery_config.encryption_provider.respond_to?(:pepper) && @sorcery_config.pepper
|
140
|
+
end
|
141
|
+
|
134
142
|
protected
|
135
143
|
|
136
144
|
def authentication_response(options = {})
|
@@ -139,12 +147,6 @@ module Sorcery
|
|
139
147
|
options[:return_value]
|
140
148
|
end
|
141
149
|
|
142
|
-
def set_encryption_attributes
|
143
|
-
@sorcery_config.encryption_provider.stretches = @sorcery_config.stretches if @sorcery_config.encryption_provider.respond_to?(:stretches) && @sorcery_config.stretches
|
144
|
-
@sorcery_config.encryption_provider.join_token = @sorcery_config.salt_join_token if @sorcery_config.encryption_provider.respond_to?(:join_token) && @sorcery_config.salt_join_token
|
145
|
-
@sorcery_config.encryption_provider.pepper = @sorcery_config.pepper if @sorcery_config.encryption_provider.respond_to?(:pepper) && @sorcery_config.pepper
|
146
|
-
end
|
147
|
-
|
148
150
|
def add_config_inheritance
|
149
151
|
class_eval do
|
150
152
|
def self.inherited(subclass)
|
@@ -177,6 +179,9 @@ module Sorcery
|
|
177
179
|
crypted = send(sorcery_config.crypted_password_attribute_name)
|
178
180
|
return crypted == pass if sorcery_config.encryption_provider.nil?
|
179
181
|
|
182
|
+
# Ensure encryption provider is using configured values
|
183
|
+
self.class.set_encryption_attributes
|
184
|
+
|
180
185
|
salt = send(sorcery_config.salt_attribute_name) unless sorcery_config.salt_attribute_name.nil?
|
181
186
|
|
182
187
|
sorcery_config.encryption_provider.matches?(crypted, pass, salt)
|
@@ -18,7 +18,7 @@ module Sorcery
|
|
18
18
|
end
|
19
19
|
|
20
20
|
def get_user_hash(access_token)
|
21
|
-
response = access_token.get(user_info_path
|
21
|
+
response = access_token.get(user_info_path)
|
22
22
|
auth_hash(access_token).tap do |h|
|
23
23
|
h[:user_info] = JSON.parse(response.body)
|
24
24
|
h[:user_info]['email'] = h[:user_info]['user']['email']
|
data/lib/sorcery/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sorcery
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.16.
|
4
|
+
version: 0.16.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Noam Ben Ari
|
@@ -12,7 +12,7 @@ authors:
|
|
12
12
|
autorequire:
|
13
13
|
bindir: bin
|
14
14
|
cert_chain: []
|
15
|
-
date: 2021-
|
15
|
+
date: 2021-11-28 00:00:00.000000000 Z
|
16
16
|
dependencies:
|
17
17
|
- !ruby/object:Gem::Dependency
|
18
18
|
name: bcrypt
|
@@ -386,7 +386,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
386
386
|
- !ruby/object:Gem::Version
|
387
387
|
version: '0'
|
388
388
|
requirements: []
|
389
|
-
rubygems_version: 3.
|
389
|
+
rubygems_version: 3.2.3
|
390
390
|
signing_key:
|
391
391
|
specification_version: 4
|
392
392
|
summary: Magical authentication for Rails applications
|