#[non_exhaustive]pub struct KeySigningKey {Show 16 fields
pub name: Option<String>,
pub kms_arn: Option<String>,
pub flag: i32,
pub signing_algorithm_mnemonic: Option<String>,
pub signing_algorithm_type: i32,
pub digest_algorithm_mnemonic: Option<String>,
pub digest_algorithm_type: i32,
pub key_tag: i32,
pub digest_value: Option<String>,
pub public_key: Option<String>,
pub ds_record: Option<String>,
pub dnskey_record: Option<String>,
pub status: Option<String>,
pub status_message: Option<String>,
pub created_date: Option<DateTime>,
pub last_modified_date: Option<DateTime>,
}Expand description
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.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.name: Option<String>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.
kms_arn: Option<String>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.
flag: i32An integer that specifies how the key is used. For key-signing key (KSK), this value is always 257.
signing_algorithm_mnemonic: Option<String>A string used to represent the signing algorithm. This value must follow the guidelines provided by RFC-8624 Section 3.1.
signing_algorithm_type: i32An integer used to represent the signing algorithm. This value must follow the guidelines provided by RFC-8624 Section 3.1.
digest_algorithm_mnemonic: Option<String>A string used to represent the delegation signer digest algorithm. This value must follow the guidelines provided by RFC-8624 Section 3.3.
digest_algorithm_type: i32An integer used to represent the delegation signer digest algorithm. This value must follow the guidelines provided by RFC-8624 Section 3.3.
key_tag: i32An 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.
digest_value: Option<String>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.
public_key: Option<String>The public key, represented as a Base64 encoding, as required by RFC-4034 Page 5.
ds_record: Option<String>A string that represents a delegation signer (DS) record.
dnskey_record: Option<String>A string that represents a DNSKEY record.
status: Option<String>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.
status_message: Option<String>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.
created_date: Option<DateTime>The date when the key-signing key (KSK) was created.
last_modified_date: Option<DateTime>The last time that the key-signing key (KSK) was changed.
Implementations§
Source§impl KeySigningKey
impl KeySigningKey
Sourcepub fn name(&self) -> Option<&str>
pub fn name(&self) -> Option<&str>
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.
Sourcepub fn kms_arn(&self) -> Option<&str>
pub fn kms_arn(&self) -> Option<&str>
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.
Sourcepub fn flag(&self) -> i32
pub fn flag(&self) -> i32
An integer that specifies how the key is used. For key-signing key (KSK), this value is always 257.
Sourcepub fn signing_algorithm_mnemonic(&self) -> Option<&str>
pub fn signing_algorithm_mnemonic(&self) -> Option<&str>
A string used to represent the signing algorithm. This value must follow the guidelines provided by RFC-8624 Section 3.1.
Sourcepub fn signing_algorithm_type(&self) -> i32
pub fn signing_algorithm_type(&self) -> i32
An integer used to represent the signing algorithm. This value must follow the guidelines provided by RFC-8624 Section 3.1.
Sourcepub fn digest_algorithm_mnemonic(&self) -> Option<&str>
pub fn digest_algorithm_mnemonic(&self) -> Option<&str>
A string used to represent the delegation signer digest algorithm. This value must follow the guidelines provided by RFC-8624 Section 3.3.
Sourcepub fn digest_algorithm_type(&self) -> i32
pub fn digest_algorithm_type(&self) -> i32
An integer used to represent the delegation signer digest algorithm. This value must follow the guidelines provided by RFC-8624 Section 3.3.
Sourcepub fn key_tag(&self) -> i32
pub fn key_tag(&self) -> i32
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.
Sourcepub fn digest_value(&self) -> Option<&str>
pub fn digest_value(&self) -> Option<&str>
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.
Sourcepub fn public_key(&self) -> Option<&str>
pub fn public_key(&self) -> Option<&str>
The public key, represented as a Base64 encoding, as required by RFC-4034 Page 5.
Sourcepub fn ds_record(&self) -> Option<&str>
pub fn ds_record(&self) -> Option<&str>
A string that represents a delegation signer (DS) record.
Sourcepub fn dnskey_record(&self) -> Option<&str>
pub fn dnskey_record(&self) -> Option<&str>
A string that represents a DNSKEY record.
Sourcepub fn status(&self) -> Option<&str>
pub fn status(&self) -> Option<&str>
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.
Sourcepub fn status_message(&self) -> Option<&str>
pub fn status_message(&self) -> Option<&str>
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.
Sourcepub fn created_date(&self) -> Option<&DateTime>
pub fn created_date(&self) -> Option<&DateTime>
The date when the key-signing key (KSK) was created.
Sourcepub fn last_modified_date(&self) -> Option<&DateTime>
pub fn last_modified_date(&self) -> Option<&DateTime>
The last time that the key-signing key (KSK) was changed.
Source§impl KeySigningKey
impl KeySigningKey
Sourcepub fn builder() -> KeySigningKeyBuilder
pub fn builder() -> KeySigningKeyBuilder
Creates a new builder-style object to manufacture KeySigningKey.
Trait Implementations§
Source§impl Clone for KeySigningKey
impl Clone for KeySigningKey
Source§fn clone(&self) -> KeySigningKey
fn clone(&self) -> KeySigningKey
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for KeySigningKey
impl Debug for KeySigningKey
Source§impl PartialEq for KeySigningKey
impl PartialEq for KeySigningKey
Source§fn eq(&self, other: &KeySigningKey) -> bool
fn eq(&self, other: &KeySigningKey) -> bool
self and other values to be equal, and is used by ==.impl StructuralPartialEq for KeySigningKey
Auto Trait Implementations§
impl Freeze for KeySigningKey
impl RefUnwindSafe for KeySigningKey
impl Send for KeySigningKey
impl Sync for KeySigningKey
impl Unpin for KeySigningKey
impl UnsafeUnpin for KeySigningKey
impl UnwindSafe for KeySigningKey
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Paint for Twhere
T: ?Sized,
impl<T> Paint for Twhere
T: ?Sized,
Source§fn fg(&self, value: Color) -> Painted<&T>
fn fg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self with the foreground set to
value.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like red() and
green(), which have the same functionality but are
pithier.
§Example
Set foreground color to white using fg():
use yansi::{Paint, Color};
painted.fg(Color::White);Set foreground color to white using white().
use yansi::Paint;
painted.white();Source§fn bright_black(&self) -> Painted<&T>
fn bright_black(&self) -> Painted<&T>
Source§fn bright_red(&self) -> Painted<&T>
fn bright_red(&self) -> Painted<&T>
Source§fn bright_green(&self) -> Painted<&T>
fn bright_green(&self) -> Painted<&T>
Source§fn bright_yellow(&self) -> Painted<&T>
fn bright_yellow(&self) -> Painted<&T>
Source§fn bright_blue(&self) -> Painted<&T>
fn bright_blue(&self) -> Painted<&T>
Source§fn bright_magenta(&self) -> Painted<&T>
fn bright_magenta(&self) -> Painted<&T>
Source§fn bright_cyan(&self) -> Painted<&T>
fn bright_cyan(&self) -> Painted<&T>
Source§fn bright_white(&self) -> Painted<&T>
fn bright_white(&self) -> Painted<&T>
Source§fn bg(&self, value: Color) -> Painted<&T>
fn bg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self with the background set to
value.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like on_red() and
on_green(), which have the same functionality but
are pithier.
§Example
Set background color to red using fg():
use yansi::{Paint, Color};
painted.bg(Color::Red);Set background color to red using on_red().
use yansi::Paint;
painted.on_red();Source§fn on_primary(&self) -> Painted<&T>
fn on_primary(&self) -> Painted<&T>
Source§fn on_magenta(&self) -> Painted<&T>
fn on_magenta(&self) -> Painted<&T>
Source§fn on_bright_black(&self) -> Painted<&T>
fn on_bright_black(&self) -> Painted<&T>
Source§fn on_bright_red(&self) -> Painted<&T>
fn on_bright_red(&self) -> Painted<&T>
Source§fn on_bright_green(&self) -> Painted<&T>
fn on_bright_green(&self) -> Painted<&T>
Source§fn on_bright_yellow(&self) -> Painted<&T>
fn on_bright_yellow(&self) -> Painted<&T>
Source§fn on_bright_blue(&self) -> Painted<&T>
fn on_bright_blue(&self) -> Painted<&T>
Source§fn on_bright_magenta(&self) -> Painted<&T>
fn on_bright_magenta(&self) -> Painted<&T>
Source§fn on_bright_cyan(&self) -> Painted<&T>
fn on_bright_cyan(&self) -> Painted<&T>
Source§fn on_bright_white(&self) -> Painted<&T>
fn on_bright_white(&self) -> Painted<&T>
Source§fn attr(&self, value: Attribute) -> Painted<&T>
fn attr(&self, value: Attribute) -> Painted<&T>
Enables the styling Attribute value.
This method should be used rarely. Instead, prefer to use
attribute-specific builder methods like bold() and
underline(), which have the same functionality
but are pithier.
§Example
Make text bold using attr():
use yansi::{Paint, Attribute};
painted.attr(Attribute::Bold);Make text bold using using bold().
use yansi::Paint;
painted.bold();Source§fn rapid_blink(&self) -> Painted<&T>
fn rapid_blink(&self) -> Painted<&T>
Source§fn quirk(&self, value: Quirk) -> Painted<&T>
fn quirk(&self, value: Quirk) -> Painted<&T>
Enables the yansi Quirk value.
This method should be used rarely. Instead, prefer to use quirk-specific
builder methods like mask() and
wrap(), which have the same functionality but are
pithier.
§Example
Enable wrapping using .quirk():
use yansi::{Paint, Quirk};
painted.quirk(Quirk::Wrap);Enable wrapping using wrap().
use yansi::Paint;
painted.wrap();Source§fn clear(&self) -> Painted<&T>
👎Deprecated since 1.0.1: renamed to resetting() due to conflicts with Vec::clear().
The clear() method will be removed in a future release.
fn clear(&self) -> Painted<&T>
renamed to resetting() due to conflicts with Vec::clear().
The clear() method will be removed in a future release.
Source§fn whenever(&self, value: Condition) -> Painted<&T>
fn whenever(&self, value: Condition) -> Painted<&T>
Conditionally enable styling based on whether the Condition value
applies. Replaces any previous condition.
See the crate level docs for more details.
§Example
Enable styling painted only when both stdout and stderr are TTYs:
use yansi::{Paint, Condition};
painted.red().on_yellow().whenever(Condition::STDOUTERR_ARE_TTY);