Struct aws_types::credentials::Credentials
source · pub struct Credentials(_);
Expand description
AWS SDK Credentials
An opaque struct representing credentials that may be used in an AWS SDK, modeled on the CRT credentials implementation.
When Credentials
is dropped, its contents are zeroed in memory. Credentials uses an interior Arc to ensure
that even when cloned, credentials don’t exist in multiple memory locations.
Implementations§
source§impl Credentials
impl Credentials
sourcepub fn new(
access_key_id: impl Into<String>,
secret_access_key: impl Into<String>,
session_token: Option<String>,
expires_after: Option<SystemTime>,
provider_name: &'static str
) -> Self
pub fn new(
access_key_id: impl Into<String>,
secret_access_key: impl Into<String>,
session_token: Option<String>,
expires_after: Option<SystemTime>,
provider_name: &'static str
) -> Self
Creates Credentials
.
This is intended to be used from a custom credentials provider implementation. It is NOT secure to hardcode credentials into your application.
sourcepub fn from_keys(
access_key_id: impl Into<String>,
secret_access_key: impl Into<String>,
session_token: Option<String>
) -> Self
pub fn from_keys(
access_key_id: impl Into<String>,
secret_access_key: impl Into<String>,
session_token: Option<String>
) -> Self
Creates Credentials
from hardcoded access key, secret key, and session token.
Note: In general, you should prefer to use the credential providers that come
with the AWS SDK to get credentials. It is NOT secure to hardcode credentials
into your application. If you’re writing a custom credentials provider, then
use Credentials::new
instead of this.
This function requires the hardcoded-credentials
feature to be enabled.
Credentials
implement
ProvideCredentials
directly, so no custom provider
implementation is required when wiring these up to a client:
use aws_types::Credentials;
use aws_types::region::Region;
let creds = Credentials::from_keys("akid", "secret_key", None);
let config = Config::builder()
.credentials_provider(creds)
.region(Region::new("us-east-1"))
.build();
let client = Client::from_conf(config);
sourcepub fn access_key_id(&self) -> &str
pub fn access_key_id(&self) -> &str
Returns the access key ID.
sourcepub fn secret_access_key(&self) -> &str
pub fn secret_access_key(&self) -> &str
Returns the secret access key.
sourcepub fn expiry(&self) -> Option<SystemTime>
pub fn expiry(&self) -> Option<SystemTime>
Returns the time when the credentials will expire.
sourcepub fn expiry_mut(&mut self) -> &mut Option<SystemTime>
pub fn expiry_mut(&mut self) -> &mut Option<SystemTime>
Returns a mutable reference to the time when the credentials will expire.
sourcepub fn session_token(&self) -> Option<&str>
pub fn session_token(&self) -> Option<&str>
Returns the session token.
Trait Implementations§
source§impl Clone for Credentials
impl Clone for Credentials
source§fn clone(&self) -> Credentials
fn clone(&self) -> Credentials
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for Credentials
impl Debug for Credentials
source§impl PartialEq<Credentials> for Credentials
impl PartialEq<Credentials> for Credentials
source§fn eq(&self, other: &Credentials) -> bool
fn eq(&self, other: &Credentials) -> bool
self
and other
values to be equal, and is used
by ==
.source§impl ProvideCredentials for Credentials
impl ProvideCredentials for Credentials
source§fn provide_credentials<'a>(&'a self) -> ProvideCredentials<'a> ⓘwhere
Self: 'a,
fn provide_credentials<'a>(&'a self) -> ProvideCredentials<'a> ⓘwhere
Self: 'a,
impl Eq for Credentials
impl StructuralEq for Credentials
impl StructuralPartialEq for Credentials
Auto Trait Implementations§
impl RefUnwindSafe for Credentials
impl Send for Credentials
impl Sync for Credentials
impl Unpin for Credentials
impl UnwindSafe for Credentials
Blanket Implementations§
source§impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.