saml-kit-cli 0.2.0 → 0.3.0

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
  SHA256:
3
- metadata.gz: 0fb542ea66030e180f9b67fe521d4cef1ec02753e148910c7034dadc6ef6fc71
4
- data.tar.gz: 246689f4c06edfab96903c2db6af5d98e27377febffcdc8d792513f6bee8e318
3
+ metadata.gz: 1ef88fa993a4960f8bad06af2fb7aecc46fb00748a6443bdad18f85cab2a0cb3
4
+ data.tar.gz: f9cf7c5c2ae3166c328fcadc8a7c58b4a41d6f39eb9c181043e8720e3050b342
5
5
  SHA512:
6
- metadata.gz: e4851b61cf2ada815b89753456c7bf135250f33ded82292556bbe23293c20994f2d7dd2affde3ef5e6714b8b6118d152c1165da98e1573522dd3cae26a17eec8
7
- data.tar.gz: a0bc219c9a0c421cfe7543c86f136f2d703fb5b16fa64c88903daefb40b123b858f682ed39a34a0694fbc7a97faf815a70b0f2f245f80aa270aba0196eab72d6
6
+ metadata.gz: 729fc3f950dddf6e778d21d8b028920e3cb99b642222cf777858e93616a8cdfdf6e454f9dff3fb29d7f655afdaa461558f3459d542e7e26c1c7e3b9d4be4a47c
7
+ data.tar.gz: c2e82c231509878a9b31976d3b80f9029b23a0867428c504f11a1f6f5d395bd20dbed2175230626932906a0b5bdf7df2be77e8e814d73f96fd39cf6ddd727d96
data/lib/saml/kit/cli.rb CHANGED
@@ -2,10 +2,11 @@ require "saml/kit"
2
2
  require "thor"
3
3
  require "yaml/store"
4
4
 
5
- require "saml/kit/cli/decode"
6
5
  require "saml/kit/cli/certificate"
6
+ require "saml/kit/cli/decode"
7
7
  require "saml/kit/cli/metadata"
8
8
  require "saml/kit/cli/version"
9
+ require "saml/kit/cli/xml_digital_signature"
9
10
  require "saml/kit/cli/yaml_registry"
10
11
 
11
12
  module Saml
@@ -20,6 +21,9 @@ module Saml
20
21
 
21
22
  desc "metadata SUBCOMMAND ...ARGS", "Work with SAML Metadata."
22
23
  subcommand "metadata", Metadata
24
+
25
+ desc "xmldsig SUBCOMMAND ...ARGS", "Check XML digital signatures."
26
+ subcommand "xmldsig", XmlDigitalSignature
23
27
  end
24
28
  end
25
29
  end
@@ -1,7 +1,7 @@
1
1
  module Saml
2
2
  module Kit
3
3
  module Cli
4
- VERSION = "0.2.0"
4
+ VERSION = "0.3.0"
5
5
  end
6
6
  end
7
7
  end
@@ -0,0 +1,32 @@
1
+ module Saml
2
+ module Kit
3
+ module Cli
4
+ class XmlDigitalSignature < Thor
5
+ desc "verify file", "Verify if the contents of a file has a valid signature."
6
+ method_option :format, default: "short", required: false, enum: ["short", "full"]
7
+ def verify(file)
8
+ format = options[:format]
9
+ path = File.expand_path(file)
10
+ say_status :status, "Attempting to read #{path}...", :yellow
11
+ content = IO.read(path)
12
+ document = ::Xml::Kit::Document.new(content)
13
+
14
+ if document.valid?
15
+ say_status :success, "#{file} is valid", :green
16
+ else
17
+ document.errors.full_messages.each do |error|
18
+ say_status :error, error, :red
19
+ end
20
+
21
+ if "full" == format
22
+ document.send(:invalid_signatures).each_with_index do |invalid_signature, index|
23
+ say "Signature: #{index}"
24
+ say invalid_signature.signature.to_xml(indent: 2), :red
25
+ end
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
31
+ end
32
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: saml-kit-cli
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - mo khan
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-02-07 00:00:00.000000000 Z
11
+ date: 2018-02-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: saml-kit
@@ -103,6 +103,7 @@ files:
103
103
  - lib/saml/kit/cli/decode.rb
104
104
  - lib/saml/kit/cli/metadata.rb
105
105
  - lib/saml/kit/cli/version.rb
106
+ - lib/saml/kit/cli/xml_digital_signature.rb
106
107
  - lib/saml/kit/cli/yaml_registry.rb
107
108
  - saml-kit-cli.gemspec
108
109
  homepage: http://www.mokhan.ca/