Class ImportCryptoKeyVersionRequest

  • All Implemented Interfaces:
    ImportCryptoKeyVersionRequestOrBuilder, com.google.protobuf.Message, com.google.protobuf.MessageLite, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, Serializable

    public final class ImportCryptoKeyVersionRequest
    extends com.google.protobuf.GeneratedMessageV3
    implements ImportCryptoKeyVersionRequestOrBuilder
     Request message for
     [KeyManagementService.ImportCryptoKeyVersion][google.cloud.kms.v1.KeyManagementService.ImportCryptoKeyVersion].
     
    Protobuf type google.cloud.kms.v1.ImportCryptoKeyVersionRequest
    See Also:
    Serialized Form
    • Field Detail

      • CRYPTO_KEY_VERSION_FIELD_NUMBER

        public static final int CRYPTO_KEY_VERSION_FIELD_NUMBER
        See Also:
        Constant Field Values
      • IMPORT_JOB_FIELD_NUMBER

        public static final int IMPORT_JOB_FIELD_NUMBER
        See Also:
        Constant Field Values
      • WRAPPED_KEY_FIELD_NUMBER

        public static final int WRAPPED_KEY_FIELD_NUMBER
        See Also:
        Constant Field Values
      • RSA_AES_WRAPPED_KEY_FIELD_NUMBER

        public static final int RSA_AES_WRAPPED_KEY_FIELD_NUMBER
        See Also:
        Constant Field Values
    • Method Detail

      • newInstance

        protected Object newInstance​(com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter unused)
        Overrides:
        newInstance in class com.google.protobuf.GeneratedMessageV3
      • getDescriptor

        public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
      • internalGetFieldAccessorTable

        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
        Specified by:
        internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessageV3
      • getParent

        public String getParent()
         Required. The [name][google.cloud.kms.v1.CryptoKey.name] of the
         [CryptoKey][google.cloud.kms.v1.CryptoKey] to be imported into.
        
         The create permission is only required on this key when creating a new
         [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion].
         
        string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
        Specified by:
        getParent in interface ImportCryptoKeyVersionRequestOrBuilder
        Returns:
        The parent.
      • getParentBytes

        public com.google.protobuf.ByteString getParentBytes()
         Required. The [name][google.cloud.kms.v1.CryptoKey.name] of the
         [CryptoKey][google.cloud.kms.v1.CryptoKey] to be imported into.
        
         The create permission is only required on this key when creating a new
         [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion].
         
        string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
        Specified by:
        getParentBytes in interface ImportCryptoKeyVersionRequestOrBuilder
        Returns:
        The bytes for parent.
      • getCryptoKeyVersion

        public String getCryptoKeyVersion()
         Optional. The optional [name][google.cloud.kms.v1.CryptoKeyVersion.name] of
         an existing [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] to
         target for an import operation. If this field is not present, a new
         [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] containing the
         supplied key material is created.
        
         If this field is present, the supplied key material is imported into
         the existing [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion]. To
         import into an existing
         [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion], the
         [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] must be a child of
         [ImportCryptoKeyVersionRequest.parent][google.cloud.kms.v1.ImportCryptoKeyVersionRequest.parent],
         have been previously created via [ImportCryptoKeyVersion][], and be in
         [DESTROYED][google.cloud.kms.v1.CryptoKeyVersion.CryptoKeyVersionState.DESTROYED]
         or
         [IMPORT_FAILED][google.cloud.kms.v1.CryptoKeyVersion.CryptoKeyVersionState.IMPORT_FAILED]
         state. The key material and algorithm must match the previous
         [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] exactly if the
         [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] has ever contained
         key material.
         
        string crypto_key_version = 6 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... }
        Specified by:
        getCryptoKeyVersion in interface ImportCryptoKeyVersionRequestOrBuilder
        Returns:
        The cryptoKeyVersion.
      • getCryptoKeyVersionBytes

        public com.google.protobuf.ByteString getCryptoKeyVersionBytes()
         Optional. The optional [name][google.cloud.kms.v1.CryptoKeyVersion.name] of
         an existing [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] to
         target for an import operation. If this field is not present, a new
         [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] containing the
         supplied key material is created.
        
         If this field is present, the supplied key material is imported into
         the existing [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion]. To
         import into an existing
         [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion], the
         [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] must be a child of
         [ImportCryptoKeyVersionRequest.parent][google.cloud.kms.v1.ImportCryptoKeyVersionRequest.parent],
         have been previously created via [ImportCryptoKeyVersion][], and be in
         [DESTROYED][google.cloud.kms.v1.CryptoKeyVersion.CryptoKeyVersionState.DESTROYED]
         or
         [IMPORT_FAILED][google.cloud.kms.v1.CryptoKeyVersion.CryptoKeyVersionState.IMPORT_FAILED]
         state. The key material and algorithm must match the previous
         [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] exactly if the
         [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] has ever contained
         key material.
         
        string crypto_key_version = 6 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... }
        Specified by:
        getCryptoKeyVersionBytes in interface ImportCryptoKeyVersionRequestOrBuilder
        Returns:
        The bytes for cryptoKeyVersion.
      • getAlgorithmValue

        public int getAlgorithmValue()
         Required. The
         [algorithm][google.cloud.kms.v1.CryptoKeyVersion.CryptoKeyVersionAlgorithm]
         of the key being imported. This does not need to match the
         [version_template][google.cloud.kms.v1.CryptoKey.version_template] of the
         [CryptoKey][google.cloud.kms.v1.CryptoKey] this version imports into.
         
        .google.cloud.kms.v1.CryptoKeyVersion.CryptoKeyVersionAlgorithm algorithm = 2 [(.google.api.field_behavior) = REQUIRED];
        Specified by:
        getAlgorithmValue in interface ImportCryptoKeyVersionRequestOrBuilder
        Returns:
        The enum numeric value on the wire for algorithm.
      • getAlgorithm

        public CryptoKeyVersion.CryptoKeyVersionAlgorithm getAlgorithm()
         Required. The
         [algorithm][google.cloud.kms.v1.CryptoKeyVersion.CryptoKeyVersionAlgorithm]
         of the key being imported. This does not need to match the
         [version_template][google.cloud.kms.v1.CryptoKey.version_template] of the
         [CryptoKey][google.cloud.kms.v1.CryptoKey] this version imports into.
         
        .google.cloud.kms.v1.CryptoKeyVersion.CryptoKeyVersionAlgorithm algorithm = 2 [(.google.api.field_behavior) = REQUIRED];
        Specified by:
        getAlgorithm in interface ImportCryptoKeyVersionRequestOrBuilder
        Returns:
        The algorithm.
      • getImportJob

        public String getImportJob()
         Required. The [name][google.cloud.kms.v1.ImportJob.name] of the
         [ImportJob][google.cloud.kms.v1.ImportJob] that was used to wrap this key
         material.
         
        string import_job = 4 [(.google.api.field_behavior) = REQUIRED];
        Specified by:
        getImportJob in interface ImportCryptoKeyVersionRequestOrBuilder
        Returns:
        The importJob.
      • getImportJobBytes

        public com.google.protobuf.ByteString getImportJobBytes()
         Required. The [name][google.cloud.kms.v1.ImportJob.name] of the
         [ImportJob][google.cloud.kms.v1.ImportJob] that was used to wrap this key
         material.
         
        string import_job = 4 [(.google.api.field_behavior) = REQUIRED];
        Specified by:
        getImportJobBytes in interface ImportCryptoKeyVersionRequestOrBuilder
        Returns:
        The bytes for importJob.
      • getWrappedKey

        public com.google.protobuf.ByteString getWrappedKey()
         Optional. The wrapped key material to import.
        
         Before wrapping, key material must be formatted. If importing symmetric key
         material, the expected key material format is plain bytes. If importing
         asymmetric key material, the expected key material format is PKCS#8-encoded
         DER (the PrivateKeyInfo structure from RFC 5208).
        
         When wrapping with import methods
         ([RSA_OAEP_3072_SHA1_AES_256][google.cloud.kms.v1.ImportJob.ImportMethod.RSA_OAEP_3072_SHA1_AES_256]
         or
         [RSA_OAEP_4096_SHA1_AES_256][google.cloud.kms.v1.ImportJob.ImportMethod.RSA_OAEP_4096_SHA1_AES_256]
         or
         [RSA_OAEP_3072_SHA256_AES_256][google.cloud.kms.v1.ImportJob.ImportMethod.RSA_OAEP_3072_SHA256_AES_256]
         or
         [RSA_OAEP_4096_SHA256_AES_256][google.cloud.kms.v1.ImportJob.ImportMethod.RSA_OAEP_4096_SHA256_AES_256]),
        
         this field must contain the concatenation of:
         <ol>
           <li>An ephemeral AES-256 wrapping key wrapped with the
               [public_key][google.cloud.kms.v1.ImportJob.public_key] using
               RSAES-OAEP with SHA-1/SHA-256, MGF1 with SHA-1/SHA-256, and an empty
               label.
           </li>
           <li>The formatted key to be imported, wrapped with the ephemeral AES-256
               key using AES-KWP (RFC 5649).
           </li>
         </ol>
        
         This format is the same as the format produced by PKCS#11 mechanism
         CKM_RSA_AES_KEY_WRAP.
        
         When wrapping with import methods
         ([RSA_OAEP_3072_SHA256][google.cloud.kms.v1.ImportJob.ImportMethod.RSA_OAEP_3072_SHA256]
         or
         [RSA_OAEP_4096_SHA256][google.cloud.kms.v1.ImportJob.ImportMethod.RSA_OAEP_4096_SHA256]),
        
         this field must contain the formatted key to be imported, wrapped with the
         [public_key][google.cloud.kms.v1.ImportJob.public_key] using RSAES-OAEP
         with SHA-256, MGF1 with SHA-256, and an empty label.
         
        bytes wrapped_key = 8 [(.google.api.field_behavior) = OPTIONAL];
        Specified by:
        getWrappedKey in interface ImportCryptoKeyVersionRequestOrBuilder
        Returns:
        The wrappedKey.
      • hasRsaAesWrappedKey

        public boolean hasRsaAesWrappedKey()
         Optional. This field has the same meaning as
         [wrapped_key][google.cloud.kms.v1.ImportCryptoKeyVersionRequest.wrapped_key].
         Prefer to use that field in new work. Either that field or this field
         (but not both) must be specified.
         
        bytes rsa_aes_wrapped_key = 5 [(.google.api.field_behavior) = OPTIONAL];
        Specified by:
        hasRsaAesWrappedKey in interface ImportCryptoKeyVersionRequestOrBuilder
        Returns:
        Whether the rsaAesWrappedKey field is set.
      • getRsaAesWrappedKey

        public com.google.protobuf.ByteString getRsaAesWrappedKey()
         Optional. This field has the same meaning as
         [wrapped_key][google.cloud.kms.v1.ImportCryptoKeyVersionRequest.wrapped_key].
         Prefer to use that field in new work. Either that field or this field
         (but not both) must be specified.
         
        bytes rsa_aes_wrapped_key = 5 [(.google.api.field_behavior) = OPTIONAL];
        Specified by:
        getRsaAesWrappedKey in interface ImportCryptoKeyVersionRequestOrBuilder
        Returns:
        The rsaAesWrappedKey.
      • isInitialized

        public final boolean isInitialized()
        Specified by:
        isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
        Overrides:
        isInitialized in class com.google.protobuf.GeneratedMessageV3
      • writeTo

        public void writeTo​(com.google.protobuf.CodedOutputStream output)
                     throws IOException
        Specified by:
        writeTo in interface com.google.protobuf.MessageLite
        Overrides:
        writeTo in class com.google.protobuf.GeneratedMessageV3
        Throws:
        IOException
      • getSerializedSize

        public int getSerializedSize()
        Specified by:
        getSerializedSize in interface com.google.protobuf.MessageLite
        Overrides:
        getSerializedSize in class com.google.protobuf.GeneratedMessageV3
      • equals

        public boolean equals​(Object obj)
        Specified by:
        equals in interface com.google.protobuf.Message
        Overrides:
        equals in class com.google.protobuf.AbstractMessage
      • hashCode

        public int hashCode()
        Specified by:
        hashCode in interface com.google.protobuf.Message
        Overrides:
        hashCode in class com.google.protobuf.AbstractMessage
      • parseFrom

        public static ImportCryptoKeyVersionRequest parseFrom​(ByteBuffer data)
                                                       throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static ImportCryptoKeyVersionRequest parseFrom​(ByteBuffer data,
                                                              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                                       throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static ImportCryptoKeyVersionRequest parseFrom​(com.google.protobuf.ByteString data)
                                                       throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static ImportCryptoKeyVersionRequest parseFrom​(com.google.protobuf.ByteString data,
                                                              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                                       throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static ImportCryptoKeyVersionRequest parseFrom​(byte[] data)
                                                       throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static ImportCryptoKeyVersionRequest parseFrom​(byte[] data,
                                                              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                                       throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • newBuilderForType

        public ImportCryptoKeyVersionRequest.Builder newBuilderForType()
        Specified by:
        newBuilderForType in interface com.google.protobuf.Message
        Specified by:
        newBuilderForType in interface com.google.protobuf.MessageLite
      • toBuilder

        public ImportCryptoKeyVersionRequest.Builder toBuilder()
        Specified by:
        toBuilder in interface com.google.protobuf.Message
        Specified by:
        toBuilder in interface com.google.protobuf.MessageLite
      • newBuilderForType

        protected ImportCryptoKeyVersionRequest.Builder newBuilderForType​(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)
        Specified by:
        newBuilderForType in class com.google.protobuf.GeneratedMessageV3
      • getParserForType

        public com.google.protobuf.Parser<ImportCryptoKeyVersionRequest> getParserForType()
        Specified by:
        getParserForType in interface com.google.protobuf.Message
        Specified by:
        getParserForType in interface com.google.protobuf.MessageLite
        Overrides:
        getParserForType in class com.google.protobuf.GeneratedMessageV3
      • getDefaultInstanceForType

        public ImportCryptoKeyVersionRequest getDefaultInstanceForType()
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder