/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include A key-signing key (KSK) is a complex type that represents a public/private
* key pair. The private key is used to generate a digital signature for the zone
* signing key (ZSK). The public key is stored in the DNS and is used to
* authenticate the ZSK. A KSK is always associated with a hosted zone; it cannot
* exist by itself.See Also:
AWS
* API Reference
A string used to identify a key-signing key (KSK). Name can
* include numbers, letters, and underscores (_). Name must be unique
* for each key-signing key in the same hosted zone.
A string used to identify a key-signing key (KSK). Name can
* include numbers, letters, and underscores (_). Name must be unique
* for each key-signing key in the same hosted zone.
A string used to identify a key-signing key (KSK). Name can
* include numbers, letters, and underscores (_). Name must be unique
* for each key-signing key in the same hosted zone.
A string used to identify a key-signing key (KSK). Name can
* include numbers, letters, and underscores (_). Name must be unique
* for each key-signing key in the same hosted zone.
A string used to identify a key-signing key (KSK). Name can
* include numbers, letters, and underscores (_). Name must be unique
* for each key-signing key in the same hosted zone.
A string used to identify a key-signing key (KSK). Name can
* include numbers, letters, and underscores (_). Name must be unique
* for each key-signing key in the same hosted zone.
A string used to identify a key-signing key (KSK). Name can
* include numbers, letters, and underscores (_). Name must be unique
* for each key-signing key in the same hosted zone.
A string used to identify a key-signing key (KSK). Name can
* include numbers, letters, and underscores (_). Name must be unique
* for each key-signing key in the same hosted zone.
The Amazon resource name (ARN) used to identify the customer managed key in
* Key Management Service (KMS). The KmsArn must be unique for each
* key-signing key (KSK) in a single hosted zone.
You must configure the * customer managed key as follows:
Enabled
*ECC_NIST_P256
Sign and verify
The key policy must * give permission for the following actions:
DescribeKey
*GetPublicKey
Sign
The key * policy must also include the Amazon Route 53 service in the principal for your * account. Specify the following:
"Service":
* "dnssec-route53.amazonaws.com"
For more * information about working with the customer managed key in KMS, see Key * Management Service concepts.
*/ inline const Aws::String& GetKmsArn() const{ return m_kmsArn; } /** *The Amazon resource name (ARN) used to identify the customer managed key in
* Key Management Service (KMS). The KmsArn must be unique for each
* key-signing key (KSK) in a single hosted zone.
You must configure the * customer managed key as follows:
Enabled
*ECC_NIST_P256
Sign and verify
The key policy must * give permission for the following actions:
DescribeKey
*GetPublicKey
Sign
The key * policy must also include the Amazon Route 53 service in the principal for your * account. Specify the following:
"Service":
* "dnssec-route53.amazonaws.com"
For more * information about working with the customer managed key in KMS, see Key * Management Service concepts.
*/ inline bool KmsArnHasBeenSet() const { return m_kmsArnHasBeenSet; } /** *The Amazon resource name (ARN) used to identify the customer managed key in
* Key Management Service (KMS). The KmsArn must be unique for each
* key-signing key (KSK) in a single hosted zone.
You must configure the * customer managed key as follows:
Enabled
*ECC_NIST_P256
Sign and verify
The key policy must * give permission for the following actions:
DescribeKey
*GetPublicKey
Sign
The key * policy must also include the Amazon Route 53 service in the principal for your * account. Specify the following:
"Service":
* "dnssec-route53.amazonaws.com"
For more * information about working with the customer managed key in KMS, see Key * Management Service concepts.
*/ inline void SetKmsArn(const Aws::String& value) { m_kmsArnHasBeenSet = true; m_kmsArn = value; } /** *The Amazon resource name (ARN) used to identify the customer managed key in
* Key Management Service (KMS). The KmsArn must be unique for each
* key-signing key (KSK) in a single hosted zone.
You must configure the * customer managed key as follows:
Enabled
*ECC_NIST_P256
Sign and verify
The key policy must * give permission for the following actions:
DescribeKey
*GetPublicKey
Sign
The key * policy must also include the Amazon Route 53 service in the principal for your * account. Specify the following:
"Service":
* "dnssec-route53.amazonaws.com"
For more * information about working with the customer managed key in KMS, see Key * Management Service concepts.
*/ inline void SetKmsArn(Aws::String&& value) { m_kmsArnHasBeenSet = true; m_kmsArn = std::move(value); } /** *The Amazon resource name (ARN) used to identify the customer managed key in
* Key Management Service (KMS). The KmsArn must be unique for each
* key-signing key (KSK) in a single hosted zone.
You must configure the * customer managed key as follows:
Enabled
*ECC_NIST_P256
Sign and verify
The key policy must * give permission for the following actions:
DescribeKey
*GetPublicKey
Sign
The key * policy must also include the Amazon Route 53 service in the principal for your * account. Specify the following:
"Service":
* "dnssec-route53.amazonaws.com"
For more * information about working with the customer managed key in KMS, see Key * Management Service concepts.
*/ inline void SetKmsArn(const char* value) { m_kmsArnHasBeenSet = true; m_kmsArn.assign(value); } /** *The Amazon resource name (ARN) used to identify the customer managed key in
* Key Management Service (KMS). The KmsArn must be unique for each
* key-signing key (KSK) in a single hosted zone.
You must configure the * customer managed key as follows:
Enabled
*ECC_NIST_P256
Sign and verify
The key policy must * give permission for the following actions:
DescribeKey
*GetPublicKey
Sign
The key * policy must also include the Amazon Route 53 service in the principal for your * account. Specify the following:
"Service":
* "dnssec-route53.amazonaws.com"
For more * information about working with the customer managed key in KMS, see Key * Management Service concepts.
*/ inline KeySigningKey& WithKmsArn(const Aws::String& value) { SetKmsArn(value); return *this;} /** *The Amazon resource name (ARN) used to identify the customer managed key in
* Key Management Service (KMS). The KmsArn must be unique for each
* key-signing key (KSK) in a single hosted zone.
You must configure the * customer managed key as follows:
Enabled
*ECC_NIST_P256
Sign and verify
The key policy must * give permission for the following actions:
DescribeKey
*GetPublicKey
Sign
The key * policy must also include the Amazon Route 53 service in the principal for your * account. Specify the following:
"Service":
* "dnssec-route53.amazonaws.com"
For more * information about working with the customer managed key in KMS, see Key * Management Service concepts.
*/ inline KeySigningKey& WithKmsArn(Aws::String&& value) { SetKmsArn(std::move(value)); return *this;} /** *The Amazon resource name (ARN) used to identify the customer managed key in
* Key Management Service (KMS). The KmsArn must be unique for each
* key-signing key (KSK) in a single hosted zone.
You must configure the * customer managed key as follows:
Enabled
*ECC_NIST_P256
Sign and verify
The key policy must * give permission for the following actions:
DescribeKey
*GetPublicKey
Sign
The key * policy must also include the Amazon Route 53 service in the principal for your * account. Specify the following:
"Service":
* "dnssec-route53.amazonaws.com"
For more * information about working with the customer managed key in KMS, see Key * Management Service concepts.
*/ inline KeySigningKey& WithKmsArn(const char* value) { SetKmsArn(value); return *this;} /** *An integer that specifies how the key is used. For key-signing key (KSK), * this value is always 257.
*/ inline int GetFlag() const{ return m_flag; } /** *An integer that specifies how the key is used. For key-signing key (KSK), * this value is always 257.
*/ inline bool FlagHasBeenSet() const { return m_flagHasBeenSet; } /** *An integer that specifies how the key is used. For key-signing key (KSK), * this value is always 257.
*/ inline void SetFlag(int value) { m_flagHasBeenSet = true; m_flag = value; } /** *An integer that specifies how the key is used. For key-signing key (KSK), * this value is always 257.
*/ inline KeySigningKey& WithFlag(int value) { SetFlag(value); return *this;} /** *A string used to represent the signing algorithm. This value must follow the * guidelines provided by RFC-8624 Section 3.1. *
*/ inline const Aws::String& GetSigningAlgorithmMnemonic() const{ return m_signingAlgorithmMnemonic; } /** *A string used to represent the signing algorithm. This value must follow the * guidelines provided by RFC-8624 Section 3.1. *
*/ inline bool SigningAlgorithmMnemonicHasBeenSet() const { return m_signingAlgorithmMnemonicHasBeenSet; } /** *A string used to represent the signing algorithm. This value must follow the * guidelines provided by RFC-8624 Section 3.1. *
*/ inline void SetSigningAlgorithmMnemonic(const Aws::String& value) { m_signingAlgorithmMnemonicHasBeenSet = true; m_signingAlgorithmMnemonic = value; } /** *A string used to represent the signing algorithm. This value must follow the * guidelines provided by RFC-8624 Section 3.1. *
*/ inline void SetSigningAlgorithmMnemonic(Aws::String&& value) { m_signingAlgorithmMnemonicHasBeenSet = true; m_signingAlgorithmMnemonic = std::move(value); } /** *A string used to represent the signing algorithm. This value must follow the * guidelines provided by RFC-8624 Section 3.1. *
*/ inline void SetSigningAlgorithmMnemonic(const char* value) { m_signingAlgorithmMnemonicHasBeenSet = true; m_signingAlgorithmMnemonic.assign(value); } /** *A string used to represent the signing algorithm. This value must follow the * guidelines provided by RFC-8624 Section 3.1. *
*/ inline KeySigningKey& WithSigningAlgorithmMnemonic(const Aws::String& value) { SetSigningAlgorithmMnemonic(value); return *this;} /** *A string used to represent the signing algorithm. This value must follow the * guidelines provided by RFC-8624 Section 3.1. *
*/ inline KeySigningKey& WithSigningAlgorithmMnemonic(Aws::String&& value) { SetSigningAlgorithmMnemonic(std::move(value)); return *this;} /** *A string used to represent the signing algorithm. This value must follow the * guidelines provided by RFC-8624 Section 3.1. *
*/ inline KeySigningKey& WithSigningAlgorithmMnemonic(const char* value) { SetSigningAlgorithmMnemonic(value); return *this;} /** *An integer used to represent the signing algorithm. This value must follow * the guidelines provided by RFC-8624 Section 3.1. *
*/ inline int GetSigningAlgorithmType() const{ return m_signingAlgorithmType; } /** *An integer used to represent the signing algorithm. This value must follow * the guidelines provided by RFC-8624 Section 3.1. *
*/ inline bool SigningAlgorithmTypeHasBeenSet() const { return m_signingAlgorithmTypeHasBeenSet; } /** *An integer used to represent the signing algorithm. This value must follow * the guidelines provided by RFC-8624 Section 3.1. *
*/ inline void SetSigningAlgorithmType(int value) { m_signingAlgorithmTypeHasBeenSet = true; m_signingAlgorithmType = value; } /** *An integer used to represent the signing algorithm. This value must follow * the guidelines provided by RFC-8624 Section 3.1. *
*/ inline KeySigningKey& WithSigningAlgorithmType(int value) { SetSigningAlgorithmType(value); return *this;} /** *A string used to represent the delegation signer digest algorithm. This value * must follow the guidelines provided by RFC-8624 Section 3.3. *
*/ inline const Aws::String& GetDigestAlgorithmMnemonic() const{ return m_digestAlgorithmMnemonic; } /** *A string used to represent the delegation signer digest algorithm. This value * must follow the guidelines provided by RFC-8624 Section 3.3. *
*/ inline bool DigestAlgorithmMnemonicHasBeenSet() const { return m_digestAlgorithmMnemonicHasBeenSet; } /** *A string used to represent the delegation signer digest algorithm. This value * must follow the guidelines provided by RFC-8624 Section 3.3. *
*/ inline void SetDigestAlgorithmMnemonic(const Aws::String& value) { m_digestAlgorithmMnemonicHasBeenSet = true; m_digestAlgorithmMnemonic = value; } /** *A string used to represent the delegation signer digest algorithm. This value * must follow the guidelines provided by RFC-8624 Section 3.3. *
*/ inline void SetDigestAlgorithmMnemonic(Aws::String&& value) { m_digestAlgorithmMnemonicHasBeenSet = true; m_digestAlgorithmMnemonic = std::move(value); } /** *A string used to represent the delegation signer digest algorithm. This value * must follow the guidelines provided by RFC-8624 Section 3.3. *
*/ inline void SetDigestAlgorithmMnemonic(const char* value) { m_digestAlgorithmMnemonicHasBeenSet = true; m_digestAlgorithmMnemonic.assign(value); } /** *A string used to represent the delegation signer digest algorithm. This value * must follow the guidelines provided by RFC-8624 Section 3.3. *
*/ inline KeySigningKey& WithDigestAlgorithmMnemonic(const Aws::String& value) { SetDigestAlgorithmMnemonic(value); return *this;} /** *A string used to represent the delegation signer digest algorithm. This value * must follow the guidelines provided by RFC-8624 Section 3.3. *
*/ inline KeySigningKey& WithDigestAlgorithmMnemonic(Aws::String&& value) { SetDigestAlgorithmMnemonic(std::move(value)); return *this;} /** *A string used to represent the delegation signer digest algorithm. This value * must follow the guidelines provided by RFC-8624 Section 3.3. *
*/ inline KeySigningKey& WithDigestAlgorithmMnemonic(const char* value) { SetDigestAlgorithmMnemonic(value); return *this;} /** *An integer used to represent the delegation signer digest algorithm. This * value must follow the guidelines provided by RFC-8624 Section * 3.3.
*/ inline int GetDigestAlgorithmType() const{ return m_digestAlgorithmType; } /** *An integer used to represent the delegation signer digest algorithm. This * value must follow the guidelines provided by RFC-8624 Section * 3.3.
*/ inline bool DigestAlgorithmTypeHasBeenSet() const { return m_digestAlgorithmTypeHasBeenSet; } /** *An integer used to represent the delegation signer digest algorithm. This * value must follow the guidelines provided by RFC-8624 Section * 3.3.
*/ inline void SetDigestAlgorithmType(int value) { m_digestAlgorithmTypeHasBeenSet = true; m_digestAlgorithmType = value; } /** *An integer used to represent the delegation signer digest algorithm. This * value must follow the guidelines provided by RFC-8624 Section * 3.3.
*/ inline KeySigningKey& WithDigestAlgorithmType(int value) { SetDigestAlgorithmType(value); return *this;} /** *An integer used to identify the DNSSEC record for the domain name. The * process used to calculate the value is described in RFC-4034 Appendix B.
*/ inline int GetKeyTag() const{ return m_keyTag; } /** *An integer used to identify the DNSSEC record for the domain name. The * process used to calculate the value is described in RFC-4034 Appendix B.
*/ inline bool KeyTagHasBeenSet() const { return m_keyTagHasBeenSet; } /** *An integer used to identify the DNSSEC record for the domain name. The * process used to calculate the value is described in RFC-4034 Appendix B.
*/ inline void SetKeyTag(int value) { m_keyTagHasBeenSet = true; m_keyTag = value; } /** *An integer used to identify the DNSSEC record for the domain name. The * process used to calculate the value is described in RFC-4034 Appendix B.
*/ inline KeySigningKey& WithKeyTag(int value) { SetKeyTag(value); return *this;} /** *A cryptographic digest of a DNSKEY resource record (RR). DNSKEY records are * used to publish the public key that resolvers can use to verify DNSSEC * signatures that are used to secure certain kinds of information provided by the * DNS system.
*/ inline const Aws::String& GetDigestValue() const{ return m_digestValue; } /** *A cryptographic digest of a DNSKEY resource record (RR). DNSKEY records are * used to publish the public key that resolvers can use to verify DNSSEC * signatures that are used to secure certain kinds of information provided by the * DNS system.
*/ inline bool DigestValueHasBeenSet() const { return m_digestValueHasBeenSet; } /** *A cryptographic digest of a DNSKEY resource record (RR). DNSKEY records are * used to publish the public key that resolvers can use to verify DNSSEC * signatures that are used to secure certain kinds of information provided by the * DNS system.
*/ inline void SetDigestValue(const Aws::String& value) { m_digestValueHasBeenSet = true; m_digestValue = value; } /** *A cryptographic digest of a DNSKEY resource record (RR). DNSKEY records are * used to publish the public key that resolvers can use to verify DNSSEC * signatures that are used to secure certain kinds of information provided by the * DNS system.
*/ inline void SetDigestValue(Aws::String&& value) { m_digestValueHasBeenSet = true; m_digestValue = std::move(value); } /** *A cryptographic digest of a DNSKEY resource record (RR). DNSKEY records are * used to publish the public key that resolvers can use to verify DNSSEC * signatures that are used to secure certain kinds of information provided by the * DNS system.
*/ inline void SetDigestValue(const char* value) { m_digestValueHasBeenSet = true; m_digestValue.assign(value); } /** *A cryptographic digest of a DNSKEY resource record (RR). DNSKEY records are * used to publish the public key that resolvers can use to verify DNSSEC * signatures that are used to secure certain kinds of information provided by the * DNS system.
*/ inline KeySigningKey& WithDigestValue(const Aws::String& value) { SetDigestValue(value); return *this;} /** *A cryptographic digest of a DNSKEY resource record (RR). DNSKEY records are * used to publish the public key that resolvers can use to verify DNSSEC * signatures that are used to secure certain kinds of information provided by the * DNS system.
*/ inline KeySigningKey& WithDigestValue(Aws::String&& value) { SetDigestValue(std::move(value)); return *this;} /** *A cryptographic digest of a DNSKEY resource record (RR). DNSKEY records are * used to publish the public key that resolvers can use to verify DNSSEC * signatures that are used to secure certain kinds of information provided by the * DNS system.
*/ inline KeySigningKey& WithDigestValue(const char* value) { SetDigestValue(value); return *this;} /** *The public key, represented as a Base64 encoding, as required by RFC-4034 Page 5.
*/ inline const Aws::String& GetPublicKey() const{ return m_publicKey; } /** *The public key, represented as a Base64 encoding, as required by RFC-4034 Page 5.
*/ inline bool PublicKeyHasBeenSet() const { return m_publicKeyHasBeenSet; } /** *The public key, represented as a Base64 encoding, as required by RFC-4034 Page 5.
*/ inline void SetPublicKey(const Aws::String& value) { m_publicKeyHasBeenSet = true; m_publicKey = value; } /** *The public key, represented as a Base64 encoding, as required by RFC-4034 Page 5.
*/ inline void SetPublicKey(Aws::String&& value) { m_publicKeyHasBeenSet = true; m_publicKey = std::move(value); } /** *The public key, represented as a Base64 encoding, as required by RFC-4034 Page 5.
*/ inline void SetPublicKey(const char* value) { m_publicKeyHasBeenSet = true; m_publicKey.assign(value); } /** *The public key, represented as a Base64 encoding, as required by RFC-4034 Page 5.
*/ inline KeySigningKey& WithPublicKey(const Aws::String& value) { SetPublicKey(value); return *this;} /** *The public key, represented as a Base64 encoding, as required by RFC-4034 Page 5.
*/ inline KeySigningKey& WithPublicKey(Aws::String&& value) { SetPublicKey(std::move(value)); return *this;} /** *The public key, represented as a Base64 encoding, as required by RFC-4034 Page 5.
*/ inline KeySigningKey& WithPublicKey(const char* value) { SetPublicKey(value); return *this;} /** *A string that represents a delegation signer (DS) record.
*/ inline const Aws::String& GetDSRecord() const{ return m_dSRecord; } /** *A string that represents a delegation signer (DS) record.
*/ inline bool DSRecordHasBeenSet() const { return m_dSRecordHasBeenSet; } /** *A string that represents a delegation signer (DS) record.
*/ inline void SetDSRecord(const Aws::String& value) { m_dSRecordHasBeenSet = true; m_dSRecord = value; } /** *A string that represents a delegation signer (DS) record.
*/ inline void SetDSRecord(Aws::String&& value) { m_dSRecordHasBeenSet = true; m_dSRecord = std::move(value); } /** *A string that represents a delegation signer (DS) record.
*/ inline void SetDSRecord(const char* value) { m_dSRecordHasBeenSet = true; m_dSRecord.assign(value); } /** *A string that represents a delegation signer (DS) record.
*/ inline KeySigningKey& WithDSRecord(const Aws::String& value) { SetDSRecord(value); return *this;} /** *A string that represents a delegation signer (DS) record.
*/ inline KeySigningKey& WithDSRecord(Aws::String&& value) { SetDSRecord(std::move(value)); return *this;} /** *A string that represents a delegation signer (DS) record.
*/ inline KeySigningKey& WithDSRecord(const char* value) { SetDSRecord(value); return *this;} /** *A string that represents a DNSKEY record.
*/ inline const Aws::String& GetDNSKEYRecord() const{ return m_dNSKEYRecord; } /** *A string that represents a DNSKEY record.
*/ inline bool DNSKEYRecordHasBeenSet() const { return m_dNSKEYRecordHasBeenSet; } /** *A string that represents a DNSKEY record.
*/ inline void SetDNSKEYRecord(const Aws::String& value) { m_dNSKEYRecordHasBeenSet = true; m_dNSKEYRecord = value; } /** *A string that represents a DNSKEY record.
*/ inline void SetDNSKEYRecord(Aws::String&& value) { m_dNSKEYRecordHasBeenSet = true; m_dNSKEYRecord = std::move(value); } /** *A string that represents a DNSKEY record.
*/ inline void SetDNSKEYRecord(const char* value) { m_dNSKEYRecordHasBeenSet = true; m_dNSKEYRecord.assign(value); } /** *A string that represents a DNSKEY record.
*/ inline KeySigningKey& WithDNSKEYRecord(const Aws::String& value) { SetDNSKEYRecord(value); return *this;} /** *A string that represents a DNSKEY record.
*/ inline KeySigningKey& WithDNSKEYRecord(Aws::String&& value) { SetDNSKEYRecord(std::move(value)); return *this;} /** *A string that represents a DNSKEY record.
*/ inline KeySigningKey& WithDNSKEYRecord(const char* value) { SetDNSKEYRecord(value); return *this;} /** *A string that represents the current key-signing key (KSK) status.
*Status can have one of the following values:
The KSK is being used for signing.
The * KSK is not being used for signing.
The KSK * is in the process of being deleted.
There is a problem with the KSK that requires you to take action to resolve. * For example, the customer managed key might have been deleted, or the * permissions for the customer managed key might have been changed.
There was an error during a request. Before * you can continue to work with DNSSEC signing, including actions that involve * this KSK, you must correct the problem. For example, you may need to activate or * deactivate the KSK.
A string that represents the current key-signing key (KSK) status.
*Status can have one of the following values:
The KSK is being used for signing.
The * KSK is not being used for signing.
The KSK * is in the process of being deleted.
There is a problem with the KSK that requires you to take action to resolve. * For example, the customer managed key might have been deleted, or the * permissions for the customer managed key might have been changed.
There was an error during a request. Before * you can continue to work with DNSSEC signing, including actions that involve * this KSK, you must correct the problem. For example, you may need to activate or * deactivate the KSK.
A string that represents the current key-signing key (KSK) status.
*Status can have one of the following values:
The KSK is being used for signing.
The * KSK is not being used for signing.
The KSK * is in the process of being deleted.
There is a problem with the KSK that requires you to take action to resolve. * For example, the customer managed key might have been deleted, or the * permissions for the customer managed key might have been changed.
There was an error during a request. Before * you can continue to work with DNSSEC signing, including actions that involve * this KSK, you must correct the problem. For example, you may need to activate or * deactivate the KSK.
A string that represents the current key-signing key (KSK) status.
*Status can have one of the following values:
The KSK is being used for signing.
The * KSK is not being used for signing.
The KSK * is in the process of being deleted.
There is a problem with the KSK that requires you to take action to resolve. * For example, the customer managed key might have been deleted, or the * permissions for the customer managed key might have been changed.
There was an error during a request. Before * you can continue to work with DNSSEC signing, including actions that involve * this KSK, you must correct the problem. For example, you may need to activate or * deactivate the KSK.
A string that represents the current key-signing key (KSK) status.
*Status can have one of the following values:
The KSK is being used for signing.
The * KSK is not being used for signing.
The KSK * is in the process of being deleted.
There is a problem with the KSK that requires you to take action to resolve. * For example, the customer managed key might have been deleted, or the * permissions for the customer managed key might have been changed.
There was an error during a request. Before * you can continue to work with DNSSEC signing, including actions that involve * this KSK, you must correct the problem. For example, you may need to activate or * deactivate the KSK.
A string that represents the current key-signing key (KSK) status.
*Status can have one of the following values:
The KSK is being used for signing.
The * KSK is not being used for signing.
The KSK * is in the process of being deleted.
There is a problem with the KSK that requires you to take action to resolve. * For example, the customer managed key might have been deleted, or the * permissions for the customer managed key might have been changed.
There was an error during a request. Before * you can continue to work with DNSSEC signing, including actions that involve * this KSK, you must correct the problem. For example, you may need to activate or * deactivate the KSK.
A string that represents the current key-signing key (KSK) status.
*Status can have one of the following values:
The KSK is being used for signing.
The * KSK is not being used for signing.
The KSK * is in the process of being deleted.
There is a problem with the KSK that requires you to take action to resolve. * For example, the customer managed key might have been deleted, or the * permissions for the customer managed key might have been changed.
There was an error during a request. Before * you can continue to work with DNSSEC signing, including actions that involve * this KSK, you must correct the problem. For example, you may need to activate or * deactivate the KSK.
A string that represents the current key-signing key (KSK) status.
*Status can have one of the following values:
The KSK is being used for signing.
The * KSK is not being used for signing.
The KSK * is in the process of being deleted.
There is a problem with the KSK that requires you to take action to resolve. * For example, the customer managed key might have been deleted, or the * permissions for the customer managed key might have been changed.
There was an error during a request. Before * you can continue to work with DNSSEC signing, including actions that involve * this KSK, you must correct the problem. For example, you may need to activate or * deactivate the KSK.
The status message provided for the following key-signing key (KSK) statuses:
* ACTION_NEEDED or INTERNAL_FAILURE. The status message
* includes information about what the problem might be and steps that you can take
* to correct the issue.
The status message provided for the following key-signing key (KSK) statuses:
* ACTION_NEEDED or INTERNAL_FAILURE. The status message
* includes information about what the problem might be and steps that you can take
* to correct the issue.
The status message provided for the following key-signing key (KSK) statuses:
* ACTION_NEEDED or INTERNAL_FAILURE. The status message
* includes information about what the problem might be and steps that you can take
* to correct the issue.
The status message provided for the following key-signing key (KSK) statuses:
* ACTION_NEEDED or INTERNAL_FAILURE. The status message
* includes information about what the problem might be and steps that you can take
* to correct the issue.
The status message provided for the following key-signing key (KSK) statuses:
* ACTION_NEEDED or INTERNAL_FAILURE. The status message
* includes information about what the problem might be and steps that you can take
* to correct the issue.
The status message provided for the following key-signing key (KSK) statuses:
* ACTION_NEEDED or INTERNAL_FAILURE. The status message
* includes information about what the problem might be and steps that you can take
* to correct the issue.
The status message provided for the following key-signing key (KSK) statuses:
* ACTION_NEEDED or INTERNAL_FAILURE. The status message
* includes information about what the problem might be and steps that you can take
* to correct the issue.
The status message provided for the following key-signing key (KSK) statuses:
* ACTION_NEEDED or INTERNAL_FAILURE. The status message
* includes information about what the problem might be and steps that you can take
* to correct the issue.
The date when the key-signing key (KSK) was created.
*/ inline const Aws::Utils::DateTime& GetCreatedDate() const{ return m_createdDate; } /** *The date when the key-signing key (KSK) was created.
*/ inline bool CreatedDateHasBeenSet() const { return m_createdDateHasBeenSet; } /** *The date when the key-signing key (KSK) was created.
*/ inline void SetCreatedDate(const Aws::Utils::DateTime& value) { m_createdDateHasBeenSet = true; m_createdDate = value; } /** *The date when the key-signing key (KSK) was created.
*/ inline void SetCreatedDate(Aws::Utils::DateTime&& value) { m_createdDateHasBeenSet = true; m_createdDate = std::move(value); } /** *The date when the key-signing key (KSK) was created.
*/ inline KeySigningKey& WithCreatedDate(const Aws::Utils::DateTime& value) { SetCreatedDate(value); return *this;} /** *The date when the key-signing key (KSK) was created.
*/ inline KeySigningKey& WithCreatedDate(Aws::Utils::DateTime&& value) { SetCreatedDate(std::move(value)); return *this;} /** *The last time that the key-signing key (KSK) was changed.
*/ inline const Aws::Utils::DateTime& GetLastModifiedDate() const{ return m_lastModifiedDate; } /** *The last time that the key-signing key (KSK) was changed.
*/ inline bool LastModifiedDateHasBeenSet() const { return m_lastModifiedDateHasBeenSet; } /** *The last time that the key-signing key (KSK) was changed.
*/ inline void SetLastModifiedDate(const Aws::Utils::DateTime& value) { m_lastModifiedDateHasBeenSet = true; m_lastModifiedDate = value; } /** *The last time that the key-signing key (KSK) was changed.
*/ inline void SetLastModifiedDate(Aws::Utils::DateTime&& value) { m_lastModifiedDateHasBeenSet = true; m_lastModifiedDate = std::move(value); } /** *The last time that the key-signing key (KSK) was changed.
*/ inline KeySigningKey& WithLastModifiedDate(const Aws::Utils::DateTime& value) { SetLastModifiedDate(value); return *this;} /** *The last time that the key-signing key (KSK) was changed.
*/ inline KeySigningKey& WithLastModifiedDate(Aws::Utils::DateTime&& value) { SetLastModifiedDate(std::move(value)); return *this;} private: Aws::String m_name; bool m_nameHasBeenSet = false; Aws::String m_kmsArn; bool m_kmsArnHasBeenSet = false; int m_flag; bool m_flagHasBeenSet = false; Aws::String m_signingAlgorithmMnemonic; bool m_signingAlgorithmMnemonicHasBeenSet = false; int m_signingAlgorithmType; bool m_signingAlgorithmTypeHasBeenSet = false; Aws::String m_digestAlgorithmMnemonic; bool m_digestAlgorithmMnemonicHasBeenSet = false; int m_digestAlgorithmType; bool m_digestAlgorithmTypeHasBeenSet = false; int m_keyTag; bool m_keyTagHasBeenSet = false; Aws::String m_digestValue; bool m_digestValueHasBeenSet = false; Aws::String m_publicKey; bool m_publicKeyHasBeenSet = false; Aws::String m_dSRecord; bool m_dSRecordHasBeenSet = false; Aws::String m_dNSKEYRecord; bool m_dNSKEYRecordHasBeenSet = false; Aws::String m_status; bool m_statusHasBeenSet = false; Aws::String m_statusMessage; bool m_statusMessageHasBeenSet = false; Aws::Utils::DateTime m_createdDate; bool m_createdDateHasBeenSet = false; Aws::Utils::DateTime m_lastModifiedDate; bool m_lastModifiedDateHasBeenSet = false; }; } // namespace Model } // namespace Route53 } // namespace Aws