Class ImportJob
An ImportJob can be used to create CryptoKeys and CryptoKeyVersions using pre-existing key material, generated outside of Cloud KMS. When an ImportJob is created, Cloud KMS will generate a "wrapping key", which is a public/private key pair. You use the wrapping key to encrypt (also known as wrap) the pre-existing key material to protect it during the import process. The nature of the wrapping key depends on the choice of import_method. When the wrapping key generation is complete, the state will be set to ACTIVE and the public_key can be fetched. The fetched public key can then be used to wrap your pre-existing key material. Once the key material is wrapped, it can be imported into a new CryptoKeyVersion in an existing CryptoKey by calling ImportCryptoKeyVersion. Multiple CryptoKeyVersions can be imported with a single ImportJob. Cloud KMS uses the private key portion of the wrapping key to unwrap the key material. Only Cloud KMS has access to the private key. An ImportJob expires 3 days after it is created. Once expired, Cloud KMS will no longer be able to import or unwrap any key material that was wrapped with the ImportJob's public key. For more information, see Importing a key.
Implements
Inherited Members
Namespace: Google.Apis.CloudKMS.v1.Data
Assembly: Google.Apis.CloudKMS.v1.dll
Syntax
public class ImportJob : IDirectResponseSchema
Properties
Attestation
Output only. Statement that was generated and signed by the key creator (for example, an HSM) at key creation time. Use this statement to verify attributes of the key as stored on the HSM, independently of Google. Only present if the chosen ImportMethod is one with a protection level of HSM.
Declaration
[JsonProperty("attestation")]
public virtual KeyOperationAttestation Attestation { get; set; }
Property Value
Type | Description |
---|---|
KeyOperationAttestation |
CreateTime
object representation of CreateTimeRaw.
Declaration
[JsonIgnore]
[Obsolete("This property is obsolete and may behave unexpectedly; please use CreateTimeDateTimeOffset instead.")]
public virtual object CreateTime { get; set; }
Property Value
Type | Description |
---|---|
object |
CreateTimeDateTimeOffset
DateTimeOffset representation of CreateTimeRaw.
Declaration
[JsonIgnore]
public virtual DateTimeOffset? CreateTimeDateTimeOffset { get; set; }
Property Value
Type | Description |
---|---|
DateTimeOffset? |
CreateTimeRaw
Output only. The time at which this ImportJob was created.
Declaration
[JsonProperty("createTime")]
public virtual string CreateTimeRaw { get; set; }
Property Value
Type | Description |
---|---|
string |
ETag
The ETag of the item.
Declaration
public virtual string ETag { get; set; }
Property Value
Type | Description |
---|---|
string |
ExpireEventTime
object representation of ExpireEventTimeRaw.
Declaration
[JsonIgnore]
[Obsolete("This property is obsolete and may behave unexpectedly; please use ExpireEventTimeDateTimeOffset instead.")]
public virtual object ExpireEventTime { get; set; }
Property Value
Type | Description |
---|---|
object |
ExpireEventTimeDateTimeOffset
DateTimeOffset representation of ExpireEventTimeRaw.
Declaration
[JsonIgnore]
public virtual DateTimeOffset? ExpireEventTimeDateTimeOffset { get; set; }
Property Value
Type | Description |
---|---|
DateTimeOffset? |
ExpireEventTimeRaw
Output only. The time this ImportJob expired. Only present if state is EXPIRED.
Declaration
[JsonProperty("expireEventTime")]
public virtual string ExpireEventTimeRaw { get; set; }
Property Value
Type | Description |
---|---|
string |
ExpireTime
object representation of ExpireTimeRaw.
Declaration
[JsonIgnore]
[Obsolete("This property is obsolete and may behave unexpectedly; please use ExpireTimeDateTimeOffset instead.")]
public virtual object ExpireTime { get; set; }
Property Value
Type | Description |
---|---|
object |
ExpireTimeDateTimeOffset
DateTimeOffset representation of ExpireTimeRaw.
Declaration
[JsonIgnore]
public virtual DateTimeOffset? ExpireTimeDateTimeOffset { get; set; }
Property Value
Type | Description |
---|---|
DateTimeOffset? |
ExpireTimeRaw
Output only. The time at which this ImportJob is scheduled for expiration and can no longer be used to import key material.
Declaration
[JsonProperty("expireTime")]
public virtual string ExpireTimeRaw { get; set; }
Property Value
Type | Description |
---|---|
string |
GenerateTime
object representation of GenerateTimeRaw.
Declaration
[JsonIgnore]
[Obsolete("This property is obsolete and may behave unexpectedly; please use GenerateTimeDateTimeOffset instead.")]
public virtual object GenerateTime { get; set; }
Property Value
Type | Description |
---|---|
object |
GenerateTimeDateTimeOffset
DateTimeOffset representation of GenerateTimeRaw.
Declaration
[JsonIgnore]
public virtual DateTimeOffset? GenerateTimeDateTimeOffset { get; set; }
Property Value
Type | Description |
---|---|
DateTimeOffset? |
GenerateTimeRaw
Output only. The time this ImportJob's key material was generated.
Declaration
[JsonProperty("generateTime")]
public virtual string GenerateTimeRaw { get; set; }
Property Value
Type | Description |
---|---|
string |
ImportMethod
Required. Immutable. The wrapping method to be used for incoming key material.
Declaration
[JsonProperty("importMethod")]
public virtual string ImportMethod { get; set; }
Property Value
Type | Description |
---|---|
string |
Name
Output only. The resource name for this ImportJob in the format
projects/*/locations/*/keyRings/*/importJobs/*
.
Declaration
[JsonProperty("name")]
public virtual string Name { get; set; }
Property Value
Type | Description |
---|---|
string |
ProtectionLevel
Required. Immutable. The protection level of the ImportJob. This must match the protection_level of the version_template on the CryptoKey you attempt to import into.
Declaration
[JsonProperty("protectionLevel")]
public virtual string ProtectionLevel { get; set; }
Property Value
Type | Description |
---|---|
string |
PublicKey
Output only. The public key with which to wrap key material prior to import. Only returned if state is ACTIVE.
Declaration
[JsonProperty("publicKey")]
public virtual WrappingPublicKey PublicKey { get; set; }
Property Value
Type | Description |
---|---|
WrappingPublicKey |
State
Output only. The current state of the ImportJob, indicating if it can be used.
Declaration
[JsonProperty("state")]
public virtual string State { get; set; }
Property Value
Type | Description |
---|---|
string |