AWSKMSKeyMetadata

@interface AWSKMSKeyMetadata

Contains metadata about a customer master key (CMK).

This data type is used as a response element for the CreateKey and DescribeKey operations.

Required parameters: [KeyId]

  • The twelve-digit account ID of the AWS account that owns the CMK.

    Declaration

    Objective-C

    @property (readwrite, strong, nonatomic) NSString *_Nullable AWSAccountId;

    Swift

    var awsAccountId: String? { get set }
  • arn

    The Amazon Resource Name (ARN) of the CMK. For examples, see AWS Key Management Service (AWS KMS) in the Example ARNs section of the AWS General Reference.

    Declaration

    Objective-C

    @property (readwrite, strong, nonatomic) NSString *_Nullable arn;

    Swift

    var arn: String? { get set }
  • The cluster ID of the AWS CloudHSM cluster that contains the key material for the CMK. When you create a CMK in a custom key store, AWS KMS creates the key material for the CMK in the associated AWS CloudHSM cluster. This value is present only when the CMK is created in a custom key store.

    Declaration

    Objective-C

    @property (readwrite, strong, nonatomic) NSString *_Nullable cloudHsmClusterId;

    Swift

    var cloudHsmClusterId: String? { get set }
  • The date and time when the CMK was created.

    Declaration

    Objective-C

    @property (readwrite, strong, nonatomic) NSDate *_Nullable creationDate;

    Swift

    var creationDate: Date? { get set }
  • A unique identifier for the custom key store that contains the CMK. This value is present only when the CMK is created in a custom key store.

    Declaration

    Objective-C

    @property (readwrite, strong, nonatomic) NSString *_Nullable customKeyStoreId;

    Swift

    var customKeyStoreId: String? { get set }
  • Describes the type of key material in the CMK.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic)
        AWSKMSCustomerMasterKeySpec customerMasterKeySpec;

    Swift

    var customerMasterKeySpec: AWSKMSCustomerMasterKeySpec { get set }
  • The date and time after which AWS KMS deletes the CMK. This value is present only when KeyState is PendingDeletion.

    Declaration

    Objective-C

    @property (readwrite, strong, nonatomic) NSDate *_Nullable deletionDate;

    Swift

    var deletionDate: Date? { get set }
  • The description of the CMK.

    Declaration

    Objective-C

    @property (readwrite, strong, nonatomic) NSString *_Nullable detail;

    Swift

    var detail: String? { get set }
  • Specifies whether the CMK is enabled. When KeyState is Enabled this value is true, otherwise it is false.

    Declaration

    Objective-C

    @property (readwrite, strong, nonatomic) NSNumber *_Nullable enabled;

    Swift

    var enabled: NSNumber? { get set }
  • A list of encryption algorithms that the CMK supports. You cannot use the CMK with other encryption algorithms within AWS KMS.

    This field appears only when the KeyUsage of the CMK is ENCRYPT_DECRYPT.

    Declaration

    Objective-C

    @property (readwrite, strong, nonatomic)
        NSArray<NSString *> *_Nullable encryptionAlgorithms;

    Swift

    var encryptionAlgorithms: [String]? { get set }
  • Specifies whether the CMK’s key material expires. This value is present only when Origin is EXTERNAL, otherwise this value is omitted.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic)
        AWSKMSExpirationModelType expirationModel;

    Swift

    var expirationModel: AWSKMSExpirationModelType { get set }
  • The globally unique identifier for the CMK.

    Declaration

    Objective-C

    @property (readwrite, strong, nonatomic) NSString *_Nullable keyId;

    Swift

    var keyId: String? { get set }
  • The manager of the CMK. CMKs in your AWS account are either customer managed or AWS managed. For more information about the difference, see Customer Master Keys in the AWS Key Management Service Developer Guide.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic) AWSKMSKeyManagerType keyManager;

    Swift

    var keyManager: AWSKMSKeyManagerType { get set }
  • The state of the CMK.

    For more information about how key state affects the use of a CMK, see How Key State Affects the Use of a Customer Master Key in the AWS Key Management Service Developer Guide.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic) AWSKMSKeyState keyState;

    Swift

    var keyState: AWSKMSKeyState { get set }
  • The cryptographic operations for which you can use the CMK.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic) AWSKMSKeyUsageType keyUsage;

    Swift

    var keyUsage: AWSKMSKeyUsageType { get set }
  • The source of the CMK’s key material. When this value is AWS_KMS, AWS KMS created the key material. When this value is EXTERNAL, the key material was imported from your existing key management infrastructure or the CMK lacks key material. When this value is AWS_CLOUDHSM, the key material was created in the AWS CloudHSM cluster associated with a custom key store.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic) AWSKMSOriginType origin;

    Swift

    var origin: AWSKMSOriginType { get set }
  • A list of signing algorithms that the CMK supports. You cannot use the CMK with other signing algorithms within AWS KMS.

    This field appears only when the KeyUsage of the CMK is SIGN_VERIFY.

    Declaration

    Objective-C

    @property (readwrite, strong, nonatomic)
        NSArray<NSString *> *_Nullable signingAlgorithms;

    Swift

    var signingAlgorithms: [String]? { get set }
  • The time at which the imported key material expires. When the key material expires, AWS KMS deletes the key material and the CMK becomes unusable. This value is present only for CMKs whose Origin is EXTERNAL and whose ExpirationModel is KEY_MATERIAL_EXPIRES, otherwise this value is omitted.

    Declaration

    Objective-C

    @property (readwrite, strong, nonatomic) NSDate *_Nullable validTo;

    Swift

    var validTo: Date? { get set }