libsaml 2.24.3 → 3.0.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 7d01e5b55b99fde2637019daaa318dfed1663799
4
- data.tar.gz: 24260073d73b70481f4c402cd0463a2e05a0316b
3
+ metadata.gz: 8358775136d7df4adcd2cdb766fffefdc6a88352
4
+ data.tar.gz: aabc8811b6d09cc43cc4e22237df01582cbaeae6
5
5
  SHA512:
6
- metadata.gz: a6569d32755654648be83347ea24537d488c5bc36c1aac6d7477a70b771a05b95131e856684b550fec957704024adde698378820787a94fa2fb426ead69895a8
7
- data.tar.gz: 1deee01093f54043216583e616fcf68452e72aa4c08cd9c200b64e90c7ddccd0a1fc14bbf7363781f6bcfbc76b560c7793d57ece396f6e62d4f81d1cde787bc3
6
+ metadata.gz: c39601b63f721decde696d6b8e960a0b8bf2d1b98a8b49c9141271cc2f11cf2fdbbf4cebddce4df94916fc8994780712dd74eda18a2cd183854954546321b3c4
7
+ data.tar.gz: 58f15e65b6eff45522b193099164946bd3b9de48e439f3d66c7c4d721a6eeacf74ed72ad9c547b73ee1a6b6014da18c3182c4ad66d0a3c12bb7ae8ee0265611e
@@ -26,11 +26,6 @@ module Saml
26
26
  super(*(args << options))
27
27
  end
28
28
 
29
- def attribute_value
30
- warn '[DEPRECATED] `attribute_value` please use #attribute_values'
31
- attribute_values.first.try(:content)
32
- end
33
-
34
29
  def attribute_value=(value)
35
30
  attribute_value = if value.is_a? String
36
31
  Saml::Elements::AttributeValue.new(content: value)
@@ -29,7 +29,7 @@ module Saml
29
29
  def find_key_descriptor(key_name, use)
30
30
  return key_descriptors.first unless key_name_or_use_specified?
31
31
 
32
- key_descriptors_by_use = find_key_descriptors_by_use(use)
32
+ key_descriptors_by_use = find_key_descriptors_by_use_or_without(use)
33
33
 
34
34
  if key_name.present? && key_name_specified?
35
35
  key_descriptors_by_use.find { |key| key.key_info.key_name == key_name }
@@ -38,9 +38,13 @@ module Saml
38
38
  end
39
39
  end
40
40
 
41
+ def find_key_descriptors_by_use(use)
42
+ key_descriptors.select { |key| key.use == use }
43
+ end
44
+
41
45
  private
42
46
 
43
- def find_key_descriptors_by_use(use)
47
+ def find_key_descriptors_by_use_or_without(use)
44
48
  key_descriptors.select { |key| key.use == use || key.use.blank? }
45
49
  end
46
50
 
@@ -10,16 +10,6 @@ module Saml
10
10
 
11
11
  has_many :attributes, Saml::Elements::Attribute
12
12
  has_many :encrypted_attributes, Saml::Elements::EncryptedAttribute
13
-
14
- def attribute
15
- warn '[DEPRECATED] `attribute` please use #attributes'
16
- attributes
17
- end
18
-
19
- def attribute=(attributes)
20
- warn '[DEPRECATED] `attribute=` please use #attributes='
21
- self.attributes = attributes
22
- end
23
13
  end
24
14
  end
25
15
  end
@@ -23,9 +23,9 @@ module Saml
23
23
  super(*(args << options))
24
24
  end
25
25
 
26
- def encrypt(key_descriptor, key_options = {})
27
- certificate = key_descriptor.certificate
28
- key_name = key_descriptor.key_info.key_name
26
+ def encrypt(key_descriptors, key_options = {})
27
+ key_descriptors = Array(key_descriptors)
28
+ encrypted_keys = []
29
29
 
30
30
  self.encrypted_data = Xmlenc::Builder::EncryptedData.new
