pub struct ActionPattern {
pub service: String,
pub action: String,
}Expand description
A parsed IAM action pattern like “s3:GetObject” or “lambda:Update*”.
Fields§
§service: String§action: StringImplementations§
Source§impl ActionPattern
impl ActionPattern
Sourcepub fn parse(s: &str) -> Result<Self>
pub fn parse(s: &str) -> Result<Self>
Parse a string like “s3:GetObject” into an ActionPattern.
Sourcepub fn to_iam_action(&self) -> String
pub fn to_iam_action(&self) -> String
Convert to IAM action string (AWS format: service:Action).
Sourcepub fn parse_gcp(s: &str) -> Result<Self>
pub fn parse_gcp(s: &str) -> Result<Self>
Parse a GCP permission like “storage.objects.get” or “compute.instances.list”.
Sourcepub fn to_gcp_permission(&self) -> String
pub fn to_gcp_permission(&self) -> String
Convert to GCP permission string (service.resource.verb).
Sourcepub fn parse_azure(s: &str) -> Result<Self>
pub fn parse_azure(s: &str) -> Result<Self>
Parse an Azure permission like “Microsoft.Storage/storageAccounts/read”.
Sourcepub fn to_azure_permission(&self) -> String
pub fn to_azure_permission(&self) -> String
Convert to Azure permission string (Microsoft.Service/resource/action).
Sourcepub fn matches(&self, other: &ActionPattern) -> bool
pub fn matches(&self, other: &ActionPattern) -> bool
Check if this pattern matches another action (for deny list checking). Supports wildcards: “iam:” matches “iam:CreateRole”, “:*” matches everything.
Trait Implementations§
Source§impl Clone for ActionPattern
impl Clone for ActionPattern
Source§fn clone(&self) -> ActionPattern
fn clone(&self) -> ActionPattern
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ActionPattern
impl Debug for ActionPattern
Source§impl<'de> Deserialize<'de> for ActionPattern
impl<'de> Deserialize<'de> for ActionPattern
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for ActionPattern
impl RefUnwindSafe for ActionPattern
impl Send for ActionPattern
impl Sync for ActionPattern
impl Unpin for ActionPattern
impl UnsafeUnpin for ActionPattern
impl UnwindSafe for ActionPattern
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<D> DeserializeWith<JsonFormat> for Dwhere
D: DeserializeOwned,
impl<D> DeserializeWith<JsonFormat> for Dwhere
D: DeserializeOwned,
Source§fn deserialize_with(body: ResponseBody) -> Result<D, Error>
fn deserialize_with(body: ResponseBody) -> Result<D, Error>
Deserialize the response body using the specified format. Read more
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>
Converts
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>
Converts
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 moreCreates a shared type from an unshared type.