Copyright | (c) 2013-2023 Brendan Hay |
---|---|
License | Mozilla Public License, v. 2.0. |
Maintainer | Brendan Hay |
Stability | auto-generated |
Portability | non-portable (GHC extensions) |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
Synopsis
- data KeySigningKey = KeySigningKey' {
- createdDate :: Maybe ISO8601
- dNSKEYRecord :: Maybe Text
- dSRecord :: Maybe Text
- digestAlgorithmMnemonic :: Maybe Text
- digestAlgorithmType :: Maybe Int
- digestValue :: Maybe Text
- flag :: Maybe Int
- keyTag :: Maybe Natural
- kmsArn :: Maybe Text
- lastModifiedDate :: Maybe ISO8601
- name :: Maybe Text
- publicKey :: Maybe Text
- signingAlgorithmMnemonic :: Maybe Text
- signingAlgorithmType :: Maybe Int
- status :: Maybe Text
- statusMessage :: Maybe Text
- newKeySigningKey :: KeySigningKey
- keySigningKey_createdDate :: Lens' KeySigningKey (Maybe UTCTime)
- keySigningKey_dNSKEYRecord :: Lens' KeySigningKey (Maybe Text)
- keySigningKey_dSRecord :: Lens' KeySigningKey (Maybe Text)
- keySigningKey_digestAlgorithmMnemonic :: Lens' KeySigningKey (Maybe Text)
- keySigningKey_digestAlgorithmType :: Lens' KeySigningKey (Maybe Int)
- keySigningKey_digestValue :: Lens' KeySigningKey (Maybe Text)
- keySigningKey_flag :: Lens' KeySigningKey (Maybe Int)
- keySigningKey_keyTag :: Lens' KeySigningKey (Maybe Natural)
- keySigningKey_kmsArn :: Lens' KeySigningKey (Maybe Text)
- keySigningKey_lastModifiedDate :: Lens' KeySigningKey (Maybe UTCTime)
- keySigningKey_name :: Lens' KeySigningKey (Maybe Text)
- keySigningKey_publicKey :: Lens' KeySigningKey (Maybe Text)
- keySigningKey_signingAlgorithmMnemonic :: Lens' KeySigningKey (Maybe Text)
- keySigningKey_signingAlgorithmType :: Lens' KeySigningKey (Maybe Int)
- keySigningKey_status :: Lens' KeySigningKey (Maybe Text)
- keySigningKey_statusMessage :: Lens' KeySigningKey (Maybe Text)
Documentation
data KeySigningKey Source #
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: newKeySigningKey
smart constructor.
KeySigningKey' | |
|
Instances
newKeySigningKey :: KeySigningKey Source #
Create a value of KeySigningKey
with all optional fields omitted.
Use generic-lens or optics to modify other optional fields.
The following record fields are available, with the corresponding lenses provided for backwards compatibility:
$sel:createdDate:KeySigningKey'
, keySigningKey_createdDate
- The date when the key-signing key (KSK) was created.
$sel:dNSKEYRecord:KeySigningKey'
, keySigningKey_dNSKEYRecord
- A string that represents a DNSKEY record.
$sel:dSRecord:KeySigningKey'
, keySigningKey_dSRecord
- A string that represents a delegation signer (DS) record.
$sel:digestAlgorithmMnemonic:KeySigningKey'
, keySigningKey_digestAlgorithmMnemonic
- A string used to represent the delegation signer digest algorithm. This
value must follow the guidelines provided by
RFC-8624 Section 3.3.
$sel:digestAlgorithmType:KeySigningKey'
, keySigningKey_digestAlgorithmType
- An integer used to represent the delegation signer digest algorithm.
This value must follow the guidelines provided by
RFC-8624 Section 3.3.
$sel:digestValue:KeySigningKey'
, keySigningKey_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.
$sel:flag:KeySigningKey'
, keySigningKey_flag
- An integer that specifies how the key is used. For key-signing key
(KSK), this value is always 257.
$sel:keyTag:KeySigningKey'
, keySigningKey_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.
$sel:kmsArn:KeySigningKey'
, keySigningKey_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:
- Status
- Enabled
- Key spec
- ECC_NIST_P256
- Key usage
- Sign and verify
- Key policy
- 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.
$sel:lastModifiedDate:KeySigningKey'
, keySigningKey_lastModifiedDate
- The last time that the key-signing key (KSK) was changed.
$sel:name:KeySigningKey'
, keySigningKey_name
- 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.
$sel:publicKey:KeySigningKey'
, keySigningKey_publicKey
- The public key, represented as a Base64 encoding, as required by
RFC-4034 Page 5.
$sel:signingAlgorithmMnemonic:KeySigningKey'
, keySigningKey_signingAlgorithmMnemonic
- A string used to represent the signing algorithm. This value must follow
the guidelines provided by
RFC-8624 Section 3.1.
$sel:signingAlgorithmType:KeySigningKey'
, keySigningKey_signingAlgorithmType
- An integer used to represent the signing algorithm. This value must
follow the guidelines provided by
RFC-8624 Section 3.1.
$sel:status:KeySigningKey'
, keySigningKey_status
- A string that represents the current key-signing key (KSK) status.
Status can have one of the following values:
- ACTIVE
- The KSK is being used for signing.
- INACTIVE
- The KSK is not being used for signing.
- DELETING
- The KSK is in the process of being deleted.
- ACTION_NEEDED
- 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.
- INTERNAL_FAILURE
- 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.
$sel:statusMessage:KeySigningKey'
, keySigningKey_statusMessage
- 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.
keySigningKey_createdDate :: Lens' KeySigningKey (Maybe UTCTime) Source #
The date when the key-signing key (KSK) was created.
keySigningKey_dNSKEYRecord :: Lens' KeySigningKey (Maybe Text) Source #
A string that represents a DNSKEY record.
keySigningKey_dSRecord :: Lens' KeySigningKey (Maybe Text) Source #
A string that represents a delegation signer (DS) record.
keySigningKey_digestAlgorithmMnemonic :: Lens' KeySigningKey (Maybe Text) Source #
A string used to represent the delegation signer digest algorithm. This value must follow the guidelines provided by RFC-8624 Section 3.3.
keySigningKey_digestAlgorithmType :: Lens' KeySigningKey (Maybe Int) Source #
An integer used to represent the delegation signer digest algorithm. This value must follow the guidelines provided by RFC-8624 Section 3.3.
keySigningKey_digestValue :: Lens' KeySigningKey (Maybe Text) Source #
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.
keySigningKey_flag :: Lens' KeySigningKey (Maybe Int) Source #
An integer that specifies how the key is used. For key-signing key (KSK), this value is always 257.
keySigningKey_keyTag :: Lens' KeySigningKey (Maybe Natural) Source #
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.
keySigningKey_kmsArn :: Lens' KeySigningKey (Maybe Text) Source #
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:
- Status
- Enabled
- Key spec
- ECC_NIST_P256
- Key usage
- Sign and verify
- Key policy
- 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.
keySigningKey_lastModifiedDate :: Lens' KeySigningKey (Maybe UTCTime) Source #
The last time that the key-signing key (KSK) was changed.
keySigningKey_name :: Lens' KeySigningKey (Maybe Text) Source #
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.
keySigningKey_publicKey :: Lens' KeySigningKey (Maybe Text) Source #
The public key, represented as a Base64 encoding, as required by RFC-4034 Page 5.
keySigningKey_signingAlgorithmMnemonic :: Lens' KeySigningKey (Maybe Text) Source #
A string used to represent the signing algorithm. This value must follow the guidelines provided by RFC-8624 Section 3.1.
keySigningKey_signingAlgorithmType :: Lens' KeySigningKey (Maybe Int) Source #
An integer used to represent the signing algorithm. This value must follow the guidelines provided by RFC-8624 Section 3.1.
keySigningKey_status :: Lens' KeySigningKey (Maybe Text) Source #
A string that represents the current key-signing key (KSK) status.
Status can have one of the following values:
- ACTIVE
- The KSK is being used for signing.
- INACTIVE
- The KSK is not being used for signing.
- DELETING
- The KSK is in the process of being deleted.
- ACTION_NEEDED
- 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.
- INTERNAL_FAILURE
- 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.
keySigningKey_statusMessage :: Lens' KeySigningKey (Maybe Text) Source #
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.