Class: OCI::KeyManagement::Models::EncryptDataDetails
- Inherits:
-
Object
- Object
- OCI::KeyManagement::Models::EncryptDataDetails
- Defined in:
- lib/oci/key_management/models/encrypt_data_details.rb
Overview
The details of the plaintext data that you want to encrypt.
Constant Summary collapse
- ENCRYPTION_ALGORITHM_ENUM =
[ ENCRYPTION_ALGORITHM_AES_256_GCM = 'AES_256_GCM'.freeze, ENCRYPTION_ALGORITHM_RSA_OAEP_SHA_1 = 'RSA_OAEP_SHA_1'.freeze, ENCRYPTION_ALGORITHM_RSA_OAEP_SHA_256 = 'RSA_OAEP_SHA_256'.freeze ].freeze
Instance Attribute Summary collapse
-
#associated_data ⇒ Hash<String, String>
Information that can be used to provide an encryption context for the encrypted data.
-
#encryption_algorithm ⇒ String
The encryption algorithm to use to encrypt and decrypt data with a customer-managed key.
-
#key_id ⇒ String
[Required] The OCID of the key to encrypt with.
-
#key_version_id ⇒ String
The OCID of the key version used to encrypt the ciphertext.
-
#logging_context ⇒ Hash<String, String>
Information that provides context for audit logging.
-
#plaintext ⇒ String
[Required] The plaintext data to encrypt.
Class Method Summary collapse
-
.attribute_map ⇒ Object
Attribute mapping from ruby-style variable name to JSON key.
-
.swagger_types ⇒ Object
Attribute type mapping.
Instance Method Summary collapse
-
#==(other) ⇒ Object
Checks equality by comparing each attribute.
-
#build_from_hash(attributes) ⇒ Object
Builds the object from hash.
- #eql?(other) ⇒ Boolean
-
#hash ⇒ Fixnum
Calculates hash code according to all attributes.
-
#initialize(attributes = {}) ⇒ EncryptDataDetails
constructor
Initializes the object.
-
#to_hash ⇒ Hash
Returns the object in the form of hash.
-
#to_s ⇒ String
Returns the string representation of the object.
Constructor Details
#initialize(attributes = {}) ⇒ EncryptDataDetails
Initializes the object
92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 |
# File 'lib/oci/key_management/models/encrypt_data_details.rb', line 92 def initialize(attributes = {}) return unless attributes.is_a?(Hash) # convert string to symbol for hash key attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v } self.associated_data = attributes[:'associatedData'] if attributes[:'associatedData'] raise 'You cannot provide both :associatedData and :associated_data' if attributes.key?(:'associatedData') && attributes.key?(:'associated_data') self.associated_data = attributes[:'associated_data'] if attributes[:'associated_data'] self.key_id = attributes[:'keyId'] if attributes[:'keyId'] raise 'You cannot provide both :keyId and :key_id' if attributes.key?(:'keyId') && attributes.key?(:'key_id') self.key_id = attributes[:'key_id'] if attributes[:'key_id'] self.logging_context = attributes[:'loggingContext'] if attributes[:'loggingContext'] raise 'You cannot provide both :loggingContext and :logging_context' if attributes.key?(:'loggingContext') && attributes.key?(:'logging_context') self.logging_context = attributes[:'logging_context'] if attributes[:'logging_context'] self.plaintext = attributes[:'plaintext'] if attributes[:'plaintext'] self.key_version_id = attributes[:'keyVersionId'] if attributes[:'keyVersionId'] raise 'You cannot provide both :keyVersionId and :key_version_id' if attributes.key?(:'keyVersionId') && attributes.key?(:'key_version_id') self.key_version_id = attributes[:'key_version_id'] if attributes[:'key_version_id'] self.encryption_algorithm = attributes[:'encryptionAlgorithm'] if attributes[:'encryptionAlgorithm'] self.encryption_algorithm = "AES_256_GCM" if encryption_algorithm.nil? && !attributes.key?(:'encryptionAlgorithm') # rubocop:disable Style/StringLiterals raise 'You cannot provide both :encryptionAlgorithm and :encryption_algorithm' if attributes.key?(:'encryptionAlgorithm') && attributes.key?(:'encryption_algorithm') self.encryption_algorithm = attributes[:'encryption_algorithm'] if attributes[:'encryption_algorithm'] self.encryption_algorithm = "AES_256_GCM" if encryption_algorithm.nil? && !attributes.key?(:'encryptionAlgorithm') && !attributes.key?(:'encryption_algorithm') # rubocop:disable Style/StringLiterals end |
Instance Attribute Details
#associated_data ⇒ Hash<String, String>
Information that can be used to provide an encryption context for the encrypted data. The length of the string representation of the associated data must be fewer than 4096 characters.
22 23 24 |
# File 'lib/oci/key_management/models/encrypt_data_details.rb', line 22 def associated_data @associated_data end |
#encryption_algorithm ⇒ String
The encryption algorithm to use to encrypt and decrypt data with a customer-managed key. AES_256_GCM
indicates that the key is a symmetric key that uses the Advanced Encryption Standard (AES) algorithm and that the mode of encryption is the Galois/Counter Mode (GCM). RSA_OAEP_SHA_1
indicates that the key is an asymmetric key that uses the RSA encryption algorithm and uses Optimal Asymmetric Encryption Padding (OAEP). RSA_OAEP_SHA_256
indicates that the key is an asymmetric key that uses the RSA encryption algorithm with a SHA-256 hash and uses OAEP.
50 51 52 |
# File 'lib/oci/key_management/models/encrypt_data_details.rb', line 50 def encryption_algorithm @encryption_algorithm end |
#key_id ⇒ String
[Required] The OCID of the key to encrypt with.
26 27 28 |
# File 'lib/oci/key_management/models/encrypt_data_details.rb', line 26 def key_id @key_id end |
#key_version_id ⇒ String
The OCID of the key version used to encrypt the ciphertext.
40 41 42 |
# File 'lib/oci/key_management/models/encrypt_data_details.rb', line 40 def key_version_id @key_version_id end |
#logging_context ⇒ Hash<String, String>
Information that provides context for audit logging. You can provide this additional data as key-value pairs to include in the audit logs when audit logging is enabled.
32 33 34 |
# File 'lib/oci/key_management/models/encrypt_data_details.rb', line 32 def logging_context @logging_context end |
#plaintext ⇒ String
[Required] The plaintext data to encrypt.
36 37 38 |
# File 'lib/oci/key_management/models/encrypt_data_details.rb', line 36 def plaintext @plaintext end |
Class Method Details
.attribute_map ⇒ Object
Attribute mapping from ruby-style variable name to JSON key.
53 54 55 56 57 58 59 60 61 62 63 64 |
# File 'lib/oci/key_management/models/encrypt_data_details.rb', line 53 def self.attribute_map { # rubocop:disable Style/SymbolLiteral 'associated_data': :'associatedData', 'key_id': :'keyId', 'logging_context': :'loggingContext', 'plaintext': :'plaintext', 'key_version_id': :'keyVersionId', 'encryption_algorithm': :'encryptionAlgorithm' # rubocop:enable Style/SymbolLiteral } end |
.swagger_types ⇒ Object
Attribute type mapping.
67 68 69 70 71 72 73 74 75 76 77 78 |
# File 'lib/oci/key_management/models/encrypt_data_details.rb', line 67 def self.swagger_types { # rubocop:disable Style/SymbolLiteral 'associated_data': :'Hash<String, String>', 'key_id': :'String', 'logging_context': :'Hash<String, String>', 'plaintext': :'String', 'key_version_id': :'String', 'encryption_algorithm': :'String' # rubocop:enable Style/SymbolLiteral } end |
Instance Method Details
#==(other) ⇒ Object
Checks equality by comparing each attribute.
148 149 150 151 152 153 154 155 156 157 158 |
# File 'lib/oci/key_management/models/encrypt_data_details.rb', line 148 def ==(other) return true if equal?(other) self.class == other.class && associated_data == other.associated_data && key_id == other.key_id && logging_context == other.logging_context && plaintext == other.plaintext && key_version_id == other.key_version_id && encryption_algorithm == other.encryption_algorithm end |
#build_from_hash(attributes) ⇒ Object
Builds the object from hash
183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 |
# File 'lib/oci/key_management/models/encrypt_data_details.rb', line 183 def build_from_hash(attributes) return nil unless attributes.is_a?(Hash) self.class.swagger_types.each_pair do |key, type| if type =~ /^Array<(.*)>/i # check to ensure the input is an array given that the the attribute # is documented as an array but the input is not if attributes[self.class.attribute_map[key]].is_a?(Array) public_method("#{key}=").call( attributes[self.class.attribute_map[key]] .map { |v| OCI::Internal::Util.convert_to_type(Regexp.last_match(1), v) } ) end elsif !attributes[self.class.attribute_map[key]].nil? public_method("#{key}=").call( OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]]) ) end # or else data not found in attributes(hash), not an issue as the data can be optional end self end |
#eql?(other) ⇒ Boolean
163 164 165 |
# File 'lib/oci/key_management/models/encrypt_data_details.rb', line 163 def eql?(other) self == other end |
#hash ⇒ Fixnum
Calculates hash code according to all attributes.
172 173 174 |
# File 'lib/oci/key_management/models/encrypt_data_details.rb', line 172 def hash [associated_data, key_id, logging_context, plaintext, key_version_id, encryption_algorithm].hash end |
#to_hash ⇒ Hash
Returns the object in the form of hash
216 217 218 219 220 221 222 223 224 225 |
# File 'lib/oci/key_management/models/encrypt_data_details.rb', line 216 def to_hash hash = {} self.class.attribute_map.each_pair do |attr, param| value = public_method(attr).call next if value.nil? && !instance_variable_defined?("@#{attr}") hash[param] = _to_hash(value) end hash end |
#to_s ⇒ String
Returns the string representation of the object
210 211 212 |
# File 'lib/oci/key_management/models/encrypt_data_details.rb', line 210 def to_s to_hash.to_s end |