ehsso 0.1.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.
- checksums.yaml +7 -0
- data/.gitignore +12 -0
- data/.rspec +2 -0
- data/Gemfile +4 -0
- data/README.md +33 -0
- data/Rakefile +6 -0
- data/app/models/person.rb +41 -0
- data/ehsso.gemspec +31 -0
- data/lib/ehsso/configuration.rb +24 -0
- data/lib/ehsso/engine.rb +7 -0
- data/lib/ehsso/version.rb +3 -0
- data/lib/ehsso.rb +6 -0
- metadata +125 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 5b93c1221ee9a18fec5804e7488fb3ce81cceb52
|
4
|
+
data.tar.gz: d6438365c83ffb0a505daacce4150a97aafc5254
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 1a260faacd4236e50ddeb5b6ab68f3f1cdafe262839816682227ea4acdb7b0b4c6e1753d7ec8293c8bbc6b384bbd0c5b8b0242b2caa67e0ce18b005c9c22205e
|
7
|
+
data.tar.gz: 3cb4db6b4706ad0f4364804aebb0aa8e9b0db72d43e0b85aafee1edb1ccb929aa13b4ecf29324565cc553da63cc68c93311a3d8b92b630234b1c77fe0e118b5d
|
data/.gitignore
ADDED
data/.rspec
ADDED
data/Gemfile
ADDED
data/README.md
ADDED
@@ -0,0 +1,33 @@
|
|
1
|
+
# ehsso
|
2
|
+
|
3
|
+
Company specific Single Sign On for Rails applications.
|
4
|
+
|
5
|
+
## Installation
|
6
|
+
|
7
|
+
Simply add ehsso to your Gemfile and bundle it up.
|
8
|
+
|
9
|
+
```Ruby
|
10
|
+
gem 'ehsso'
|
11
|
+
```
|
12
|
+
|
13
|
+
## Configuration
|
14
|
+
|
15
|
+
Configure ehsso with an initializer.
|
16
|
+
|
17
|
+
```Ruby
|
18
|
+
Ehsso.configure do |config|
|
19
|
+
# Application reference
|
20
|
+
config.module_key = 'my_module_key'
|
21
|
+
|
22
|
+
# Service Endpoint
|
23
|
+
config.base_uri = "http://{host}:{port}"
|
24
|
+
end
|
25
|
+
```
|
26
|
+
|
27
|
+
## Usage
|
28
|
+
|
29
|
+
to do....
|
30
|
+
|
31
|
+
## Contributing
|
32
|
+
|
33
|
+
Bug reports and pull requests are welcome on GitHub at https://github.com/[USERNAME]/ehsso.
|
data/Rakefile
ADDED
@@ -0,0 +1,41 @@
|
|
1
|
+
module Ehsso
|
2
|
+
|
3
|
+
class Person
|
4
|
+
|
5
|
+
attr_accessor :id
|
6
|
+
attr_accessor :reference
|
7
|
+
attr_accessor :first_name
|
8
|
+
attr_accessor :last_name
|
9
|
+
attr_accessor :email
|
10
|
+
|
11
|
+
def initialize(args={})
|
12
|
+
@id = args[:id]
|
13
|
+
@reference = args[:reference]
|
14
|
+
@first_name = args[:first_name]
|
15
|
+
@last_name = args[:last_name]
|
16
|
+
@email = args[:email]
|
17
|
+
end
|
18
|
+
|
19
|
+
# def method_missing(method)
|
20
|
+
# @roles.include?(method[0..-2].to_sym)
|
21
|
+
# end
|
22
|
+
|
23
|
+
def full_name
|
24
|
+
return nil if self.last_name.nil? && self.first_name.nil?
|
25
|
+
[self.last_name, self.first_name].compact.join(" ")
|
26
|
+
end
|
27
|
+
|
28
|
+
def self.parse_from_request_header(header={})
|
29
|
+
return nil unless header.is_a?(Hash)
|
30
|
+
|
31
|
+
person = Ehsso::Person.new()
|
32
|
+
|
33
|
+
|
34
|
+
return person
|
35
|
+
end
|
36
|
+
|
37
|
+
|
38
|
+
|
39
|
+
end
|
40
|
+
|
41
|
+
end
|
data/ehsso.gemspec
ADDED
@@ -0,0 +1,31 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
lib = File.expand_path('../lib', __FILE__)
|
3
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
+
require 'ehsso/version'
|
5
|
+
|
6
|
+
Gem::Specification.new do |spec|
|
7
|
+
spec.name = "ehsso"
|
8
|
+
spec.version = Ehsso::VERSION
|
9
|
+
spec.date = "2017-06-14"
|
10
|
+
spec.authors = ["Thomas Steiner"]
|
11
|
+
spec.email = ["thomas.steiner@ikey.ch"]
|
12
|
+
|
13
|
+
spec.summary = %q{EH Single Sign On}
|
14
|
+
spec.description = %q{EH Single Sign On}
|
15
|
+
spec.homepage = "http://github.com/thomis/ehsso"
|
16
|
+
spec.license = "MIT"
|
17
|
+
|
18
|
+
spec.files = `git ls-files -z`.split("\x0").reject do |f|
|
19
|
+
f.match(%r{^(test|spec|features)/})
|
20
|
+
end
|
21
|
+
spec.bindir = "exe"
|
22
|
+
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
23
|
+
spec.require_paths = ["lib"]
|
24
|
+
|
25
|
+
spec.add_development_dependency "bundler", "~> 1.14"
|
26
|
+
spec.add_development_dependency "rake", "~> 10.0"
|
27
|
+
spec.add_development_dependency "rspec", "~> 3.0"
|
28
|
+
spec.add_development_dependency "rails", "~> 5.1"
|
29
|
+
|
30
|
+
spec.add_runtime_dependency("rest-client", "~> 2.0.2")
|
31
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
module Ehsso
|
2
|
+
|
3
|
+
class Configuration
|
4
|
+
attr_accessor :module_key
|
5
|
+
attr_accessor :base_uri
|
6
|
+
attr_accessor :proxy
|
7
|
+
|
8
|
+
def initialize
|
9
|
+
@proxy = nil
|
10
|
+
@module_key = ""
|
11
|
+
@base_uri = ""
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
15
|
+
class << self
|
16
|
+
attr_accessor :configuration
|
17
|
+
end
|
18
|
+
|
19
|
+
def self.configure
|
20
|
+
self.configuration ||= Configuration.new
|
21
|
+
yield(configuration)
|
22
|
+
end
|
23
|
+
|
24
|
+
end
|
data/lib/ehsso/engine.rb
ADDED
data/lib/ehsso.rb
ADDED
metadata
ADDED
@@ -0,0 +1,125 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: ehsso
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Thomas Steiner
|
8
|
+
autorequire:
|
9
|
+
bindir: exe
|
10
|
+
cert_chain: []
|
11
|
+
date: 2017-06-14 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: bundler
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '1.14'
|
20
|
+
type: :development
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - "~>"
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '1.14'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: rake
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - "~>"
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '10.0'
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - "~>"
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '10.0'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: rspec
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - "~>"
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '3.0'
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - "~>"
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '3.0'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: rails
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - "~>"
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '5.1'
|
62
|
+
type: :development
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - "~>"
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '5.1'
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: rest-client
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - "~>"
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: 2.0.2
|
76
|
+
type: :runtime
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - "~>"
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: 2.0.2
|
83
|
+
description: EH Single Sign On
|
84
|
+
email:
|
85
|
+
- thomas.steiner@ikey.ch
|
86
|
+
executables: []
|
87
|
+
extensions: []
|
88
|
+
extra_rdoc_files: []
|
89
|
+
files:
|
90
|
+
- ".gitignore"
|
91
|
+
- ".rspec"
|
92
|
+
- Gemfile
|
93
|
+
- README.md
|
94
|
+
- Rakefile
|
95
|
+
- app/models/person.rb
|
96
|
+
- ehsso.gemspec
|
97
|
+
- lib/ehsso.rb
|
98
|
+
- lib/ehsso/configuration.rb
|
99
|
+
- lib/ehsso/engine.rb
|
100
|
+
- lib/ehsso/version.rb
|
101
|
+
homepage: http://github.com/thomis/ehsso
|
102
|
+
licenses:
|
103
|
+
- MIT
|
104
|
+
metadata: {}
|
105
|
+
post_install_message:
|
106
|
+
rdoc_options: []
|
107
|
+
require_paths:
|
108
|
+
- lib
|
109
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
110
|
+
requirements:
|
111
|
+
- - ">="
|
112
|
+
- !ruby/object:Gem::Version
|
113
|
+
version: '0'
|
114
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
115
|
+
requirements:
|
116
|
+
- - ">="
|
117
|
+
- !ruby/object:Gem::Version
|
118
|
+
version: '0'
|
119
|
+
requirements: []
|
120
|
+
rubyforge_project:
|
121
|
+
rubygems_version: 2.5.1
|
122
|
+
signing_key:
|
123
|
+
specification_version: 4
|
124
|
+
summary: EH Single Sign On
|
125
|
+
test_files: []
|