Sha256: d6631945f3dc7df911d9cbe50b1ee0ce98b58af6642bf9fb2692ecbbd3e4927b
Contents?: true
Size: 1.52 KB
Versions: 7
Compression:
Stored size: 1.52 KB
Contents
# frozen_string_literal: true module Mihari module Analyzers # # Censys analyzer # class Censys < Base # @return [String, nil] attr_reader :id # @return [String, nil] attr_reader :secret # # @param [String] query # @param [hash, nil] options # @param [String, nil] id # @param [String, nil] secret # def initialize(query, options: nil, id: nil, secret: nil) super(query, options: options) @id = id || Mihari.config.censys_id @secret = secret || Mihari.config.censys_secret end # # @return [Array<Mihari::Models::Artifact>] # def artifacts client.search_with_pagination(query, pagination_limit: pagination_limit).map do |res| res.result.artifacts end.flatten.uniq(&:data) end # # @return [Boolean] # def configured? configuration_keys? || (id? && secret?) end # # @return [Array<String>] # def configuration_keys %w[censys_id censys_secret] end private # # @return [Mihari::Clients::Censys] # def client Clients::Censys.new( id: id, secret: secret, pagination_interval: pagination_interval, timeout: timeout ) end # # @return [Boolean] # def id? !id.nil? end # # @return [Boolean] # def secret? !secret.nil? end end end end
Version data entries
7 entries across 7 versions & 1 rubygems