Class: Google::Apis::CloudkmsV1::CryptoKeyVersion
- Inherits:
-
Object
- Object
- Google::Apis::CloudkmsV1::CryptoKeyVersion
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/cloudkms_v1/classes.rb,
lib/google/apis/cloudkms_v1/representations.rb,
lib/google/apis/cloudkms_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::CloudkmsV1::KeyOperationAttestation
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_protection_level_options ⇒ Google::Apis::CloudkmsV1::ExternalProtectionLevelOptions
ExternalProtectionLevelOptions stores a group of additional fields for configuring a CryptoKeyVersion that are specific to the EXTERNAL protection level.
-
#generate_time ⇒ String
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.
Instance Method Summary collapse
-
#initialize(**args) ⇒ CryptoKeyVersion
constructor
A new instance of CryptoKeyVersion.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ CryptoKeyVersion
Returns a new instance of CryptoKeyVersion.
578 579 580 |
# File 'lib/google/apis/cloudkms_v1/classes.rb', line 578 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
497 498 499 |
# File 'lib/google/apis/cloudkms_v1/classes.rb', line 497 def algorithm @algorithm end |
#attestation ⇒ Google::Apis::CloudkmsV1::KeyOperationAttestation
Contains an HSM-generated attestation about a key operation. For more
information, see Verifying attestations.
Corresponds to the JSON property attestation
504 505 506 |
# File 'lib/google/apis/cloudkms_v1/classes.rb', line 504 def attestation @attestation end |
#create_time ⇒ String
Output only. The time at which this CryptoKeyVersion was created.
Corresponds to the JSON property createTime
509 510 511 |
# File 'lib/google/apis/cloudkms_v1/classes.rb', line 509 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
515 516 517 |
# File 'lib/google/apis/cloudkms_v1/classes.rb', line 515 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
521 522 523 |
# File 'lib/google/apis/cloudkms_v1/classes.rb', line 521 def destroy_time @destroy_time end |
#external_protection_level_options ⇒ Google::Apis::CloudkmsV1::ExternalProtectionLevelOptions
ExternalProtectionLevelOptions stores a group of additional fields for
configuring a CryptoKeyVersion that are specific to the EXTERNAL protection
level.
Corresponds to the JSON property externalProtectionLevelOptions
528 529 530 |
# File 'lib/google/apis/cloudkms_v1/classes.rb', line 528 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
533 534 535 |
# File 'lib/google/apis/cloudkms_v1/classes.rb', line 533 def generate_time @generate_time 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
539 540 541 |
# File 'lib/google/apis/cloudkms_v1/classes.rb', line 539 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
545 546 547 |
# File 'lib/google/apis/cloudkms_v1/classes.rb', line 545 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
551 552 553 |
# File 'lib/google/apis/cloudkms_v1/classes.rb', line 551 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
557 558 559 |
# File 'lib/google/apis/cloudkms_v1/classes.rb', line 557 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
563 564 565 |
# File 'lib/google/apis/cloudkms_v1/classes.rb', line 563 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
570 571 572 |
# File 'lib/google/apis/cloudkms_v1/classes.rb', line 570 def reimport_eligible @reimport_eligible end |
#state ⇒ String
The current state of the CryptoKeyVersion.
Corresponds to the JSON property state
576 577 578 |
# File 'lib/google/apis/cloudkms_v1/classes.rb', line 576 def state @state end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 |
# File 'lib/google/apis/cloudkms_v1/classes.rb', line 583 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_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) @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) end |