uchouhan-rubycas-server 1.0.a
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/CHANGELOG +289 -0
- data/LICENSE +26 -0
- data/README.md +19 -0
- data/Rakefile +1 -0
- data/bin/rubycas-server +16 -0
- data/bin/rubycas-server-ctl +9 -0
- data/lib/casserver.rb +13 -0
- data/lib/casserver/authenticators/active_directory_ldap.rb +19 -0
- data/lib/casserver/authenticators/authlogic_crypto_providers/aes256.rb +43 -0
- data/lib/casserver/authenticators/authlogic_crypto_providers/bcrypt.rb +92 -0
- data/lib/casserver/authenticators/authlogic_crypto_providers/md5.rb +34 -0
- data/lib/casserver/authenticators/authlogic_crypto_providers/sha1.rb +59 -0
- data/lib/casserver/authenticators/authlogic_crypto_providers/sha512.rb +50 -0
- data/lib/casserver/authenticators/base.rb +67 -0
- data/lib/casserver/authenticators/client_certificate.rb +47 -0
- data/lib/casserver/authenticators/google.rb +58 -0
- data/lib/casserver/authenticators/ldap.rb +147 -0
- data/lib/casserver/authenticators/ntlm.rb +88 -0
- data/lib/casserver/authenticators/open_id.rb +22 -0
- data/lib/casserver/authenticators/sql.rb +133 -0
- data/lib/casserver/authenticators/sql_authlogic.rb +93 -0
- data/lib/casserver/authenticators/sql_encrypted.rb +77 -0
- data/lib/casserver/authenticators/sql_md5.rb +19 -0
- data/lib/casserver/authenticators/sql_rest_auth.rb +85 -0
- data/lib/casserver/authenticators/tacc.rb +67 -0
- data/lib/casserver/authenticators/test.rb +21 -0
- data/lib/casserver/cas.rb +327 -0
- data/lib/casserver/localization.rb +91 -0
- data/lib/casserver/model.rb +269 -0
- data/lib/casserver/server.rb +623 -0
- data/lib/casserver/utils.rb +32 -0
- data/lib/casserver/views/_login_form.erb +41 -0
- data/lib/casserver/views/layout.erb +17 -0
- data/lib/casserver/views/login.erb +29 -0
- data/lib/casserver/views/proxy.builder +11 -0
- data/lib/casserver/views/proxy_validate.builder +26 -0
- data/lib/casserver/views/service_validate.builder +19 -0
- data/lib/casserver/views/validate.erb +1 -0
- data/po/de_DE/rubycas-server.po +127 -0
- data/po/es_ES/rubycas-server.po +123 -0
- data/po/fr_FR/rubycas-server.po +128 -0
- data/po/ja_JP/rubycas-server.po +126 -0
- data/po/pl_PL/rubycas-server.po +123 -0
- data/po/pt_BR/rubycas-server.po +123 -0
- data/po/ru_RU/rubycas-server.po +118 -0
- data/po/rubycas-server.pot +112 -0
- data/po/zh_CN/rubycas-server.po +113 -0
- data/po/zh_TW/rubycas-server.po +113 -0
- data/public/themes/cas.css +121 -0
- data/public/themes/notice.png +0 -0
- data/public/themes/ok.png +0 -0
- data/public/themes/simple/bg.png +0 -0
- data/public/themes/simple/favicon.png +0 -0
- data/public/themes/simple/login_box_bg.png +0 -0
- data/public/themes/simple/logo.png +0 -0
- data/public/themes/simple/theme.css +28 -0
- data/public/themes/tadnet/bg.png +0 -0
- data/public/themes/tadnet/button.png +0 -0
- data/public/themes/tadnet/favicon.png +0 -0
- data/public/themes/tadnet/login_box_bg.png +0 -0
- data/public/themes/tadnet/logo.png +0 -0
- data/public/themes/tadnet/theme.css +55 -0
- data/public/themes/urbacon/bg.png +0 -0
- data/public/themes/urbacon/login_box_bg.png +0 -0
- data/public/themes/urbacon/logo.png +0 -0
- data/public/themes/urbacon/theme.css +33 -0
- data/public/themes/warning.png +0 -0
- data/resources/config.example.yml +574 -0
- data/resources/config.ru +42 -0
- data/resources/custom_views.example.rb +11 -0
- data/resources/init.d.sh +58 -0
- data/rubycas-server.gemspec +40 -0
- data/setup.rb +1585 -0
- data/spec/alt_config.yml +46 -0
- data/spec/casserver_spec.rb +114 -0
- data/spec/default_config.yml +46 -0
- data/spec/spec.opts +4 -0
- data/spec/spec_helper.rb +89 -0
- data/tasks/bundler.rake +4 -0
- data/tasks/db/migrate.rake +12 -0
- data/tasks/localization.rake +13 -0
- data/tasks/spec.rake +10 -0
- metadata +172 -0
data/spec/alt_config.yml
ADDED
@@ -0,0 +1,46 @@
|
|
1
|
+
server: webrick
|
2
|
+
port: 6543
|
3
|
+
#ssl_cert: test.pem
|
4
|
+
uri_path: /test
|
5
|
+
#bind_address: 0.0.0.0
|
6
|
+
|
7
|
+
# database:
|
8
|
+
# adapter: mysql
|
9
|
+
# database: casserver
|
10
|
+
# username: root
|
11
|
+
# password:
|
12
|
+
# host: localhost
|
13
|
+
# reconnect: true
|
14
|
+
database:
|
15
|
+
adapter: sqlite3
|
16
|
+
database: spec/casserver_spec.db
|
17
|
+
|
18
|
+
authenticator:
|
19
|
+
class: CASServer::Authenticators::Test
|
20
|
+
password: spec_password
|
21
|
+
|
22
|
+
theme: simple
|
23
|
+
|
24
|
+
organization: "RSPEC-TEST"
|
25
|
+
|
26
|
+
infoline: "This is an rspec test."
|
27
|
+
|
28
|
+
#custom_views_file: /path/to/custom/views.rb
|
29
|
+
|
30
|
+
default_locale: en
|
31
|
+
|
32
|
+
log:
|
33
|
+
file: casserver_spec.log
|
34
|
+
level: DEBUG
|
35
|
+
|
36
|
+
#db_log:
|
37
|
+
# file: casserver_spec_db.log
|
38
|
+
|
39
|
+
enable_single_sign_out: true
|
40
|
+
|
41
|
+
#maximum_unused_login_ticket_lifetime: 300
|
42
|
+
#maximum_unused_service_ticket_lifetime: 300
|
43
|
+
|
44
|
+
#maximum_session_lifetime: 172800
|
45
|
+
|
46
|
+
#downcase_username: true
|
@@ -0,0 +1,114 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/spec_helper'
|
2
|
+
|
3
|
+
$LOG = Logger.new(File.basename(__FILE__).gsub('.rb','.log'))
|
4
|
+
|
5
|
+
RSpec.configure do |config|
|
6
|
+
config.include Capybara
|
7
|
+
end
|
8
|
+
|
9
|
+
VALID_USERNAME = 'spec_user'
|
10
|
+
VALID_PASSWORD = 'spec_password'
|
11
|
+
|
12
|
+
INVALID_PASSWORD = 'invalid_password'
|
13
|
+
|
14
|
+
describe 'CASServer' do
|
15
|
+
|
16
|
+
before do
|
17
|
+
@target_service = 'http://my.app.test'
|
18
|
+
end
|
19
|
+
|
20
|
+
describe "/login" do
|
21
|
+
before do
|
22
|
+
load_server(File.dirname(__FILE__) + "/default_config.yml")
|
23
|
+
reset_spec_database
|
24
|
+
end
|
25
|
+
|
26
|
+
it "logs in successfully with valid username and password without a target service" do
|
27
|
+
visit "/login"
|
28
|
+
|
29
|
+
fill_in 'username', :with => VALID_USERNAME
|
30
|
+
fill_in 'password', :with => VALID_PASSWORD
|
31
|
+
click_button 'login-submit'
|
32
|
+
|
33
|
+
page.should have_content("You have successfully logged in")
|
34
|
+
end
|
35
|
+
|
36
|
+
it "fails to log in with invalid password" do
|
37
|
+
visit "/login"
|
38
|
+
fill_in 'username', :with => VALID_USERNAME
|
39
|
+
fill_in 'password', :with => INVALID_PASSWORD
|
40
|
+
click_button 'login-submit'
|
41
|
+
|
42
|
+
page.should have_content("Incorrect username or password")
|
43
|
+
end
|
44
|
+
|
45
|
+
it "logs in successfully with valid username and password and redirects to target service" do
|
46
|
+
visit "/login?service="+CGI.escape(@target_service)
|
47
|
+
|
48
|
+
fill_in 'username', :with => VALID_USERNAME
|
49
|
+
fill_in 'password', :with => VALID_PASSWORD
|
50
|
+
|
51
|
+
click_button 'login-submit'
|
52
|
+
|
53
|
+
page.current_url.should =~ /^#{Regexp.escape(@target_service)}\/?\?ticket=ST\-[1-9rA-Z]+/
|
54
|
+
end
|
55
|
+
|
56
|
+
it "preserves target service after invalid login" do
|
57
|
+
visit "/login?service="+CGI.escape(@target_service)
|
58
|
+
|
59
|
+
fill_in 'username', :with => VALID_USERNAME
|
60
|
+
fill_in 'password', :with => INVALID_PASSWORD
|
61
|
+
click_button 'login-submit'
|
62
|
+
|
63
|
+
page.should have_content("Incorrect username or password")
|
64
|
+
page.should have_xpath('//input[@id="service"]', :value => @target_service)
|
65
|
+
end
|
66
|
+
|
67
|
+
it "uses appropriate localization when 'lang' prameter is given" do
|
68
|
+
visit "/login?lang=pl"
|
69
|
+
page.should have_content("Użytkownik")
|
70
|
+
|
71
|
+
visit "/login?lang=pt_BR"
|
72
|
+
page.should have_content("Usuário")
|
73
|
+
|
74
|
+
visit "/login?lang=en"
|
75
|
+
page.should have_content("Username")
|
76
|
+
end
|
77
|
+
|
78
|
+
end # describe '/login'
|
79
|
+
|
80
|
+
|
81
|
+
describe '/logout' do
|
82
|
+
|
83
|
+
before do
|
84
|
+
load_server(File.dirname(__FILE__) + "/default_config.yml")
|
85
|
+
reset_spec_database
|
86
|
+
end
|
87
|
+
|
88
|
+
it "logs out successfully" do
|
89
|
+
visit "/logout"
|
90
|
+
|
91
|
+
page.should have_content("You have successfully logged out")
|
92
|
+
end
|
93
|
+
|
94
|
+
it "logs out successfully and redirects to target service" do
|
95
|
+
visit "/logout?gateway=true&service="+CGI.escape(@target_service)
|
96
|
+
|
97
|
+
page.current_url.should =~ /^#{Regexp.escape(@target_service)}\/?/
|
98
|
+
end
|
99
|
+
|
100
|
+
end # describe '/logout'
|
101
|
+
|
102
|
+
describe 'Configuration' do
|
103
|
+
it "uri_path value changes prefix of routes" do
|
104
|
+
load_server(File.dirname(__FILE__) + "/alt_config.yml")
|
105
|
+
@target_service = 'http://my.app.test'
|
106
|
+
|
107
|
+
visit "/test/login"
|
108
|
+
page.status_code.should_not == 404
|
109
|
+
|
110
|
+
visit "/test/logout"
|
111
|
+
page.status_code.should_not == 404
|
112
|
+
end
|
113
|
+
end
|
114
|
+
end
|
@@ -0,0 +1,46 @@
|
|
1
|
+
server: webrick
|
2
|
+
port: 6543
|
3
|
+
#ssl_cert: test.pem
|
4
|
+
#uri_path: /cas
|
5
|
+
#bind_address: 0.0.0.0
|
6
|
+
|
7
|
+
# database:
|
8
|
+
# adapter: mysql
|
9
|
+
# database: casserver
|
10
|
+
# username: root
|
11
|
+
# password:
|
12
|
+
# host: localhost
|
13
|
+
# reconnect: true
|
14
|
+
database:
|
15
|
+
adapter: sqlite3
|
16
|
+
database: spec/casserver_spec.db
|
17
|
+
|
18
|
+
authenticator:
|
19
|
+
class: CASServer::Authenticators::Test
|
20
|
+
password: spec_password
|
21
|
+
|
22
|
+
theme: simple
|
23
|
+
|
24
|
+
organization: "RSPEC-TEST"
|
25
|
+
|
26
|
+
infoline: "This is an rspec test."
|
27
|
+
|
28
|
+
#custom_views_file: /path/to/custom/views.rb
|
29
|
+
|
30
|
+
default_locale: en
|
31
|
+
|
32
|
+
log:
|
33
|
+
file: casserver_spec.log
|
34
|
+
level: DEBUG
|
35
|
+
|
36
|
+
#db_log:
|
37
|
+
# file: casserver_spec_db.log
|
38
|
+
|
39
|
+
enable_single_sign_out: true
|
40
|
+
|
41
|
+
#maximum_unused_login_ticket_lifetime: 300
|
42
|
+
#maximum_unused_service_ticket_lifetime: 300
|
43
|
+
|
44
|
+
#maximum_session_lifetime: 172800
|
45
|
+
|
46
|
+
#downcase_username: true
|
data/spec/spec.opts
ADDED
data/spec/spec_helper.rb
ADDED
@@ -0,0 +1,89 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'sinatra'
|
3
|
+
require 'rack/test'
|
4
|
+
require 'rspec'
|
5
|
+
#require 'spec/autorun'
|
6
|
+
#require 'spec/interop/test'
|
7
|
+
require 'logger'
|
8
|
+
require 'ostruct'
|
9
|
+
|
10
|
+
require 'capybara'
|
11
|
+
require 'capybara/node'
|
12
|
+
require 'capybara/dsl'
|
13
|
+
|
14
|
+
# set test environment
|
15
|
+
set :environment, :test
|
16
|
+
set :run, false
|
17
|
+
set :raise_errors, true
|
18
|
+
set :logging, false
|
19
|
+
|
20
|
+
|
21
|
+
if Dir.getwd =~ /\/spec$/
|
22
|
+
# Avoid potential weirdness by changing the working directory to the CASServer root
|
23
|
+
FileUtils.cd('..')
|
24
|
+
end
|
25
|
+
|
26
|
+
def silence_warnings
|
27
|
+
old_verbose, $VERBOSE = $VERBOSE, nil
|
28
|
+
yield
|
29
|
+
ensure
|
30
|
+
$VERBOSE = old_verbose
|
31
|
+
end
|
32
|
+
|
33
|
+
# Ugly monkeypatch to allow us to test for correct redirection to
|
34
|
+
# external services.
|
35
|
+
#
|
36
|
+
# This will likely break in the future when Capybara or RackTest are upgraded.
|
37
|
+
class Capybara::Driver::RackTest
|
38
|
+
alias_method :original_follow_redirects!, :follow_redirects!
|
39
|
+
alias_method :original_current_url, :current_url
|
40
|
+
|
41
|
+
def current_url
|
42
|
+
if @redirected_to_external_url
|
43
|
+
@redirected_to_external_url
|
44
|
+
else
|
45
|
+
original_current_url
|
46
|
+
end
|
47
|
+
end
|
48
|
+
|
49
|
+
def follow_redirects!
|
50
|
+
if response['Location'] =~ /^http:/
|
51
|
+
@redirected_to_external_url = response['Location']
|
52
|
+
else
|
53
|
+
original_follow_redirects!
|
54
|
+
end
|
55
|
+
end
|
56
|
+
end
|
57
|
+
|
58
|
+
# This called in specs' `before` block.
|
59
|
+
# Due to the way Sinatra applications are loaded,
|
60
|
+
# we're forced to delay loading of the server code
|
61
|
+
# until the start of each test so that certain
|
62
|
+
# configuraiton options can be changed (e.g. `uri_path`)
|
63
|
+
def load_server(config_file)
|
64
|
+
ENV['CONFIG_FILE'] = config_file
|
65
|
+
|
66
|
+
silence_warnings do
|
67
|
+
load File.dirname(__FILE__) + '/../lib/casserver/server.rb'
|
68
|
+
end
|
69
|
+
|
70
|
+
CASServer::Server.enable(:raise_errors)
|
71
|
+
CASServer::Server.disable(:show_exceptions)
|
72
|
+
|
73
|
+
#Capybara.current_driver = :selenium
|
74
|
+
Capybara.app = CASServer::Server
|
75
|
+
end
|
76
|
+
|
77
|
+
# Deletes the sqlite3 database specified in the app's config
|
78
|
+
# and runs the db:migrate rake tasks to rebuild the database schema.
|
79
|
+
def reset_spec_database
|
80
|
+
raise "Cannot reset the spec database because config[:database][:database] is not defined." unless
|
81
|
+
CASServer::Server.config[:database] && CASServer::Server.config[:database][:database]
|
82
|
+
|
83
|
+
FileUtils.rm_f(CASServer::Server.config[:database][:database])
|
84
|
+
|
85
|
+
ActiveRecord::Base.logger = Logger.new(STDOUT)
|
86
|
+
ActiveRecord::Base.logger.level = Logger::ERROR
|
87
|
+
ActiveRecord::Migration.verbose = false
|
88
|
+
ActiveRecord::Migrator.migrate("db/migrate")
|
89
|
+
end
|
data/tasks/bundler.rake
ADDED
@@ -0,0 +1,12 @@
|
|
1
|
+
namespace :db do
|
2
|
+
desc "bring your CAS server database schema up to date (options CONFIG=/path/to/config.yml)"
|
3
|
+
task :migrate do |t|
|
4
|
+
$: << File.dirname(__FILE__) + "/../../lib"
|
5
|
+
|
6
|
+
require 'casserver/server'
|
7
|
+
|
8
|
+
CASServer::Model::Base.logger = Logger.new(STDOUT)
|
9
|
+
ActiveRecord::Migration.verbose = true
|
10
|
+
ActiveRecord::Migrator.migrate("db/migrate")
|
11
|
+
end
|
12
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
namespace :localization do
|
2
|
+
desc 'Scans the code for translatable strings and generates/updates the .po files'
|
3
|
+
task :po do
|
4
|
+
require 'gettext/utils'
|
5
|
+
GetText.update_pofiles("rubycas-server", Dir.glob("{lib,bin}/**/*.{rb}"), "rubycas-server ")
|
6
|
+
end
|
7
|
+
|
8
|
+
desc 'Creates .mo files from .po files and puts them in the locale dir'
|
9
|
+
task :mo do
|
10
|
+
require 'gettext/utils'
|
11
|
+
GetText.create_mofiles(true, "po", "locale")
|
12
|
+
end
|
13
|
+
end
|
data/tasks/spec.rake
ADDED
@@ -0,0 +1,10 @@
|
|
1
|
+
#begin
|
2
|
+
require 'rspec/core/rake_task'
|
3
|
+
desc 'Run RSpecs to confirm that all functionality is working as expected'
|
4
|
+
RSpec::Core::RakeTask.new('spec') do |t|
|
5
|
+
t.rspec_opts = ['--colour', '--format nested']
|
6
|
+
t.pattern = 'spec/**/*_spec.rb'
|
7
|
+
end
|
8
|
+
#rescue LoadError
|
9
|
+
# puts "Hiding spec tasks because RSpec is not available"
|
10
|
+
#end
|
metadata
ADDED
@@ -0,0 +1,172 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: uchouhan-rubycas-server
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
hash: 114
|
5
|
+
prerelease: true
|
6
|
+
segments:
|
7
|
+
- 1
|
8
|
+
- 0
|
9
|
+
- a
|
10
|
+
version: 1.0.a
|
11
|
+
platform: ruby
|
12
|
+
authors:
|
13
|
+
- Umang Chouhan
|
14
|
+
autorequire:
|
15
|
+
bindir: bin
|
16
|
+
cert_chain: []
|
17
|
+
|
18
|
+
date: 2011-01-04 00:00:00 -08:00
|
19
|
+
default_executable:
|
20
|
+
dependencies: []
|
21
|
+
|
22
|
+
description:
|
23
|
+
email:
|
24
|
+
- uchouhan@optimiscorp.com
|
25
|
+
executables:
|
26
|
+
- rubycas-server
|
27
|
+
extensions: []
|
28
|
+
|
29
|
+
extra_rdoc_files:
|
30
|
+
- CHANGELOG
|
31
|
+
- LICENSE
|
32
|
+
- README.md
|
33
|
+
files:
|
34
|
+
- CHANGELOG
|
35
|
+
- LICENSE
|
36
|
+
- README.md
|
37
|
+
- Rakefile
|
38
|
+
- setup.rb
|
39
|
+
- bin/rubycas-server
|
40
|
+
- bin/rubycas-server-ctl
|
41
|
+
- lib/casserver/authenticators/active_directory_ldap.rb
|
42
|
+
- lib/casserver/authenticators/authlogic_crypto_providers/aes256.rb
|
43
|
+
- lib/casserver/authenticators/authlogic_crypto_providers/bcrypt.rb
|
44
|
+
- lib/casserver/authenticators/authlogic_crypto_providers/md5.rb
|
45
|
+
- lib/casserver/authenticators/authlogic_crypto_providers/sha1.rb
|
46
|
+
- lib/casserver/authenticators/authlogic_crypto_providers/sha512.rb
|
47
|
+
- lib/casserver/authenticators/base.rb
|
48
|
+
- lib/casserver/authenticators/client_certificate.rb
|
49
|
+
- lib/casserver/authenticators/google.rb
|
50
|
+
- lib/casserver/authenticators/ldap.rb
|
51
|
+
- lib/casserver/authenticators/ntlm.rb
|
52
|
+
- lib/casserver/authenticators/open_id.rb
|
53
|
+
- lib/casserver/authenticators/sql.rb
|
54
|
+
- lib/casserver/authenticators/sql_authlogic.rb
|
55
|
+
- lib/casserver/authenticators/sql_encrypted.rb
|
56
|
+
- lib/casserver/authenticators/sql_md5.rb
|
57
|
+
- lib/casserver/authenticators/sql_rest_auth.rb
|
58
|
+
- lib/casserver/authenticators/tacc.rb
|
59
|
+
- lib/casserver/authenticators/test.rb
|
60
|
+
- lib/casserver/cas.rb
|
61
|
+
- lib/casserver/localization.rb
|
62
|
+
- lib/casserver/model.rb
|
63
|
+
- lib/casserver/server.rb
|
64
|
+
- lib/casserver/utils.rb
|
65
|
+
- lib/casserver.rb
|
66
|
+
- public/themes/cas.css
|
67
|
+
- public/themes/notice.png
|
68
|
+
- public/themes/ok.png
|
69
|
+
- public/themes/simple/bg.png
|
70
|
+
- public/themes/simple/favicon.png
|
71
|
+
- public/themes/simple/login_box_bg.png
|
72
|
+
- public/themes/simple/logo.png
|
73
|
+
- public/themes/simple/theme.css
|
74
|
+
- public/themes/tadnet/bg.png
|
75
|
+
- public/themes/tadnet/button.png
|
76
|
+
- public/themes/tadnet/favicon.png
|
77
|
+
- public/themes/tadnet/login_box_bg.png
|
78
|
+
- public/themes/tadnet/logo.png
|
79
|
+
- public/themes/tadnet/theme.css
|
80
|
+
- public/themes/urbacon/bg.png
|
81
|
+
- public/themes/urbacon/login_box_bg.png
|
82
|
+
- public/themes/urbacon/logo.png
|
83
|
+
- public/themes/urbacon/theme.css
|
84
|
+
- public/themes/warning.png
|
85
|
+
- po/de_DE/rubycas-server.po
|
86
|
+
- po/es_ES/rubycas-server.po
|
87
|
+
- po/fr_FR/rubycas-server.po
|
88
|
+
- po/ja_JP/rubycas-server.po
|
89
|
+
- po/pl_PL/rubycas-server.po
|
90
|
+
- po/pt_BR/rubycas-server.po
|
91
|
+
- po/ru_RU/rubycas-server.po
|
92
|
+
- po/rubycas-server.pot
|
93
|
+
- po/zh_CN/rubycas-server.po
|
94
|
+
- po/zh_TW/rubycas-server.po
|
95
|
+
- resources/config.example.yml
|
96
|
+
- resources/config.ru
|
97
|
+
- resources/custom_views.example.rb
|
98
|
+
- resources/init.d.sh
|
99
|
+
- tasks/bundler.rake
|
100
|
+
- tasks/db/migrate.rake
|
101
|
+
- tasks/localization.rake
|
102
|
+
- tasks/spec.rake
|
103
|
+
- lib/casserver/views/_login_form.erb
|
104
|
+
- lib/casserver/views/layout.erb
|
105
|
+
- lib/casserver/views/login.erb
|
106
|
+
- lib/casserver/views/validate.erb
|
107
|
+
- lib/casserver/views/proxy.builder
|
108
|
+
- lib/casserver/views/proxy_validate.builder
|
109
|
+
- lib/casserver/views/service_validate.builder
|
110
|
+
- rubycas-server.gemspec
|
111
|
+
- spec/alt_config.yml
|
112
|
+
- spec/casserver_spec.rb
|
113
|
+
- spec/default_config.yml
|
114
|
+
- spec/spec.opts
|
115
|
+
- spec/spec_helper.rb
|
116
|
+
has_rdoc: true
|
117
|
+
homepage: http://github.com/uchouhan/cas
|
118
|
+
licenses: []
|
119
|
+
|
120
|
+
post_install_message: |+
|
121
|
+
|
122
|
+
For more information on RubyCAS-Server, see http://code.google.com/p/rubycas-server
|
123
|
+
|
124
|
+
If you plan on using RubyCAS-Server with languages other than English, please cd into the
|
125
|
+
RubyCAS-Server installation directory (where the gem is installed) and type `rake localization:mo`
|
126
|
+
to build the LOCALE_LC files.
|
127
|
+
|
128
|
+
rdoc_options:
|
129
|
+
- --quiet
|
130
|
+
- --title
|
131
|
+
- RubyCAS-Server Documentation
|
132
|
+
- --opname
|
133
|
+
- index.html
|
134
|
+
- --line-numbers
|
135
|
+
- --main
|
136
|
+
- README.md
|
137
|
+
- --inline-source
|
138
|
+
require_paths:
|
139
|
+
- lib
|
140
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
141
|
+
none: false
|
142
|
+
requirements:
|
143
|
+
- - ">="
|
144
|
+
- !ruby/object:Gem::Version
|
145
|
+
hash: 3
|
146
|
+
segments:
|
147
|
+
- 0
|
148
|
+
version: "0"
|
149
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
150
|
+
none: false
|
151
|
+
requirements:
|
152
|
+
- - ">"
|
153
|
+
- !ruby/object:Gem::Version
|
154
|
+
hash: 25
|
155
|
+
segments:
|
156
|
+
- 1
|
157
|
+
- 3
|
158
|
+
- 1
|
159
|
+
version: 1.3.1
|
160
|
+
requirements: []
|
161
|
+
|
162
|
+
rubyforge_project:
|
163
|
+
rubygems_version: 1.3.7
|
164
|
+
signing_key:
|
165
|
+
specification_version: 3
|
166
|
+
summary: Provides single sign-on authentication for web applications using the CAS protocol.
|
167
|
+
test_files:
|
168
|
+
- spec/alt_config.yml
|
169
|
+
- spec/casserver_spec.rb
|
170
|
+
- spec/default_config.yml
|
171
|
+
- spec/spec.opts
|
172
|
+
- spec/spec_helper.rb
|