31
31
  self.encrypted_data.set_key_retrieval_method Xmlenc::Builder::RetrievalMethod.new(
@@ -34,14 +34,21 @@ module Saml
34
34
  self.encrypted_data.set_encryption_method(
35
35
  algorithm: 'http://www.w3.org/2001/04/xmlenc#aes256-cbc'
36
36
  )
37
- encrypted_key = self.encrypted_data.encrypt(name_id_xml, key_options)
38
- encrypted_key.set_encryption_method(
39
- algorithm: 'http://www.w3.org/2001/04/xmlenc#rsa-oaep-mgf1p',
40
- digest_method_algorithm: 'http://www.w3.org/2000/09/xmldsig#sha1'
41
- )
42
- encrypted_key.set_key_name key_name
43
- encrypted_key.encrypt certificate.public_key
44
- self.encrypted_keys = [encrypted_key]
37
+
38
+ key_descriptors.each do |key_descriptor|
39
+ encrypted_key = self.encrypted_data.encrypt(name_id_xml, key_options)
40
+ encrypted_key.set_encryption_method(
41
+ algorithm: 'http://www.w3.org/2001/04/xmlenc#rsa-oaep-mgf1p',
42
+ digest_method_algorithm: 'http://www.w3.org/2000/09/xmldsig#sha1'
43
+ )
44
+
45
+ encrypted_key.set_key_name(key_descriptor.key_info.key_name)
46
+ encrypted_key.encrypt(key_descriptor.certificate.public_key)
47
+
48
+ encrypted_keys << encrypted_key
49
+ end
50
+
51
+ self.encrypted_keys = encrypted_keys
45
52
  self.name_id = nil
46
53
  end
47
54
 
@@ -12,7 +12,9 @@ module Saml
12
12
  define_method "#{method}_with_notification" do |*args|
13
13
  notify "#{method}", send("#{method}_without_notification", *args)
14
14
  end
15
- alias_method_chain :#{method}, :notification
15
+
16
+ alias_method "#{method}_without_notification", :#{method}
17
+ alias_method :#{method}, "#{method}_with_notification"
16
18
  RUBY
17
19
 
18
20
  if instance_method
data/lib/saml/provider.rb CHANGED
@@ -46,9 +46,8 @@ module Saml
46
46
  descriptor(type).find_key_descriptor(key_name, use)
47
47
  end
48
48
 
49
- def private_key
50
- warn '[DEPRECATED] `private_key` please use signing_key or encryption_key'
51
- encryption_key
49
+ def find_key_descriptors_by_use(use, type = :descriptor)
50
+ descriptor(type).find_key_descriptors_by_use(use)
52
51
  end
53
52
 
54
53
  def signing_key
@@ -3,24 +3,24 @@ module Saml
3
3
  module ControllerHelper
4
4
  def self.included(base)
5
5
  base.extend self
6
- base.before_filter :set_response_headers
6
+ base.before_action :set_response_headers
7
7
  end
8
8
 
9
9
  def current_provider(entity_id_or_method = nil, &block)
10
10
  if block_given?
11
- before_filter &block
11
+ before_action &block
12
12
  else
13
13
  case entity_id_or_method
14
14
  when Symbol
15
- before_filter { Saml.current_provider = send(entity_id_or_method) }
15
+ before_action { Saml.current_provider = send(entity_id_or_method) }
16
16
  else
17
- before_filter { Saml.current_provider = Saml.provider("#{entity_id_or_method}") }
17
+ before_action { Saml.current_provider = Saml.provider("#{entity_id_or_method}") }
18
18
  end
19
19
  end
20
20
  end
21
21
 
22
22
  def current_store(store)
23
- before_filter { Saml.current_store = store }
23
+ before_action { Saml.current_store = store }
24
24
  end
25
25
 
26
26
  def set_response_headers
data/lib/saml/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Saml
2
- VERSION = '2.24.3'
2
+ VERSION = '3.0.1'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: libsaml
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.24.3
4
+ version: 3.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Benoist Claassen
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-06-15 00:00:00.000000000 Z
11
+ date: 2017-01-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -16,28 +16,28 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: 3.2.15
19
+ version: '4.2'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: 3.2.15
26
+ version: '4.2'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: activemodel
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - ">="
32
32
  - !ruby/object:Gem::Version
33
- version: 3.0.0
33
+ version: '4.2'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - ">="
39
39
  - !ruby/object:Gem::Version
40
- version: 3.0.0
40
+ version: '4.2'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: xmlmapper
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -76,22 +76,16 @@ dependencies:
76
76
  name: xmldsig
77
77
  requirement: !ruby/object:Gem::Requirement
78
78
  requirements:
79
- - - ">="
79
+ - - "~>"
80
80
  - !ruby/object:Gem::Version
81
81
  version: 0.5.1
82
- - - "<"
83
- - !ruby/object:Gem::Version
84
- version: 0.7.0
85
82
  type: :runtime
86
83
  prerelease: false
87
84
  version_requirements: !ruby/object:Gem::Requirement
88
85
  requirements:
89
- - - ">="
86
+ - - "~>"
90
87
  - !ruby/object:Gem::Version
91
88
  version: 0.5.1
92
- - - "<"
93
- - !ruby/object:Gem::Version
94
- version: 0.7.0
95
89
  - !ruby/object:Gem::Dependency
96
90
  name: xmlenc
97
91
  requirement: !ruby/object:Gem::Requirement