Struct scratchstack_aws_principal::details::UserDetails [−][src]
pub struct UserDetails<T: Data> { pub account_id: String, pub path: String, pub user_name: String, pub data: T, }
Details about an AWS IAM user.
Fields
account_id: String
The account id.
path: String
Path, starting with a /
.
user_name: String
Name of the principal, case-insensitive.
data: T
Principal flavor-specific data.
Implementations
impl<T: Data> UserDetails<T>
[src]
pub fn new<S1, S2, S3>(
account_id: S1,
path: S2,
user_name: S3,
data: T
) -> Result<Self, PrincipalError> where
S1: Into<String>,
S2: Into<String>,
S3: Into<String>,
[src]
account_id: S1,
path: S2,
user_name: S3,
data: T
) -> Result<Self, PrincipalError> where
S1: Into<String>,
S2: Into<String>,
S3: Into<String>,
Create a UserDetails object.
Arguments
account_id
: The 12 digit account id. This must be composed of 12 ASCII digits or a PrincipalError::InvalidAccountId error will be returned.path
: The IAM path the group is under. This must meet the following requirements or a PrincipalError::InvalidPath error will be returned:- The path must contain between 1 and 512 characters.
- The path must start and end with
/
. - All characters in the path must be in the ASCII range 0x21 (
!
) through 0x7E (~
). The AWS documentation erroneously indicates that 0x7F (DEL) is acceptable; however, the IAM APIs reject this character.
user_name
: The name of the user. This must meet the following requirements or a PrincipalError::InvalidUserName error will be returned:- The name must contain between 1 and 64 characters.
- The name must be composed to ASCII alphanumeric characters or one of
, - . = @ _
.
data
: Principal flavor-specific data.
Return value
If all of the requirements are met, a UserDetails object is returned. Otherwise, a PrincipalError error is returned.
Trait Implementations
impl<T: Clone + Data> Clone for UserDetails<T>
[src]
fn clone(&self) -> UserDetails<T>
[src]
pub fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl<T: Debug + Data> Debug for UserDetails<T>
[src]
impl<T: Eq + Data> Eq for UserDetails<T>
[src]
impl<T: PartialEq + Data> PartialEq<UserDetails<T>> for UserDetails<T>
[src]
fn eq(&self, other: &UserDetails<T>) -> bool
[src]
fn ne(&self, other: &UserDetails<T>) -> bool
[src]
impl<T: Data> StructuralEq for UserDetails<T>
[src]
impl<T: Data> StructuralPartialEq for UserDetails<T>
[src]
Auto Trait Implementations
impl<T> RefUnwindSafe for UserDetails<T> where
T: RefUnwindSafe,
T: RefUnwindSafe,
impl<T> Send for UserDetails<T>
impl<T> Sync for UserDetails<T>
impl<T> Unpin for UserDetails<T> where
T: Unpin,
T: Unpin,
impl<T> UnwindSafe for UserDetails<T> where
T: UnwindSafe,
T: UnwindSafe,
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Data for T where
T: Clone + Debug + PartialEq<T> + Eq + Send + Sync + 'static,
[src]
T: Clone + Debug + PartialEq<T> + Eq + Send + Sync + 'static,
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,