Sha256: db6c97f3dfbcaedc682df37ba566848562229766d995c92f6074ba06d4eaa1e1

Contents?: true

Size: 541 Bytes

Versions: 1

Compression:

Stored size: 541 Bytes

Contents

require "java"
require "stringio"

module Rails
  module Auth
    module X509
      module Filter
        # Support for extracting X509::Principals from Java's sun.security.x509.X509CertImpl
        class Java
          def call(cert)
            OpenSSL::X509::Certificate.new(extract_der(cert)).freeze
          end

          private

          def extract_der(cert)
            stringio = StringIO.new
            cert.derEncode(stringio.to_outputstream)
            stringio.string
          end
        end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
rails-auth-0.0.1 lib/rails/auth/x509/filter/java.rb