pub enum AwsCredentials {
AccessKeys {
access_key_id: String,
secret_access_key: String,
session_token: Option<String>,
},
SessionCredentials {
access_key_id: String,
expires_at: String,
secret_access_key: String,
session_token: String,
},
Imds {
endpoint: Option<String>,
},
Profile {
name: String,
},
WebIdentity {
config: AwsWebIdentityConfig,
},
}Expand description
Supported AWS authentication methods
JSON schema
{
"description": "Supported AWS authentication methods",
"oneOf": [
{
"description": "Static direct access keys.",
"type": "object",
"required": [
"access_key_id",
"secret_access_key",
"type"
],
"properties": {
"access_key_id": {
"description": "AWS Access Key ID",
"type": "string"
},
"secret_access_key": {
"description": "AWS Secret Access Key",
"type": "string"
},
"session_token": {
"description": "Optional AWS Session Token",
"type": [
"string",
"null"
]
},
"type": {
"type": "string",
"enum": [
"accessKeys"
]
}
}
},
{
"description": "Temporary AWS session credentials with an expiration time.",
"type": "object",
"required": [
"access_key_id",
"expires_at",
"secret_access_key",
"session_token",
"type"
],
"properties": {
"access_key_id": {
"description": "AWS Access Key ID",
"type": "string"
},
"expires_at": {
"description": "Credential expiration as an RFC3339 timestamp",
"type": "string"
},
"secret_access_key": {
"description": "AWS Secret Access Key",
"type": "string"
},
"session_token": {
"description": "AWS Session Token",
"type": "string"
},
"type": {
"type": "string",
"enum": [
"sessionCredentials"
]
}
}
},
{
"description": "AWS Instance Metadata Service credentials.",
"type": "object",
"required": [
"type"
],
"properties": {
"endpoint": {
"description": "Optional IMDS endpoint override",
"type": [
"string",
"null"
]
},
"type": {
"type": "string",
"enum": [
"imds"
]
}
}
},
{
"description": "AWS profile credentials loaded via the AWS CLI.",
"type": "object",
"required": [
"name",
"type"
],
"properties": {
"name": {
"description": "AWS profile name",
"type": "string"
},
"type": {
"type": "string",
"enum": [
"profile"
]
}
}
},
{
"description": "Web Identity Token for OIDC authentication",
"type": "object",
"required": [
"config",
"type"
],
"properties": {
"config": {
"$ref": "#/components/schemas/AwsWebIdentityConfig"
},
"type": {
"type": "string",
"enum": [
"webIdentity"
]
}
}
}
]
}Variants§
AccessKeys
Static direct access keys.
Fields
SessionCredentials
Temporary AWS session credentials with an expiration time.
Fields
Imds
AWS Instance Metadata Service credentials.
Profile
AWS profile credentials loaded via the AWS CLI.
WebIdentity
Web Identity Token for OIDC authentication
Fields
§
config: AwsWebIdentityConfigTrait Implementations§
Source§impl Clone for AwsCredentials
impl Clone for AwsCredentials
Source§fn clone(&self) -> AwsCredentials
fn clone(&self) -> AwsCredentials
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · 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 AwsCredentials
impl Debug for AwsCredentials
Source§impl<'de> Deserialize<'de> for AwsCredentials
impl<'de> Deserialize<'de> for AwsCredentials
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
Source§impl From<&AwsCredentials> for AwsCredentials
impl From<&AwsCredentials> for AwsCredentials
Source§fn from(value: &AwsCredentials) -> Self
fn from(value: &AwsCredentials) -> Self
Converts to this type from the input type.
Auto Trait Implementations§
impl Freeze for AwsCredentials
impl RefUnwindSafe for AwsCredentials
impl Send for AwsCredentials
impl Sync for AwsCredentials
impl Unpin for AwsCredentials
impl UnsafeUnpin for AwsCredentials
impl UnwindSafe for AwsCredentials
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