Sha256: b9128a2aa87ff3c6f0165b9e73fd051614d0f21d1e066029600a34734d389012

Contents?: true

Size: 585 Bytes

Versions: 14

Compression:

Stored size: 585 Bytes

Contents

# frozen_string_literal: true

module Awspec::Type
  class Kms < ResourceBase
    def resource_via_client
      @resource_via_client ||= find_kms_key_by_alias(@display_name)
    end

    def id
      @id ||= resource_via_client.arn if resource_via_client
    end

    def enabled?
      resource_via_client.enabled
    end

    def has_key_policy?(policy_name, document = nil)
      res = kms_client.get_key_policy(key_id: id, policy_name: policy_name)
      return JSON.parse(URI.decode_www_form_component(res.policy)) == JSON.parse(document) if document

      res
    end
  end
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
awspec-1.32.0 lib/awspec/type/kms.rb
awspec-1.31.0 lib/awspec/type/kms.rb
awspec-1.30.0 lib/awspec/type/kms.rb
awspec-1.29.3 lib/awspec/type/kms.rb
awspec-1.29.2 lib/awspec/type/kms.rb
awspec-1.29.1 lib/awspec/type/kms.rb
awspec-1.29.0 lib/awspec/type/kms.rb
awspec-1.28.2 lib/awspec/type/kms.rb
awspec-1.28.1 lib/awspec/type/kms.rb
awspec-1.28.0 lib/awspec/type/kms.rb
awspec-1.27.1 lib/awspec/type/kms.rb
awspec-1.27.0 lib/awspec/type/kms.rb
awspec-1.26.0 lib/awspec/type/kms.rb
awspec-1.25.2 lib/awspec/type/kms.rb