Class: Google::Apis::KmsinventoryV1::GoogleCloudKmsV1CryptoKeyVersion
- Inherits:
-
Object
- Object
- Google::Apis::KmsinventoryV1::GoogleCloudKmsV1CryptoKeyVersion
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/kmsinventory_v1/classes.rb,
lib/google/apis/kmsinventory_v1/representations.rb,
lib/google/apis/kmsinventory_v1/representations.rb
Overview
A CryptoKeyVersion represents an individual cryptographic key, and the associated key material. An ENABLED version can be used for cryptographic operations. For security reasons, the raw cryptographic key material represented by a CryptoKeyVersion can never be viewed or exported. It can only be used to encrypt, decrypt, or sign data when an authorized user or application invokes Cloud KMS.
Instance Attribute Summary collapse
-
#algorithm ⇒ String
Output only.
-
#attestation ⇒ Google::Apis::KmsinventoryV1::GoogleCloudKmsV1KeyOperationAttestation
Contains an HSM-generated attestation about a key operation.
-
#create_time ⇒ String
Output only.
-
#destroy_event_time ⇒ String
Output only.
-
#destroy_time ⇒ String
Output only.
-
#external_destruction_failure_reason ⇒ String
Output only.
-
#external_protection_level_options ⇒ Google::Apis::KmsinventoryV1::GoogleCloudKmsV1ExternalProtectionLevelOptions
ExternalProtectionLevelOptions stores a group of additional fields for configuring a CryptoKeyVersion that are specific to the EXTERNAL protection level and EXTERNAL_VPC protection levels.
-
#generate_time ⇒ String
Output only.
-
#generation_failure_reason ⇒ String
Output only.
-
#hsm_trusted ⇒ Boolean
(also: #hsm_trusted?)
Output only.
-
#import_failure_reason ⇒ String
Output only.
-
#import_job ⇒ String
Output only.
-
#import_time ⇒ String
Output only.
-
#name ⇒ String
Output only.
-
#protection_level ⇒ String
Output only.
-
#reimport_eligible ⇒ Boolean
(also: #reimport_eligible?)
Output only.
-
#state ⇒ String
The current state of the CryptoKeyVersion.
-
#trusted_wrapping_enabled ⇒ Boolean
(also: #trusted_wrapping_enabled?)
Immutable.
Instance Method Summary collapse
-
#initialize(**args) ⇒ GoogleCloudKmsV1CryptoKeyVersion
constructor
A new instance of GoogleCloudKmsV1CryptoKeyVersion.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ GoogleCloudKmsV1CryptoKeyVersion
Returns a new instance of GoogleCloudKmsV1CryptoKeyVersion.
490 491 492 |
# File 'lib/google/apis/kmsinventory_v1/classes.rb', line 490 def initialize(**args) update!(**args) end |
Instance Attribute Details
#algorithm ⇒ String
Output only. The CryptoKeyVersionAlgorithm that this CryptoKeyVersion supports.
Corresponds to the JSON property algorithm
379 380 381 |
# File 'lib/google/apis/kmsinventory_v1/classes.rb', line 379 def algorithm @algorithm end |
#attestation ⇒ Google::Apis::KmsinventoryV1::GoogleCloudKmsV1KeyOperationAttestation
Contains an HSM-generated attestation about a key operation. For more
information, see Verifying attestations.
Corresponds to the JSON property attestation
386 387 388 |
# File 'lib/google/apis/kmsinventory_v1/classes.rb', line 386 def attestation @attestation end |
#create_time ⇒ String
Output only. The time at which this CryptoKeyVersion was created.
Corresponds to the JSON property createTime
391 392 393 |
# File 'lib/google/apis/kmsinventory_v1/classes.rb', line 391 def create_time @create_time end |
#destroy_event_time ⇒ String
Output only. The time this CryptoKeyVersion's key material was destroyed. Only
present if state is DESTROYED.
Corresponds to the JSON property destroyEventTime
397 398 399 |
# File 'lib/google/apis/kmsinventory_v1/classes.rb', line 397 def destroy_event_time @destroy_event_time end |
#destroy_time ⇒ String
Output only. The time this CryptoKeyVersion's key material is scheduled for
destruction. Only present if state is DESTROY_SCHEDULED.
Corresponds to the JSON property destroyTime
403 404 405 |
# File 'lib/google/apis/kmsinventory_v1/classes.rb', line 403 def destroy_time @destroy_time end |
#external_destruction_failure_reason ⇒ String
Output only. The root cause of the most recent external destruction failure.
Only present if state is EXTERNAL_DESTRUCTION_FAILED.
Corresponds to the JSON property externalDestructionFailureReason
409 410 411 |
# File 'lib/google/apis/kmsinventory_v1/classes.rb', line 409 def external_destruction_failure_reason @external_destruction_failure_reason end |
#external_protection_level_options ⇒ Google::Apis::KmsinventoryV1::GoogleCloudKmsV1ExternalProtectionLevelOptions
ExternalProtectionLevelOptions stores a group of additional fields for
configuring a CryptoKeyVersion that are specific to the EXTERNAL protection
level and EXTERNAL_VPC protection levels.
Corresponds to the JSON property externalProtectionLevelOptions
416 417 418 |
# File 'lib/google/apis/kmsinventory_v1/classes.rb', line 416 def @external_protection_level_options end |
#generate_time ⇒ String
Output only. The time this CryptoKeyVersion's key material was generated.
Corresponds to the JSON property generateTime
421 422 423 |
# File 'lib/google/apis/kmsinventory_v1/classes.rb', line 421 def generate_time @generate_time end |
#generation_failure_reason ⇒ String
Output only. The root cause of the most recent generation failure. Only
present if state is GENERATION_FAILED.
Corresponds to the JSON property generationFailureReason
427 428 429 |
# File 'lib/google/apis/kmsinventory_v1/classes.rb', line 427 def generation_failure_reason @generation_failure_reason end |
#hsm_trusted ⇒ Boolean Also known as: hsm_trusted?
Output only. Field indicating that the key wrapping key is trusted. This field
is only valid for key purpose AES_256_WRAPPING, and protection level
HSM_SINGLE_TENANT.
Corresponds to the JSON property hsmTrusted
434 435 436 |
# File 'lib/google/apis/kmsinventory_v1/classes.rb', line 434 def hsm_trusted @hsm_trusted end |
#import_failure_reason ⇒ String
Output only. The root cause of the most recent import failure. Only present if
state is IMPORT_FAILED.
Corresponds to the JSON property importFailureReason
441 442 443 |
# File 'lib/google/apis/kmsinventory_v1/classes.rb', line 441 def import_failure_reason @import_failure_reason end |
#import_job ⇒ String
Output only. The name of the ImportJob used in the most recent import of this
CryptoKeyVersion. Only present if the underlying key material was imported.
Corresponds to the JSON property importJob
447 448 449 |
# File 'lib/google/apis/kmsinventory_v1/classes.rb', line 447 def import_job @import_job end |
#import_time ⇒ String
Output only. The time at which this CryptoKeyVersion's key material was most
recently imported.
Corresponds to the JSON property importTime
453 454 455 |
# File 'lib/google/apis/kmsinventory_v1/classes.rb', line 453 def import_time @import_time end |
#name ⇒ String
Output only. The resource name for this CryptoKeyVersion in the format
projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*.
Corresponds to the JSON property name
459 460 461 |
# File 'lib/google/apis/kmsinventory_v1/classes.rb', line 459 def name @name end |
#protection_level ⇒ String
Output only. The ProtectionLevel describing how crypto operations are
performed with this CryptoKeyVersion.
Corresponds to the JSON property protectionLevel
465 466 467 |
# File 'lib/google/apis/kmsinventory_v1/classes.rb', line 465 def protection_level @protection_level end |
#reimport_eligible ⇒ Boolean Also known as: reimport_eligible?
Output only. Whether or not this key version is eligible for reimport, by
being specified as a target in ImportCryptoKeyVersionRequest.
crypto_key_version.
Corresponds to the JSON property reimportEligible
472 473 474 |
# File 'lib/google/apis/kmsinventory_v1/classes.rb', line 472 def reimport_eligible @reimport_eligible end |
#state ⇒ String
The current state of the CryptoKeyVersion.
Corresponds to the JSON property state
478 479 480 |
# File 'lib/google/apis/kmsinventory_v1/classes.rb', line 478 def state @state end |
#trusted_wrapping_enabled ⇒ Boolean Also known as: trusted_wrapping_enabled?
Immutable. Field indicating that the key may be wrapped by a trusted key. This
field can be set for all key purposes except ENCRYPT_DECRYPT, and is only
valid for keys with protection level HSM_SINGLE_TENANT. This field can only be
set at creation or import time via CreateCryptoKeyVersion, or
ImportCryptoKeyVersion.
Corresponds to the JSON property trustedWrappingEnabled
487 488 489 |
# File 'lib/google/apis/kmsinventory_v1/classes.rb', line 487 def trusted_wrapping_enabled @trusted_wrapping_enabled end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 |
# File 'lib/google/apis/kmsinventory_v1/classes.rb', line 495 def update!(**args) @algorithm = args[:algorithm] if args.key?(:algorithm) @attestation = args[:attestation] if args.key?(:attestation) @create_time = args[:create_time] if args.key?(:create_time) @destroy_event_time = args[:destroy_event_time] if args.key?(:destroy_event_time) @destroy_time = args[:destroy_time] if args.key?(:destroy_time) @external_destruction_failure_reason = args[:external_destruction_failure_reason] if args.key?(:external_destruction_failure_reason) @external_protection_level_options = args[:external_protection_level_options] if args.key?(:external_protection_level_options) @generate_time = args[:generate_time] if args.key?(:generate_time) @generation_failure_reason = args[:generation_failure_reason] if args.key?(:generation_failure_reason) @hsm_trusted = args[:hsm_trusted] if args.key?(:hsm_trusted) @import_failure_reason = args[:import_failure_reason] if args.key?(:import_failure_reason) @import_job = args[:import_job] if args.key?(:import_job) @import_time = args[:import_time] if args.key?(:import_time) @name = args[:name] if args.key?(:name) @protection_level = args[:protection_level] if args.key?(:protection_level) @reimport_eligible = args[:reimport_eligible] if args.key?(:reimport_eligible) @state = args[:state] if args.key?(:state) @trusted_wrapping_enabled = args[:trusted_wrapping_enabled] if args.key?(:trusted_wrapping_enabled) end |