#[non_exhaustive]pub struct AccessPreviewFinding {Show 16 fields
pub id: String,
pub existing_finding_id: Option<String>,
pub existing_finding_status: Option<FindingStatus>,
pub principal: Option<HashMap<String, String>>,
pub action: Option<Vec<String>>,
pub condition: Option<HashMap<String, String>>,
pub resource: Option<String>,
pub is_public: Option<bool>,
pub resource_type: ResourceType,
pub created_at: DateTime,
pub change_type: FindingChangeType,
pub status: FindingStatus,
pub resource_owner_account: String,
pub error: Option<String>,
pub sources: Option<Vec<FindingSource>>,
pub resource_control_policy_restriction: Option<ResourceControlPolicyRestriction>,
}
Expand description
An access preview finding generated by the access preview.
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.id: String
The ID of the access preview finding. This ID uniquely identifies the element in the list of access preview findings and is not related to the finding ID in Access Analyzer.
existing_finding_id: Option<String>
The existing ID of the finding in IAM Access Analyzer, provided only for existing findings.
existing_finding_status: Option<FindingStatus>
The existing status of the finding, provided only for existing findings.
principal: Option<HashMap<String, String>>
The external principal that has access to a resource within the zone of trust.
action: Option<Vec<String>>
The action in the analyzed policy statement that an external principal has permission to perform.
condition: Option<HashMap<String, String>>
The condition in the analyzed policy statement that resulted in a finding.
resource: Option<String>
The resource that an external principal has access to. This is the resource associated with the access preview.
is_public: Option<bool>
Indicates whether the policy that generated the finding allows public access to the resource.
resource_type: ResourceType
The type of the resource that can be accessed in the finding.
created_at: DateTime
The time at which the access preview finding was created.
change_type: FindingChangeType
Provides context on how the access preview finding compares to existing access identified in IAM Access Analyzer.
-
New
- The finding is for newly-introduced access. -
Unchanged
- The preview finding is an existing finding that would remain unchanged. -
Changed
- The preview finding is an existing finding with a change in status.
For example, a Changed
finding with preview status Resolved
and existing status Active
indicates the existing Active
finding would become Resolved
as a result of the proposed permissions change.
status: FindingStatus
The preview status of the finding. This is what the status of the finding would be after permissions deployment. For example, a Changed
finding with preview status Resolved
and existing status Active
indicates the existing Active
finding would become Resolved
as a result of the proposed permissions change.
resource_owner_account: String
The Amazon Web Services account ID that owns the resource. For most Amazon Web Services resources, the owning account is the account in which the resource was created.
error: Option<String>
An error.
sources: Option<Vec<FindingSource>>
The sources of the finding. This indicates how the access that generated the finding is granted. It is populated for Amazon S3 bucket findings.
resource_control_policy_restriction: Option<ResourceControlPolicyRestriction>
The type of restriction applied to the finding by the resource owner with an Organizations resource control policy (RCP).
Implementations§
Source§impl AccessPreviewFinding
impl AccessPreviewFinding
Sourcepub fn id(&self) -> &str
pub fn id(&self) -> &str
The ID of the access preview finding. This ID uniquely identifies the element in the list of access preview findings and is not related to the finding ID in Access Analyzer.
Sourcepub fn existing_finding_id(&self) -> Option<&str>
pub fn existing_finding_id(&self) -> Option<&str>
The existing ID of the finding in IAM Access Analyzer, provided only for existing findings.
Sourcepub fn existing_finding_status(&self) -> Option<&FindingStatus>
pub fn existing_finding_status(&self) -> Option<&FindingStatus>
The existing status of the finding, provided only for existing findings.
Sourcepub fn principal(&self) -> Option<&HashMap<String, String>>
pub fn principal(&self) -> Option<&HashMap<String, String>>
The external principal that has access to a resource within the zone of trust.
Sourcepub fn action(&self) -> &[String]
pub fn action(&self) -> &[String]
The action in the analyzed policy statement that an external principal has permission to perform.
If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .action.is_none()
.
Sourcepub fn condition(&self) -> Option<&HashMap<String, String>>
pub fn condition(&self) -> Option<&HashMap<String, String>>
The condition in the analyzed policy statement that resulted in a finding.
Sourcepub fn resource(&self) -> Option<&str>
pub fn resource(&self) -> Option<&str>
The resource that an external principal has access to. This is the resource associated with the access preview.
Sourcepub fn is_public(&self) -> Option<bool>
pub fn is_public(&self) -> Option<bool>
Indicates whether the policy that generated the finding allows public access to the resource.
Sourcepub fn resource_type(&self) -> &ResourceType
pub fn resource_type(&self) -> &ResourceType
The type of the resource that can be accessed in the finding.
Sourcepub fn created_at(&self) -> &DateTime
pub fn created_at(&self) -> &DateTime
The time at which the access preview finding was created.
Sourcepub fn change_type(&self) -> &FindingChangeType
pub fn change_type(&self) -> &FindingChangeType
Provides context on how the access preview finding compares to existing access identified in IAM Access Analyzer.
-
New
- The finding is for newly-introduced access. -
Unchanged
- The preview finding is an existing finding that would remain unchanged. -
Changed
- The preview finding is an existing finding with a change in status.
For example, a Changed
finding with preview status Resolved
and existing status Active
indicates the existing Active
finding would become Resolved
as a result of the proposed permissions change.
Sourcepub fn status(&self) -> &FindingStatus
pub fn status(&self) -> &FindingStatus
The preview status of the finding. This is what the status of the finding would be after permissions deployment. For example, a Changed
finding with preview status Resolved
and existing status Active
indicates the existing Active
finding would become Resolved
as a result of the proposed permissions change.
Sourcepub fn resource_owner_account(&self) -> &str
pub fn resource_owner_account(&self) -> &str
The Amazon Web Services account ID that owns the resource. For most Amazon Web Services resources, the owning account is the account in which the resource was created.
Sourcepub fn sources(&self) -> &[FindingSource]
pub fn sources(&self) -> &[FindingSource]
The sources of the finding. This indicates how the access that generated the finding is granted. It is populated for Amazon S3 bucket findings.
If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .sources.is_none()
.
Sourcepub fn resource_control_policy_restriction(
&self,
) -> Option<&ResourceControlPolicyRestriction>
pub fn resource_control_policy_restriction( &self, ) -> Option<&ResourceControlPolicyRestriction>
The type of restriction applied to the finding by the resource owner with an Organizations resource control policy (RCP).
Source§impl AccessPreviewFinding
impl AccessPreviewFinding
Sourcepub fn builder() -> AccessPreviewFindingBuilder
pub fn builder() -> AccessPreviewFindingBuilder
Creates a new builder-style object to manufacture AccessPreviewFinding
.
Trait Implementations§
Source§impl Clone for AccessPreviewFinding
impl Clone for AccessPreviewFinding
Source§fn clone(&self) -> AccessPreviewFinding
fn clone(&self) -> AccessPreviewFinding
1.0.0 · Source§const fn clone_from(&mut self, source: &Self)
const fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for AccessPreviewFinding
impl Debug for AccessPreviewFinding
Source§impl PartialEq for AccessPreviewFinding
impl PartialEq for AccessPreviewFinding
impl StructuralPartialEq for AccessPreviewFinding
Auto Trait Implementations§
impl Freeze for AccessPreviewFinding
impl RefUnwindSafe for AccessPreviewFinding
impl Send for AccessPreviewFinding
impl Sync for AccessPreviewFinding
impl Unpin for AccessPreviewFinding
impl UnwindSafe for AccessPreviewFinding
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>
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);