Struct taskcluster::Credentials
source · [−]pub struct Credentials {
pub client_id: String,
pub access_token: String,
pub certificate: Option<String>,
}
Expand description
Credentials represents the set of credentials required to access protected Taskcluster HTTP APIs.
Fields
client_id: String
Client ID
access_token: String
Access token
certificate: Option<String>
Certificate for temporary credentials
Implementations
Create a new Credentials object from environment variables:
TASKCLUSTER_CLIENT_ID
TASKCLUSTER_ACCESS_TOKEN
TASKCLUSTER_CERTIFICATE
(optional)
Create a new Credentials object with clientId and accessToken
Examples:
let _ = Credentials::new("my_client_id", "my_access_token");
pub fn new_with_certificate<S1, S2, S3>(
client_id: S1,
access_token: S2,
certificate: S3
) -> Credentials where
S1: Into<String>,
S2: Into<String>,
S3: Into<String>,
pub fn new_with_certificate<S1, S2, S3>(
client_id: S1,
access_token: S2,
certificate: S3
) -> Credentials where
S1: Into<String>,
S2: Into<String>,
S3: Into<String>,
Create a new Credentials object with clientId, accessToken, and certificate
Examples:
let _ = Credentials::new_with_certificate("my_client_id", "my_access_token", "{}");
pub fn create_named_temp_creds(
&self,
temp_client_id: &str,
duration: Duration,
scopes: impl IntoIterator<Item = impl AsRef<str>>
) -> Result<Credentials, Error>
pub fn create_named_temp_creds(
&self,
temp_client_id: &str,
duration: Duration,
scopes: impl IntoIterator<Item = impl AsRef<str>>
) -> Result<Credentials, Error>
Generate temporary credentials from permanent credentials, valid for the given duration, starting immediately. The temporary credentials’ scopes must be a subset of the permanent credentials’ scopes. The duration may not be more than 31 days. Any authorized scopes of the permanent credentials will be passed through as authorized scopes to the temporary credentials, but will not be restricted via the certificate.
Note that the auth service already applies a 5 minute clock skew to the start and expiry times in https://github.com/taskcluster/taskcluster-auth/pull/117 so no clock skew is applied in this method, nor should be applied by the caller.
See https://docs.taskcluster.net/docs/manual/design/apis/hawk/temporary-credentials
pub fn create_temp_creds(
&self,
duration: Duration,
scopes: impl IntoIterator<Item = impl AsRef<str>>
) -> Result<Credentials, Error>
pub fn create_temp_creds(
&self,
duration: Duration,
scopes: impl IntoIterator<Item = impl AsRef<str>>
) -> Result<Credentials, Error>
Similar to create_named_temp_creds
, but creating unnamed credentials. This approach is
still supported but users are encouraged to create named credentials when possible to
support auditability.
Trait Implementations
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
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
This method tests for !=
.
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
Mutably borrows from an owned value. Read more
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more