prx_auth-rails 0.2.0 → 1.4.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +6 -0
- data/Guardfile +8 -0
- data/README.md +44 -2
- data/Rakefile +17 -0
- data/app/controllers/prx_auth/rails/sessions_controller.rb +107 -0
- data/app/views/prx_auth/rails/sessions/auth_error.html.erb +15 -0
- data/app/views/prx_auth/rails/sessions/show.html.erb +38 -0
- data/config/routes.rb +7 -0
- data/lib/prx_auth/rails.rb +10 -2
- data/lib/prx_auth/rails/configuration.rb +28 -0
- data/lib/prx_auth/rails/engine.rb +9 -0
- data/lib/prx_auth/rails/ext/controller.rb +77 -1
- data/lib/prx_auth/rails/railtie.rb +1 -1
- data/lib/prx_auth/rails/token.rb +35 -0
- data/lib/prx_auth/rails/version.rb +1 -1
- data/prx_auth-rails.gemspec +13 -3
- data/test/dummy/Rakefile +6 -0
- data/test/dummy/app/assets/config/manifest.js +2 -0
- data/test/dummy/app/assets/images/.keep +0 -0
- data/test/dummy/app/assets/stylesheets/application.css +15 -0
- data/test/dummy/app/channels/application_cable/channel.rb +4 -0
- data/test/dummy/app/channels/application_cable/connection.rb +4 -0
- data/test/dummy/app/controllers/application_controller.rb +8 -0
- data/test/dummy/app/controllers/concerns/.keep +0 -0
- data/test/dummy/app/helpers/application_helper.rb +2 -0
- data/test/dummy/app/javascript/packs/application.js +15 -0
- data/test/dummy/app/jobs/application_job.rb +7 -0
- data/test/dummy/app/mailers/application_mailer.rb +4 -0
- data/test/dummy/app/models/application_record.rb +3 -0
- data/test/dummy/app/models/concerns/.keep +0 -0
- data/test/dummy/app/views/layouts/application.html.erb +15 -0
- data/test/dummy/app/views/layouts/mailer.html.erb +13 -0
- data/test/dummy/app/views/layouts/mailer.text.erb +1 -0
- data/test/dummy/bin/rails +5 -0
- data/test/dummy/bin/rake +5 -0
- data/test/dummy/bin/setup +33 -0
- data/test/dummy/bin/spring +10 -0
- data/test/dummy/config.ru +6 -0
- data/test/dummy/config/application.rb +22 -0
- data/test/dummy/config/boot.rb +5 -0
- data/test/dummy/config/cable.yml +10 -0
- data/test/dummy/config/database.yml +25 -0
- data/test/dummy/config/environment.rb +5 -0
- data/test/dummy/config/environments/development.rb +76 -0
- data/test/dummy/config/environments/production.rb +120 -0
- data/test/dummy/config/environments/test.rb +60 -0
- data/test/dummy/config/initializers/application_controller_renderer.rb +8 -0
- data/test/dummy/config/initializers/assets.rb +12 -0
- data/test/dummy/config/initializers/backtrace_silencers.rb +8 -0
- data/test/dummy/config/initializers/content_security_policy.rb +28 -0
- data/test/dummy/config/initializers/cookies_serializer.rb +5 -0
- data/test/dummy/config/initializers/filter_parameter_logging.rb +6 -0
- data/test/dummy/config/initializers/inflections.rb +16 -0
- data/test/dummy/config/initializers/mime_types.rb +4 -0
- data/test/dummy/config/initializers/permissions_policy.rb +11 -0
- data/test/dummy/config/initializers/prx_auth.rb +8 -0
- data/test/dummy/config/initializers/wrap_parameters.rb +14 -0
- data/test/dummy/config/locales/en.yml +33 -0
- data/test/dummy/config/puma.rb +43 -0
- data/test/dummy/config/routes.rb +3 -0
- data/test/dummy/config/spring.rb +6 -0
- data/test/dummy/config/storage.yml +34 -0
- data/test/dummy/lib/assets/.keep +0 -0
- data/test/dummy/log/.keep +0 -0
- data/test/dummy/public/404.html +67 -0
- data/test/dummy/public/422.html +67 -0
- data/test/dummy/public/500.html +66 -0
- data/test/dummy/public/apple-touch-icon-precomposed.png +0 -0
- data/test/dummy/public/apple-touch-icon.png +0 -0
- data/test/dummy/public/favicon.ico +0 -0
- data/test/dummy/storage/.keep +0 -0
- data/test/log/development.log +0 -0
- data/test/prx_auth/rails/configuration_test.rb +36 -0
- data/test/prx_auth/rails/sessions_controller_test.rb +94 -0
- data/test/prx_auth/rails/token_test.rb +45 -0
- data/test/test_helper.rb +35 -0
- metadata +240 -14
@@ -0,0 +1,66 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<html>
|
3
|
+
<head>
|
4
|
+
<title>We're sorry, but something went wrong (500)</title>
|
5
|
+
<meta name="viewport" content="width=device-width,initial-scale=1">
|
6
|
+
<style>
|
7
|
+
.rails-default-error-page {
|
8
|
+
background-color: #EFEFEF;
|
9
|
+
color: #2E2F30;
|
10
|
+
text-align: center;
|
11
|
+
font-family: arial, sans-serif;
|
12
|
+
margin: 0;
|
13
|
+
}
|
14
|
+
|
15
|
+
.rails-default-error-page div.dialog {
|
16
|
+
width: 95%;
|
17
|
+
max-width: 33em;
|
18
|
+
margin: 4em auto 0;
|
19
|
+
}
|
20
|
+
|
21
|
+
.rails-default-error-page div.dialog > div {
|
22
|
+
border: 1px solid #CCC;
|
23
|
+
border-right-color: #999;
|
24
|
+
border-left-color: #999;
|
25
|
+
border-bottom-color: #BBB;
|
26
|
+
border-top: #B00100 solid 4px;
|
27
|
+
border-top-left-radius: 9px;
|
28
|
+
border-top-right-radius: 9px;
|
29
|
+
background-color: white;
|
30
|
+
padding: 7px 12% 0;
|
31
|
+
box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
|
32
|
+
}
|
33
|
+
|
34
|
+
.rails-default-error-page h1 {
|
35
|
+
font-size: 100%;
|
36
|
+
color: #730E15;
|
37
|
+
line-height: 1.5em;
|
38
|
+
}
|
39
|
+
|
40
|
+
.rails-default-error-page div.dialog > p {
|
41
|
+
margin: 0 0 1em;
|
42
|
+
padding: 1em;
|
43
|
+
background-color: #F7F7F7;
|
44
|
+
border: 1px solid #CCC;
|
45
|
+
border-right-color: #999;
|
46
|
+
border-left-color: #999;
|
47
|
+
border-bottom-color: #999;
|
48
|
+
border-bottom-left-radius: 4px;
|
49
|
+
border-bottom-right-radius: 4px;
|
50
|
+
border-top-color: #DADADA;
|
51
|
+
color: #666;
|
52
|
+
box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
|
53
|
+
}
|
54
|
+
</style>
|
55
|
+
</head>
|
56
|
+
|
57
|
+
<body class="rails-default-error-page">
|
58
|
+
<!-- This file lives in public/500.html -->
|
59
|
+
<div class="dialog">
|
60
|
+
<div>
|
61
|
+
<h1>We're sorry, but something went wrong.</h1>
|
62
|
+
</div>
|
63
|
+
<p>If you are the application owner check the logs for more information.</p>
|
64
|
+
</div>
|
65
|
+
</body>
|
66
|
+
</html>
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
@@ -0,0 +1,36 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
|
3
|
+
describe PrxAuth::Rails::Configuration do
|
4
|
+
|
5
|
+
subject { PrxAuth::Rails::Configuration.new }
|
6
|
+
|
7
|
+
it 'initializes with a namespace defined by rails app name' do
|
8
|
+
assert subject.namespace == :dummy
|
9
|
+
end
|
10
|
+
|
11
|
+
it 'can be reconfigured using the namespace attr' do
|
12
|
+
PrxAuth::Rails.stub(:configuration, subject) do
|
13
|
+
PrxAuth::Rails.configure do |config|
|
14
|
+
config.namespace = :new_test
|
15
|
+
end
|
16
|
+
|
17
|
+
assert PrxAuth::Rails.configuration.namespace == :new_test
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
it 'defaults to enabling the middleware' do
|
22
|
+
PrxAuth::Rails.stub(:configuration, subject) do
|
23
|
+
assert PrxAuth::Rails.configuration.install_middleware
|
24
|
+
end
|
25
|
+
end
|
26
|
+
|
27
|
+
it 'allows overriding of the middleware automatic installation' do
|
28
|
+
PrxAuth::Rails.stub(:configuration, subject) do
|
29
|
+
PrxAuth::Rails.configure do |config|
|
30
|
+
config.install_middleware = false
|
31
|
+
end
|
32
|
+
|
33
|
+
assert !PrxAuth::Rails.configuration.install_middleware
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
@@ -0,0 +1,94 @@
|
|
1
|
+
require "test_helper"
|
2
|
+
|
3
|
+
module PrxAuth::Rails
|
4
|
+
class SessionsControllerTest < ActionController::TestCase
|
5
|
+
|
6
|
+
setup do
|
7
|
+
@routes = PrxAuth::Rails::Engine.routes
|
8
|
+
@nonce_session_key = SessionsController::ID_NONCE_SESSION_KEY
|
9
|
+
@token_params = {id_token: 'sometok', access_token: 'othertok'}
|
10
|
+
@stub_claims = {'nonce' => '123', 'sub' => '1'}
|
11
|
+
end
|
12
|
+
|
13
|
+
test "new creates nonce" do
|
14
|
+
nonce = session[@nonce_session_key]
|
15
|
+
assert nonce == nil
|
16
|
+
|
17
|
+
get :new
|
18
|
+
|
19
|
+
nonce = session[@nonce_session_key]
|
20
|
+
assert nonce.match(/[a-zA-Z\d]{32}/)
|
21
|
+
assert nonce.length == 32
|
22
|
+
end
|
23
|
+
|
24
|
+
test 'new should should not overwrite the saved nonce' do
|
25
|
+
get :new
|
26
|
+
nonce1 = session[@nonce_session_key]
|
27
|
+
|
28
|
+
get :new
|
29
|
+
nonce2 = session[@nonce_session_key]
|
30
|
+
assert nonce1 == nonce2
|
31
|
+
end
|
32
|
+
|
33
|
+
test 'create should validate a token and set the session variable' do
|
34
|
+
@controller.stub(:validate_token, @stub_claims) do
|
35
|
+
session[@nonce_session_key] = '123'
|
36
|
+
post :create, params: @token_params, format: :json
|
37
|
+
assert session['prx.auth']['id_token']['nonce'] == '123'
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
41
|
+
test 'create should call test_nonce! if upon verification' do
|
42
|
+
@controller.stub(:validate_token, {'nonce' => 'not matching', 'aud' => '1'}) do
|
43
|
+
session[@nonce_session_key] = 'nonce'
|
44
|
+
post :create, params: @token_params, format: :json
|
45
|
+
assert session[@nonce_session_key] == nil
|
46
|
+
end
|
47
|
+
end
|
48
|
+
|
49
|
+
test 'create should reset the nonce after consumed' do
|
50
|
+
@controller.stub(:validate_token, @stub_claims) do
|
51
|
+
session[@nonce_session_key] = '123'
|
52
|
+
post :create, params: @token_params, format: :json
|
53
|
+
|
54
|
+
assert session[@nonce_session_key] == nil
|
55
|
+
assert response.code == '302'
|
56
|
+
assert response.body.match?(/after-sign-in-path/)
|
57
|
+
end
|
58
|
+
end
|
59
|
+
|
60
|
+
test 'should respond with aredirect to the auth error page / code if the nonce does not match' do
|
61
|
+
@controller.stub(:validate_token, @stub_claims) do
|
62
|
+
session[@nonce_session_key] = 'nonce-does-not-match'
|
63
|
+
post :create, params: @token_params, format: :json
|
64
|
+
assert response.code == '302'
|
65
|
+
assert response.body.match(/auth_error\?error=verification_failed/)
|
66
|
+
end
|
67
|
+
end
|
68
|
+
|
69
|
+
test 'auth_error should return a formatted error message to the user' do
|
70
|
+
get :auth_error, params: {error: 'error_message'}
|
71
|
+
assert response.code == '200'
|
72
|
+
assert response.body.match?(/Message was: <pre>error_message/)
|
73
|
+
end
|
74
|
+
|
75
|
+
test 'auth_error should expect the error param' do
|
76
|
+
assert_raises ActionController::ParameterMissing do
|
77
|
+
get :auth_error, params: {}
|
78
|
+
end
|
79
|
+
end
|
80
|
+
|
81
|
+
test 'validates that the user id matches in both tokens' do
|
82
|
+
@controller.stub(:id_claims, @stub_claims) do
|
83
|
+
@controller.stub(:access_claims, @stub_claims.merge('sub' => '444')) do
|
84
|
+
|
85
|
+
session[@nonce_session_key] = '123'
|
86
|
+
post :create, params: @token_params, format: :json
|
87
|
+
|
88
|
+
assert response.code == '302'
|
89
|
+
assert response.body.match?(/error=verification_failed/)
|
90
|
+
end
|
91
|
+
end
|
92
|
+
end
|
93
|
+
end
|
94
|
+
end
|
@@ -0,0 +1,45 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
|
3
|
+
describe PrxAuth::Rails::Token do
|
4
|
+
let (:aur) { { "123" => "test_app:read other_namespace:write", "*" => "test_app:add" } }
|
5
|
+
let (:sub) { "123" }
|
6
|
+
let (:scope) { "one two three" }
|
7
|
+
let (:token_data) { Rack::PrxAuth::TokenData.new("aur" => aur, "scope" => scope, "sub" => sub)}
|
8
|
+
let (:mock_token_data) { Minitest::Mock.new(token_data) }
|
9
|
+
let (:token) { PrxAuth::Rails::Token.new(mock_token_data) }
|
10
|
+
|
11
|
+
it 'automatically namespaces requests' do
|
12
|
+
mock_token_data.expect(:authorized?, true, ["123", :test_app, :read])
|
13
|
+
assert token.authorized?("123", :read)
|
14
|
+
|
15
|
+
mock_token_data.expect(:resources, ["123"], [:test_app, :read])
|
16
|
+
assert token.resources(:read) === ['123']
|
17
|
+
|
18
|
+
mock_token_data.expect(:globally_authorized?, true, [:test_app, :add])
|
19
|
+
assert token.globally_authorized?(:add)
|
20
|
+
|
21
|
+
mock_token_data.verify
|
22
|
+
end
|
23
|
+
|
24
|
+
it 'allows unscoped calls to authorized?' do
|
25
|
+
assert token.authorized?("123")
|
26
|
+
end
|
27
|
+
|
28
|
+
it 'allows unscoped calls to resources' do
|
29
|
+
assert token.resources == [ "123" ]
|
30
|
+
end
|
31
|
+
|
32
|
+
it 'allows manual setting of namespace' do
|
33
|
+
assert token.authorized?("123", :other_namespace, :write)
|
34
|
+
assert !token.authorized?("123", :other_namespace, :read)
|
35
|
+
|
36
|
+
assert token.resources(:other_namespace, :write) == ["123"]
|
37
|
+
assert token.resources(:other_namespace, :read) == []
|
38
|
+
|
39
|
+
assert token.globally_authorized?(:add)
|
40
|
+
assert token.globally_authorized?(:test_app, :add)
|
41
|
+
assert !token.globally_authorized?(:other_namespace, :add)
|
42
|
+
end
|
43
|
+
|
44
|
+
|
45
|
+
end
|
data/test/test_helper.rb
ADDED
@@ -0,0 +1,35 @@
|
|
1
|
+
require 'coveralls'
|
2
|
+
|
3
|
+
Coveralls.wear!
|
4
|
+
|
5
|
+
require 'minitest/autorun'
|
6
|
+
require 'minitest/spec'
|
7
|
+
require 'minitest/pride'
|
8
|
+
require 'action_pack'
|
9
|
+
require 'action_controller'
|
10
|
+
require 'action_view'
|
11
|
+
require 'rails'
|
12
|
+
require 'rails/generators'
|
13
|
+
require 'rails/generators/test_case'
|
14
|
+
require 'pry'
|
15
|
+
|
16
|
+
require 'prx_auth/rails'
|
17
|
+
|
18
|
+
# Configure Rails Environment
|
19
|
+
ENV["RAILS_ENV"] = "test"
|
20
|
+
ENV['PRX_CLIENT_ID'] = '12345'
|
21
|
+
|
22
|
+
|
23
|
+
require_relative "../test/dummy/config/environment"
|
24
|
+
ActiveRecord::Migrator.migrations_paths = [File.expand_path("../test/dummy/db/migrate", __dir__)]
|
25
|
+
ActiveRecord::Migrator.migrations_paths << File.expand_path('../db/migrate', __dir__)
|
26
|
+
require "rails/test_help"
|
27
|
+
|
28
|
+
|
29
|
+
# Load fixtures from the engine
|
30
|
+
if ActiveSupport::TestCase.respond_to?(:fixture_path=)
|
31
|
+
ActiveSupport::TestCase.fixture_path = File.expand_path("fixtures", __dir__)
|
32
|
+
ActionDispatch::IntegrationTest.fixture_path = ActiveSupport::TestCase.fixture_path
|
33
|
+
ActiveSupport::TestCase.file_fixture_path = ActiveSupport::TestCase.fixture_path + "/files"
|
34
|
+
ActiveSupport::TestCase.fixtures :all
|
35
|
+
end
|
metadata
CHANGED
@@ -1,31 +1,129 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: prx_auth-rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 1.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Chris Rhoden
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-02-16 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: actionpack
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ">="
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '0'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ">="
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '0'
|
13
27
|
- !ruby/object:Gem::Dependency
|
14
28
|
name: bundler
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ">="
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '0'
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ">="
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '0'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: rake
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - ">="
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '0'
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - ">="
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: coveralls
|
15
57
|
requirement: !ruby/object:Gem::Requirement
|
16
58
|
requirements:
|
17
59
|
- - "~>"
|
18
60
|
- !ruby/object:Gem::Version
|
19
|
-
version: '
|
61
|
+
version: '0'
|
20
62
|
type: :development
|
21
63
|
prerelease: false
|
22
64
|
version_requirements: !ruby/object:Gem::Requirement
|
23
65
|
requirements:
|
24
66
|
- - "~>"
|
25
67
|
- !ruby/object:Gem::Version
|
26
|
-
version: '
|
68
|
+
version: '0'
|
27
69
|
- !ruby/object:Gem::Dependency
|
28
|
-
name:
|
70
|
+
name: guard
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - ">="
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '0'
|
76
|
+
type: :development
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - ">="
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '0'
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: guard-minitest
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - ">="
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: '0'
|
90
|
+
type: :development
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - ">="
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: '0'
|
97
|
+
- !ruby/object:Gem::Dependency
|
98
|
+
name: rails
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - "~>"
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: 6.1.0
|
104
|
+
type: :development
|
105
|
+
prerelease: false
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - "~>"
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: 6.1.0
|
111
|
+
- !ruby/object:Gem::Dependency
|
112
|
+
name: pry
|
113
|
+
requirement: !ruby/object:Gem::Requirement
|
114
|
+
requirements:
|
115
|
+
- - ">="
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: '0'
|
118
|
+
type: :development
|
119
|
+
prerelease: false
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
requirements:
|
122
|
+
- - ">="
|
123
|
+
- !ruby/object:Gem::Version
|
124
|
+
version: '0'
|
125
|
+
- !ruby/object:Gem::Dependency
|
126
|
+
name: sqlite3
|
29
127
|
requirement: !ruby/object:Gem::Requirement
|
30
128
|
requirements:
|
31
129
|
- - ">="
|
@@ -39,22 +137,22 @@ dependencies:
|
|
39
137
|
- !ruby/object:Gem::Version
|
40
138
|
version: '0'
|
41
139
|
- !ruby/object:Gem::Dependency
|
42
|
-
name:
|
140
|
+
name: prx_auth
|
43
141
|
requirement: !ruby/object:Gem::Requirement
|
44
142
|
requirements:
|
45
143
|
- - "~>"
|
46
144
|
- !ruby/object:Gem::Version
|
47
|
-
version:
|
145
|
+
version: '1.2'
|
48
146
|
type: :runtime
|
49
147
|
prerelease: false
|
50
148
|
version_requirements: !ruby/object:Gem::Requirement
|
51
149
|
requirements:
|
52
150
|
- - "~>"
|
53
151
|
- !ruby/object:Gem::Version
|
54
|
-
version:
|
152
|
+
version: '1.2'
|
55
153
|
description: 'Rails integration for next generation PRX Authorization system.
|
56
154
|
|
57
|
-
'
|
155
|
+
'
|
58
156
|
email:
|
59
157
|
- carhoden@gmail.com
|
60
158
|
executables: []
|
@@ -63,19 +161,87 @@ extra_rdoc_files: []
|
|
63
161
|
files:
|
64
162
|
- ".gitignore"
|
65
163
|
- Gemfile
|
164
|
+
- Guardfile
|
66
165
|
- LICENSE.txt
|
67
166
|
- README.md
|
68
167
|
- Rakefile
|
168
|
+
- app/controllers/prx_auth/rails/sessions_controller.rb
|
169
|
+
- app/views/prx_auth/rails/sessions/auth_error.html.erb
|
170
|
+
- app/views/prx_auth/rails/sessions/show.html.erb
|
171
|
+
- config/routes.rb
|
69
172
|
- lib/prx_auth/rails.rb
|
173
|
+
- lib/prx_auth/rails/configuration.rb
|
174
|
+
- lib/prx_auth/rails/engine.rb
|
70
175
|
- lib/prx_auth/rails/ext/controller.rb
|
71
176
|
- lib/prx_auth/rails/railtie.rb
|
177
|
+
- lib/prx_auth/rails/token.rb
|
72
178
|
- lib/prx_auth/rails/version.rb
|
73
179
|
- prx_auth-rails.gemspec
|
180
|
+
- test/dummy/Rakefile
|
181
|
+
- test/dummy/app/assets/config/manifest.js
|
182
|
+
- test/dummy/app/assets/images/.keep
|
183
|
+
- test/dummy/app/assets/stylesheets/application.css
|
184
|
+
- test/dummy/app/channels/application_cable/channel.rb
|
185
|
+
- test/dummy/app/channels/application_cable/connection.rb
|
186
|
+
- test/dummy/app/controllers/application_controller.rb
|
187
|
+
- test/dummy/app/controllers/concerns/.keep
|
188
|
+
- test/dummy/app/helpers/application_helper.rb
|
189
|
+
- test/dummy/app/javascript/packs/application.js
|
190
|
+
- test/dummy/app/jobs/application_job.rb
|
191
|
+
- test/dummy/app/mailers/application_mailer.rb
|
192
|
+
- test/dummy/app/models/application_record.rb
|
193
|
+
- test/dummy/app/models/concerns/.keep
|
194
|
+
- test/dummy/app/views/layouts/application.html.erb
|
195
|
+
- test/dummy/app/views/layouts/mailer.html.erb
|
196
|
+
- test/dummy/app/views/layouts/mailer.text.erb
|
197
|
+
- test/dummy/bin/rails
|
198
|
+
- test/dummy/bin/rake
|
199
|
+
- test/dummy/bin/setup
|
200
|
+
- test/dummy/bin/spring
|
201
|
+
- test/dummy/config.ru
|
202
|
+
- test/dummy/config/application.rb
|
203
|
+
- test/dummy/config/boot.rb
|
204
|
+
- test/dummy/config/cable.yml
|
205
|
+
- test/dummy/config/database.yml
|
206
|
+
- test/dummy/config/environment.rb
|
207
|
+
- test/dummy/config/environments/development.rb
|
208
|
+
- test/dummy/config/environments/production.rb
|
209
|
+
- test/dummy/config/environments/test.rb
|
210
|
+
- test/dummy/config/initializers/application_controller_renderer.rb
|
211
|
+
- test/dummy/config/initializers/assets.rb
|
212
|
+
- test/dummy/config/initializers/backtrace_silencers.rb
|
213
|
+
- test/dummy/config/initializers/content_security_policy.rb
|
214
|
+
- test/dummy/config/initializers/cookies_serializer.rb
|
215
|
+
- test/dummy/config/initializers/filter_parameter_logging.rb
|
216
|
+
- test/dummy/config/initializers/inflections.rb
|
217
|
+
- test/dummy/config/initializers/mime_types.rb
|
218
|
+
- test/dummy/config/initializers/permissions_policy.rb
|
219
|
+
- test/dummy/config/initializers/prx_auth.rb
|
220
|
+
- test/dummy/config/initializers/wrap_parameters.rb
|
221
|
+
- test/dummy/config/locales/en.yml
|
222
|
+
- test/dummy/config/puma.rb
|
223
|
+
- test/dummy/config/routes.rb
|
224
|
+
- test/dummy/config/spring.rb
|
225
|
+
- test/dummy/config/storage.yml
|
226
|
+
- test/dummy/lib/assets/.keep
|
227
|
+
- test/dummy/log/.keep
|
228
|
+
- test/dummy/public/404.html
|
229
|
+
- test/dummy/public/422.html
|
230
|
+
- test/dummy/public/500.html
|
231
|
+
- test/dummy/public/apple-touch-icon-precomposed.png
|
232
|
+
- test/dummy/public/apple-touch-icon.png
|
233
|
+
- test/dummy/public/favicon.ico
|
234
|
+
- test/dummy/storage/.keep
|
235
|
+
- test/log/development.log
|
236
|
+
- test/prx_auth/rails/configuration_test.rb
|
237
|
+
- test/prx_auth/rails/sessions_controller_test.rb
|
238
|
+
- test/prx_auth/rails/token_test.rb
|
239
|
+
- test/test_helper.rb
|
74
240
|
homepage: https://github.com/PRX/prx_auth-rails
|
75
241
|
licenses:
|
76
242
|
- MIT
|
77
243
|
metadata: {}
|
78
|
-
post_install_message:
|
244
|
+
post_install_message:
|
79
245
|
rdoc_options: []
|
80
246
|
require_paths:
|
81
247
|
- lib
|
@@ -90,9 +256,69 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
90
256
|
- !ruby/object:Gem::Version
|
91
257
|
version: '0'
|
92
258
|
requirements: []
|
93
|
-
rubyforge_project:
|
259
|
+
rubyforge_project:
|
94
260
|
rubygems_version: 2.7.6.2
|
95
|
-
signing_key:
|
261
|
+
signing_key:
|
96
262
|
specification_version: 4
|
97
263
|
summary: Rails integration for next generation PRX Authorization system.
|
98
|
-
test_files:
|
264
|
+
test_files:
|
265
|
+
- test/dummy/Rakefile
|
266
|
+
- test/dummy/app/assets/config/manifest.js
|
267
|
+
- test/dummy/app/assets/images/.keep
|
268
|
+
- test/dummy/app/assets/stylesheets/application.css
|
269
|
+
- test/dummy/app/channels/application_cable/channel.rb
|
270
|
+
- test/dummy/app/channels/application_cable/connection.rb
|
271
|
+
- test/dummy/app/controllers/application_controller.rb
|
272
|
+
- test/dummy/app/controllers/concerns/.keep
|
273
|
+
- test/dummy/app/helpers/application_helper.rb
|
274
|
+
- test/dummy/app/javascript/packs/application.js
|
275
|
+
- test/dummy/app/jobs/application_job.rb
|
276
|
+
- test/dummy/app/mailers/application_mailer.rb
|
277
|
+
- test/dummy/app/models/application_record.rb
|
278
|
+
- test/dummy/app/models/concerns/.keep
|
279
|
+
- test/dummy/app/views/layouts/application.html.erb
|
280
|
+
- test/dummy/app/views/layouts/mailer.html.erb
|
281
|
+
- test/dummy/app/views/layouts/mailer.text.erb
|
282
|
+
- test/dummy/bin/rails
|
283
|
+
- test/dummy/bin/rake
|
284
|
+
- test/dummy/bin/setup
|
285
|
+
- test/dummy/bin/spring
|
286
|
+
- test/dummy/config.ru
|
287
|
+
- test/dummy/config/application.rb
|
288
|
+
- test/dummy/config/boot.rb
|
289
|
+
- test/dummy/config/cable.yml
|
290
|
+
- test/dummy/config/database.yml
|
291
|
+
- test/dummy/config/environment.rb
|
292
|
+
- test/dummy/config/environments/development.rb
|
293
|
+
- test/dummy/config/environments/production.rb
|
294
|
+
- test/dummy/config/environments/test.rb
|
295
|
+
- test/dummy/config/initializers/application_controller_renderer.rb
|
296
|
+
- test/dummy/config/initializers/assets.rb
|
297
|
+
- test/dummy/config/initializers/backtrace_silencers.rb
|
298
|
+
- test/dummy/config/initializers/content_security_policy.rb
|
299
|
+
- test/dummy/config/initializers/cookies_serializer.rb
|
300
|
+
- test/dummy/config/initializers/filter_parameter_logging.rb
|
301
|
+
- test/dummy/config/initializers/inflections.rb
|
302
|
+
- test/dummy/config/initializers/mime_types.rb
|
303
|
+
- test/dummy/config/initializers/permissions_policy.rb
|
304
|
+
- test/dummy/config/initializers/prx_auth.rb
|
305
|
+
- test/dummy/config/initializers/wrap_parameters.rb
|
306
|
+
- test/dummy/config/locales/en.yml
|
307
|
+
- test/dummy/config/puma.rb
|
308
|
+
- test/dummy/config/routes.rb
|
309
|
+
- test/dummy/config/spring.rb
|
310
|
+
- test/dummy/config/storage.yml
|
311
|
+
- test/dummy/lib/assets/.keep
|
312
|
+
- test/dummy/log/.keep
|
313
|
+
- test/dummy/public/404.html
|
314
|
+
- test/dummy/public/422.html
|
315
|
+
- test/dummy/public/500.html
|
316
|
+
- test/dummy/public/apple-touch-icon-precomposed.png
|
317
|
+
- test/dummy/public/apple-touch-icon.png
|
318
|
+
- test/dummy/public/favicon.ico
|
319
|
+
- test/dummy/storage/.keep
|
320
|
+
- test/log/development.log
|
321
|
+
- test/prx_auth/rails/configuration_test.rb
|
322
|
+
- test/prx_auth/rails/sessions_controller_test.rb
|
323
|
+
- test/prx_auth/rails/token_test.rb
|
324
|
+
- test/test_helper.rb
|