ncs_navigator_authority 1.1.1 → 1.2.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.
- data/.rvmrc +1 -1
- data/buildfile +2 -2
- data/lib/ncs_navigator/authorization/core/authority.rb +12 -11
- data/lib/ncs_navigator/authorization/psc/authority.rb +8 -1
- data/lib/ncs_navigator/authorization/staff_portal/connection.rb +4 -3
- data/lib/ncs_navigator/authorization/staff_portal/http_basic.rb +1 -1
- data/lib/ncs_navigator/authorization/version.rb +1 -1
- data/ncs_navigator_authority.gemspec +3 -2
- data/spec/ncs_navigator/authorization/core/authority_spec.rb +18 -5
- data/spec/ncs_navigator/authorization/psc/authority_spec.rb +3 -3
- data/spec/ncs_navigator/authorization/staff_portal/http_basic_spec.rb +14 -5
- data/spec/spec_helper.rb +3 -2
- metadata +136 -131
data/.rvmrc
CHANGED
data/buildfile
CHANGED
@@ -2,6 +2,6 @@ require 'buildr/bnd'
|
|
2
2
|
require 'buildr-gemjar'
|
3
3
|
|
4
4
|
define 'ncs_navigator_authority_gems' do
|
5
|
-
project.version = '1.
|
6
|
-
package(:gemjar).with_gem(:file => _('ncs_navigator_authority-1.
|
5
|
+
project.version = '1.1.3'
|
6
|
+
package(:gemjar).with_gem(:file => _('ncs_navigator_authority-1.2.0.gem')).with_gem('jruby-openssl', '0.7.5')
|
7
7
|
end
|
@@ -1,16 +1,21 @@
|
|
1
1
|
require 'ncs_navigator/configuration'
|
2
2
|
module NcsNavigator::Authorization::Core
|
3
3
|
class Authority
|
4
|
-
|
5
|
-
|
4
|
+
attr_reader :logger
|
5
|
+
attr_reader :staff_portal_uri
|
6
|
+
attr_reader :staff_portal_user
|
7
|
+
attr_reader :staff_portal_password
|
8
|
+
|
9
|
+
def initialize(options = {})
|
10
|
+
@logger = options[:logger] || Logger.new($stderr)
|
11
|
+
@staff_portal_uri = options[:staff_portal_uri] || NcsNavigator.configuration.staff_portal_uri
|
12
|
+
@staff_portal_user = options[:staff_portal_user] || "psc_application"
|
13
|
+
@staff_portal_password = options[:staff_portal_password] || NcsNavigator.configuration.staff_portal['psc_user_password']
|
14
|
+
|
6
15
|
@groups = {}
|
7
16
|
@portal = :NCSNavigator
|
8
17
|
end
|
9
18
|
|
10
|
-
def logger
|
11
|
-
@logger
|
12
|
-
end
|
13
|
-
|
14
19
|
def amplify!(user)
|
15
20
|
base = user(user)
|
16
21
|
return user unless base
|
@@ -61,10 +66,6 @@ module NcsNavigator::Authorization::Core
|
|
61
66
|
|
62
67
|
private
|
63
68
|
|
64
|
-
def staff_portal_uri
|
65
|
-
NcsNavigator.configuration.staff_portal_uri
|
66
|
-
end
|
67
|
-
|
68
69
|
def get_connection(user)
|
69
70
|
connection = staff_portal_client(create_authenticator(user)).connection
|
70
71
|
end
|
@@ -78,7 +79,7 @@ module NcsNavigator::Authorization::Core
|
|
78
79
|
end
|
79
80
|
|
80
81
|
def machine_authenticator
|
81
|
-
{ :basic => [
|
82
|
+
{ :basic => [staff_portal_user, staff_portal_password] }
|
82
83
|
end
|
83
84
|
|
84
85
|
def load_group_memberships(portal, group_data)
|
@@ -3,7 +3,14 @@ require 'logger'
|
|
3
3
|
module NcsNavigator::Authorization::Psc
|
4
4
|
class Authority
|
5
5
|
def initialize(ignored_config=nil)
|
6
|
-
@
|
6
|
+
@logdir = Java::JavaLang::System.getProperty('catalina.base')
|
7
|
+
|
8
|
+
@logger = if !@logdir
|
9
|
+
Logger.new($stderr).tap { |l| l.warn("catalina.base property not set; logging to standard error") }
|
10
|
+
else
|
11
|
+
Logger.new("#{@logdir}/logs/ncs_navigator_authority.log")
|
12
|
+
end
|
13
|
+
|
7
14
|
@staff_portal_connection ||= staff_portal_client.connection
|
8
15
|
end
|
9
16
|
|
@@ -1,12 +1,13 @@
|
|
1
1
|
require 'faraday'
|
2
|
-
require '
|
2
|
+
require 'faraday_middleware'
|
3
|
+
|
3
4
|
module NcsNavigator::Authorization::StaffPortal
|
4
5
|
class Connection < ::Faraday::Connection
|
5
6
|
def initialize(url, options)
|
6
7
|
super do |builder|
|
7
8
|
builder.use *authentication_middleware(options[:authenticator])
|
8
9
|
builder.request :json
|
9
|
-
builder.use
|
10
|
+
builder.use FaradayMiddleware::ParseJson, :content_type => 'application/json'
|
10
11
|
builder.adapter :net_http
|
11
12
|
end
|
12
13
|
end
|
@@ -30,4 +31,4 @@ module NcsNavigator::Authorization::StaffPortal
|
|
30
31
|
end
|
31
32
|
end
|
32
33
|
end
|
33
|
-
end
|
34
|
+
end
|
@@ -4,7 +4,7 @@ module NcsNavigator::Authorization::StaffPortal
|
|
4
4
|
class HttpBasic
|
5
5
|
def initialize(app, username, password)
|
6
6
|
@app = app
|
7
|
-
@header_value = "Basic #{Base64.
|
7
|
+
@header_value = "Basic #{Base64.strict_encode64([username, password].join(':')).strip}"
|
8
8
|
end
|
9
9
|
|
10
10
|
def call(env)
|
@@ -21,12 +21,13 @@ Gem::Specification.new do |s|
|
|
21
21
|
s.add_dependency 'ncs_navigator_configuration', '~> 0.2'
|
22
22
|
s.add_dependency 'aker', '~> 3.0'
|
23
23
|
s.add_dependency 'faraday', '~> 0.7.5'
|
24
|
-
s.add_dependency '
|
24
|
+
s.add_dependency 'faraday_middleware'
|
25
25
|
|
26
26
|
s.add_development_dependency 'rspec', '~> 2.6'
|
27
27
|
s.add_development_dependency 'rake', '~> 0.9.2'
|
28
|
-
s.add_development_dependency 'vcr'
|
28
|
+
s.add_development_dependency 'vcr', '~> 1.0'
|
29
29
|
s.add_development_dependency 'fakeweb'
|
30
|
+
s.add_development_dependency 'ci_reporter'
|
30
31
|
|
31
32
|
# specify any dependencies here; for example:
|
32
33
|
# s.add_development_dependency "rspec"
|
@@ -1,15 +1,29 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
require 'aker'
|
3
3
|
require 'vcr'
|
4
|
-
require 'faraday'
|
5
|
-
require 'faraday_stack'
|
6
|
-
describe NcsNavigator::Authorization::Core::Authority do
|
7
4
|
|
5
|
+
describe NcsNavigator::Authorization::Core::Authority do
|
8
6
|
before do
|
9
7
|
@ncs_navigator_authority = NcsNavigator::Authorization::Core::Authority.new
|
10
8
|
@user = mock(:username => "lee", :cas_proxy_ticket => "PT-cas-ticket")
|
11
9
|
end
|
12
10
|
|
11
|
+
describe '.initialize' do
|
12
|
+
it 'accepts a Staff Portal URI' do
|
13
|
+
a = NcsNavigator::Authorization::Core::Authority.new(:staff_portal_uri => URI('https://navops.example.edu'))
|
14
|
+
|
15
|
+
a.staff_portal_uri.should == URI('https://navops.example.edu')
|
16
|
+
end
|
17
|
+
|
18
|
+
it 'accepts Staff Portal credentials' do
|
19
|
+
a = NcsNavigator::Authorization::Core::Authority.new(:staff_portal_user => 'user',
|
20
|
+
:staff_portal_password => 'foobar')
|
21
|
+
|
22
|
+
a.staff_portal_user.should == 'user'
|
23
|
+
a.staff_portal_password.should == 'foobar'
|
24
|
+
end
|
25
|
+
end
|
26
|
+
|
13
27
|
describe "user" do
|
14
28
|
before do
|
15
29
|
VCR.use_cassette('staff_portal/core/user') do
|
@@ -63,8 +77,7 @@ describe NcsNavigator::Authorization::Core::Authority do
|
|
63
77
|
|
64
78
|
it "should use the configured logger if given" do
|
65
79
|
logger = Logger.new("dummyfile.log")
|
66
|
-
auth = NcsNavigator::Authorization::Core::Authority.new(
|
67
|
-
mock(Aker::Configuration, :logger => logger))
|
80
|
+
auth = NcsNavigator::Authorization::Core::Authority.new(:logger => logger)
|
68
81
|
auth.logger.should == logger
|
69
82
|
end
|
70
83
|
|
@@ -1,11 +1,11 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
require 'aker'
|
3
3
|
require 'vcr'
|
4
|
-
require 'faraday'
|
5
|
-
require 'faraday_stack'
|
6
4
|
|
7
5
|
describe NcsNavigator::Authorization::Psc::Authority do
|
8
6
|
before do
|
7
|
+
pending "These must be run in a Java Ruby environment" unless RUBY_PLATFORM =~ /java/
|
8
|
+
|
9
9
|
@psc_authority = NcsNavigator::Authorization::Psc::Authority.new
|
10
10
|
end
|
11
11
|
|
@@ -296,4 +296,4 @@ describe NcsNavigator::Authorization::Psc::Authority do
|
|
296
296
|
end
|
297
297
|
|
298
298
|
end
|
299
|
-
end
|
299
|
+
end
|
@@ -7,11 +7,20 @@ describe NcsNavigator::Authorization::StaffPortal::HttpBasic do
|
|
7
7
|
|
8
8
|
before { app.stub!(:call) }
|
9
9
|
describe "token" do
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
10
|
+
describe "for shoter passwrod" do
|
11
|
+
subject { NcsNavigator::Authorization::StaffPortal::HttpBasic.new(app, 'user', 'pwd') }
|
12
|
+
it 'adds the appropriate Authorization header' do
|
13
|
+
subject.call(env)
|
14
|
+
headers['Authorization'].should == 'Basic dXNlcjpwd2Q='
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
18
|
+
describe "for longer passwrod" do
|
19
|
+
subject { NcsNavigator::Authorization::StaffPortal::HttpBasic.new(app, 'user', 'a' * 46) }
|
20
|
+
it 'adds the appropriate Authorization header' do
|
21
|
+
subject.call(env)
|
22
|
+
headers['Authorization'].should == 'Basic dXNlcjphYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFh'
|
23
|
+
end
|
15
24
|
end
|
16
25
|
end
|
17
26
|
end
|
data/spec/spec_helper.rb
CHANGED
@@ -12,7 +12,8 @@ require 'ncs_navigator/authorization/staff_portal/client'
|
|
12
12
|
require 'ncs_navigator/authorization/staff_portal/connection'
|
13
13
|
require 'ncs_navigator/authorization/staff_portal/http_basic'
|
14
14
|
|
15
|
-
require '
|
15
|
+
require File.expand_path('../support/vcr_setup', __FILE__)
|
16
|
+
|
16
17
|
RSpec.configure do |config|
|
17
18
|
# config.fixture_path = "/spec/fixtures"
|
18
|
-
end
|
19
|
+
end
|
metadata
CHANGED
@@ -1,154 +1,169 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: ncs_navigator_authority
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 1.2.0
|
5
5
|
prerelease:
|
6
|
-
segments:
|
7
|
-
- 1
|
8
|
-
- 1
|
9
|
-
- 1
|
10
|
-
version: 1.1.1
|
11
6
|
platform: ruby
|
12
|
-
authors:
|
7
|
+
authors:
|
13
8
|
- Jalpa Patel
|
14
9
|
autorequire:
|
15
10
|
bindir: bin
|
16
11
|
cert_chain: []
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
dependencies:
|
21
|
-
- !ruby/object:Gem::Dependency
|
12
|
+
date: 2013-04-22 00:00:00.000000000 Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
22
15
|
name: ncs_navigator_configuration
|
23
|
-
|
24
|
-
requirement: &id001 !ruby/object:Gem::Requirement
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
25
17
|
none: false
|
26
|
-
requirements:
|
18
|
+
requirements:
|
27
19
|
- - ~>
|
28
|
-
- !ruby/object:Gem::Version
|
29
|
-
|
30
|
-
segments:
|
31
|
-
- 0
|
32
|
-
- 2
|
33
|
-
version: "0.2"
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: '0.2'
|
34
22
|
type: :runtime
|
35
|
-
version_requirements: *id001
|
36
|
-
- !ruby/object:Gem::Dependency
|
37
|
-
name: aker
|
38
23
|
prerelease: false
|
39
|
-
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
26
|
+
requirements:
|
27
|
+
- - ~>
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: '0.2'
|
30
|
+
- !ruby/object:Gem::Dependency
|
31
|
+
name: aker
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
40
33
|
none: false
|
41
|
-
requirements:
|
34
|
+
requirements:
|
42
35
|
- - ~>
|
43
|
-
- !ruby/object:Gem::Version
|
44
|
-
|
45
|
-
segments:
|
46
|
-
- 3
|
47
|
-
- 0
|
48
|
-
version: "3.0"
|
36
|
+
- !ruby/object:Gem::Version
|
37
|
+
version: '3.0'
|
49
38
|
type: :runtime
|
50
|
-
version_requirements: *id002
|
51
|
-
- !ruby/object:Gem::Dependency
|
52
|
-
name: faraday
|
53
39
|
prerelease: false
|
54
|
-
|
40
|
+
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
42
|
+
requirements:
|
43
|
+
- - ~>
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: '3.0'
|
46
|
+
- !ruby/object:Gem::Dependency
|
47
|
+
name: faraday
|
48
|
+
requirement: !ruby/object:Gem::Requirement
|
55
49
|
none: false
|
56
|
-
requirements:
|
50
|
+
requirements:
|
57
51
|
- - ~>
|
58
|
-
- !ruby/object:Gem::Version
|
59
|
-
hash: 9
|
60
|
-
segments:
|
61
|
-
- 0
|
62
|
-
- 7
|
63
|
-
- 5
|
52
|
+
- !ruby/object:Gem::Version
|
64
53
|
version: 0.7.5
|
65
54
|
type: :runtime
|
66
|
-
version_requirements: *id003
|
67
|
-
- !ruby/object:Gem::Dependency
|
68
|
-
name: faraday-stack
|
69
55
|
prerelease: false
|
70
|
-
|
56
|
+
version_requirements: !ruby/object:Gem::Requirement
|
71
57
|
none: false
|
72
|
-
requirements:
|
58
|
+
requirements:
|
73
59
|
- - ~>
|
74
|
-
- !ruby/object:Gem::Version
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: 0.7.5
|
62
|
+
- !ruby/object:Gem::Dependency
|
63
|
+
name: faraday_middleware
|
64
|
+
requirement: !ruby/object:Gem::Requirement
|
65
|
+
none: false
|
66
|
+
requirements:
|
67
|
+
- - ! '>='
|
68
|
+
- !ruby/object:Gem::Version
|
69
|
+
version: '0'
|
81
70
|
type: :runtime
|
82
|
-
version_requirements: *id004
|
83
|
-
- !ruby/object:Gem::Dependency
|
84
|
-
name: rspec
|
85
71
|
prerelease: false
|
86
|
-
|
72
|
+
version_requirements: !ruby/object:Gem::Requirement
|
87
73
|
none: false
|
88
|
-
requirements:
|
74
|
+
requirements:
|
75
|
+
- - ! '>='
|
76
|
+
- !ruby/object:Gem::Version
|
77
|
+
version: '0'
|
78
|
+
- !ruby/object:Gem::Dependency
|
79
|
+
name: rspec
|
80
|
+
requirement: !ruby/object:Gem::Requirement
|
81
|
+
none: false
|
82
|
+
requirements:
|
89
83
|
- - ~>
|
90
|
-
- !ruby/object:Gem::Version
|
91
|
-
|
92
|
-
segments:
|
93
|
-
- 2
|
94
|
-
- 6
|
95
|
-
version: "2.6"
|
84
|
+
- !ruby/object:Gem::Version
|
85
|
+
version: '2.6'
|
96
86
|
type: :development
|
97
|
-
version_requirements: *id005
|
98
|
-
- !ruby/object:Gem::Dependency
|
99
|
-
name: rake
|
100
87
|
prerelease: false
|
101
|
-
|
88
|
+
version_requirements: !ruby/object:Gem::Requirement
|
89
|
+
none: false
|
90
|
+
requirements:
|
91
|
+
- - ~>
|
92
|
+
- !ruby/object:Gem::Version
|
93
|
+
version: '2.6'
|
94
|
+
- !ruby/object:Gem::Dependency
|
95
|
+
name: rake
|
96
|
+
requirement: !ruby/object:Gem::Requirement
|
102
97
|
none: false
|
103
|
-
requirements:
|
98
|
+
requirements:
|
104
99
|
- - ~>
|
105
|
-
- !ruby/object:Gem::Version
|
106
|
-
hash: 63
|
107
|
-
segments:
|
108
|
-
- 0
|
109
|
-
- 9
|
110
|
-
- 2
|
100
|
+
- !ruby/object:Gem::Version
|
111
101
|
version: 0.9.2
|
112
102
|
type: :development
|
113
|
-
version_requirements: *id006
|
114
|
-
- !ruby/object:Gem::Dependency
|
115
|
-
name: vcr
|
116
103
|
prerelease: false
|
117
|
-
|
104
|
+
version_requirements: !ruby/object:Gem::Requirement
|
105
|
+
none: false
|
106
|
+
requirements:
|
107
|
+
- - ~>
|
108
|
+
- !ruby/object:Gem::Version
|
109
|
+
version: 0.9.2
|
110
|
+
- !ruby/object:Gem::Dependency
|
111
|
+
name: vcr
|
112
|
+
requirement: !ruby/object:Gem::Requirement
|
118
113
|
none: false
|
119
|
-
requirements:
|
120
|
-
- -
|
121
|
-
- !ruby/object:Gem::Version
|
122
|
-
|
123
|
-
segments:
|
124
|
-
- 0
|
125
|
-
version: "0"
|
114
|
+
requirements:
|
115
|
+
- - ~>
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: '1.0'
|
126
118
|
type: :development
|
127
|
-
|
128
|
-
|
119
|
+
prerelease: false
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
none: false
|
122
|
+
requirements:
|
123
|
+
- - ~>
|
124
|
+
- !ruby/object:Gem::Version
|
125
|
+
version: '1.0'
|
126
|
+
- !ruby/object:Gem::Dependency
|
129
127
|
name: fakeweb
|
128
|
+
requirement: !ruby/object:Gem::Requirement
|
129
|
+
none: false
|
130
|
+
requirements:
|
131
|
+
- - ! '>='
|
132
|
+
- !ruby/object:Gem::Version
|
133
|
+
version: '0'
|
134
|
+
type: :development
|
130
135
|
prerelease: false
|
131
|
-
|
136
|
+
version_requirements: !ruby/object:Gem::Requirement
|
137
|
+
none: false
|
138
|
+
requirements:
|
139
|
+
- - ! '>='
|
140
|
+
- !ruby/object:Gem::Version
|
141
|
+
version: '0'
|
142
|
+
- !ruby/object:Gem::Dependency
|
143
|
+
name: ci_reporter
|
144
|
+
requirement: !ruby/object:Gem::Requirement
|
132
145
|
none: false
|
133
|
-
requirements:
|
134
|
-
- -
|
135
|
-
- !ruby/object:Gem::Version
|
136
|
-
|
137
|
-
segments:
|
138
|
-
- 0
|
139
|
-
version: "0"
|
146
|
+
requirements:
|
147
|
+
- - ! '>='
|
148
|
+
- !ruby/object:Gem::Version
|
149
|
+
version: '0'
|
140
150
|
type: :development
|
141
|
-
|
142
|
-
|
143
|
-
|
151
|
+
prerelease: false
|
152
|
+
version_requirements: !ruby/object:Gem::Requirement
|
153
|
+
none: false
|
154
|
+
requirements:
|
155
|
+
- - ! '>='
|
156
|
+
- !ruby/object:Gem::Version
|
157
|
+
version: '0'
|
158
|
+
description: This is a shared library which consume Staff Portal's authorization API
|
159
|
+
and provides group membership information for the NcsNavigator portal and role authorization
|
160
|
+
mapping for PSC.
|
161
|
+
email:
|
144
162
|
- jalpa-patel@northwestern.edu
|
145
163
|
executables: []
|
146
|
-
|
147
164
|
extensions: []
|
148
|
-
|
149
165
|
extra_rdoc_files: []
|
150
|
-
|
151
|
-
files:
|
166
|
+
files:
|
152
167
|
- .gitignore
|
153
168
|
- .rvmrc
|
154
169
|
- Gemfile
|
@@ -195,41 +210,31 @@ files:
|
|
195
210
|
- spec/ncs_navigator/authorization/staff_portal/http_basic_spec.rb
|
196
211
|
- spec/spec_helper.rb
|
197
212
|
- spec/support/vcr_setup.rb
|
198
|
-
|
199
|
-
homepage: ""
|
213
|
+
homepage: ''
|
200
214
|
licenses: []
|
201
|
-
|
202
215
|
post_install_message:
|
203
216
|
rdoc_options: []
|
204
|
-
|
205
|
-
require_paths:
|
217
|
+
require_paths:
|
206
218
|
- lib
|
207
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
219
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
208
220
|
none: false
|
209
|
-
requirements:
|
210
|
-
- -
|
211
|
-
- !ruby/object:Gem::Version
|
212
|
-
|
213
|
-
|
214
|
-
- 0
|
215
|
-
version: "0"
|
216
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
221
|
+
requirements:
|
222
|
+
- - ! '>='
|
223
|
+
- !ruby/object:Gem::Version
|
224
|
+
version: '0'
|
225
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
217
226
|
none: false
|
218
|
-
requirements:
|
219
|
-
- -
|
220
|
-
- !ruby/object:Gem::Version
|
221
|
-
|
222
|
-
segments:
|
223
|
-
- 0
|
224
|
-
version: "0"
|
227
|
+
requirements:
|
228
|
+
- - ! '>='
|
229
|
+
- !ruby/object:Gem::Version
|
230
|
+
version: '0'
|
225
231
|
requirements: []
|
226
|
-
|
227
232
|
rubyforge_project: ncs_navigator_authority
|
228
|
-
rubygems_version: 1.
|
233
|
+
rubygems_version: 1.8.24
|
229
234
|
signing_key:
|
230
235
|
specification_version: 3
|
231
236
|
summary: Authorization module for NCS Navigator
|
232
|
-
test_files:
|
237
|
+
test_files:
|
233
238
|
- spec/fixtures/.DS_Store
|
234
239
|
- spec/fixtures/vcr_cassettes/staff_portal/core/unknown_user.yml
|
235
240
|
- spec/fixtures/vcr_cassettes/staff_portal/core/user.yml
|