pub struct ClientConfiguration {
pub client_id: String,
pub client_secret: String,
pub auth_url: String,
pub token_url: String,
pub device_authorization_url: String,
pub token_cache_path: String,
pub jwks_url: String,
pub realm: String,
pub scopes: Vec<String>,
}Fields§
§client_id: String§client_secret: String§auth_url: String§token_url: String§token_cache_path: String§jwks_url: String§realm: String§scopes: Vec<String>Implementations§
Source§impl ClientConfiguration
impl ClientConfiguration
pub fn build(self) -> KeycloakClient
Sourcepub fn from_env() -> Self
pub fn from_env() -> Self
Examples found in repository?
examples/client.rs (line 6)
5async fn main() -> Result<(), ClientError> {
6 let config = ClientConfiguration::from_env();
7
8 let keycloak_client = KeycloakClient::new(config);
9 let token = match keycloak_client.verify_and_refresh_access_token().await {
10 Ok(token) => token,
11 Err(_) => keycloak_client
12 .authenticate()
13 .await?
14 .access_token()
15 .secret()
16 .clone(),
17 };
18
19 //make requests with the token
20 println!("{}", token);
21
22 Ok(())
23}Auto Trait Implementations§
impl Freeze for ClientConfiguration
impl RefUnwindSafe for ClientConfiguration
impl Send for ClientConfiguration
impl Sync for ClientConfiguration
impl Unpin for ClientConfiguration
impl UnsafeUnpin for ClientConfiguration
impl UnwindSafe for ClientConfiguration
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