Class: OneLogin::RubySaml::SamlMessage
- Inherits:
-
Object
- Object
- OneLogin::RubySaml::SamlMessage
show all
- Includes:
- REXML
- Defined in:
- lib/onelogin/ruby-saml/saml_message.rb
Constant Summary
collapse
- ASSERTION =
"urn:oasis:names:tc:SAML:2.0:assertion"
- PROTOCOL =
"urn:oasis:names:tc:SAML:2.0:protocol"
Instance Method Summary
collapse
Instance Method Details
#valid_saml?(document, soft = true) ⇒ Boolean
15
16
17
18
19
20
21
22
23
24
25
|
# File 'lib/onelogin/ruby-saml/saml_message.rb', line 15
def valid_saml?(document, soft = true)
Dir.chdir(File.expand_path(File.join(File.dirname(__FILE__), '..', '..', 'schemas'))) do
@schema = Nokogiri::XML::Schema(IO.read('saml-schema-protocol-2.0.xsd'))
@xml = Nokogiri::XML(document.to_s)
end
if soft
@schema.validate(@xml).map{ return false }
else
@schema.validate(@xml).map{ |error| validation_error("#{error.message}\n\n#{@xml.to_s}") }
end
end
|
#validation_error(message) ⇒ Object
27
28
29
|
# File 'lib/onelogin/ruby-saml/saml_message.rb', line 27
def validation_error(message)
raise ValidationError.new(message)
end
|