Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up

Keycloak REST API Client

License

NotificationsYou must be signed in to change notification settings

WallarooLabs/keycloak

 
 

Repository files navigation

Legal

Dual-licensed underMIT or theUNLICENSE.

Features

ImplementsKeycloak Admin REST API version 26.1.0.

Feature flags

Default flags:tags-all.

  • rc: useArc for deserialization.
  • schemars: addschemars support.
  • tags-all: activate all tags (resource groups) in REST API, it is default behavior. Disable default features and use individualtag-xxx features to activate only required resource groups. For a full list reference theCargo.toml.

Usage

Requires Rust version >=1.74.0.

Add dependency to Cargo.toml:

[dependencies]keycloak ="26.1"
use keycloak::{    types::*,{KeycloakAdmin,KeycloakAdminToken},};#[tokio::main]asyncfnmain() ->Result<(),Box<dyn std::error::Error>>{let url = std::env::var("KEYCLOAK_ADDR").unwrap_or_else(|_|"http://localhost:8080".into());let user = std::env::var("KEYCLOAK_USER").unwrap_or_else(|_|"admin".into());let password = std::env::var("KEYCLOAK_PASSWORD").unwrap_or_else(|_|"password".into());let client = reqwest::Client::new();let admin_token =KeycloakAdminToken::acquire(&url,&user,&password,&client).await?;eprintln!("{:?}", admin_token);let admin =KeycloakAdmin::new(&url, admin_token, client);    admin.post(RealmRepresentation{realm:Some("test".into()),            ..Default::default()}).await?;    admin.realm_users_post("test",UserRepresentation{username:Some("user".into()),                ..Default::default()},).await?;let users = admin.realm_users_get("test",None,None,None,None,None,None,None,None,None,None,None,None,None,None,).await?;eprintln!("{:?}", users);let id = users.iter().find(|u| u.username ==Some("user".into())).unwrap().id.as_ref().unwrap().to_string();    admin.realm_users_with_user_id_delete("test", id.as_str()).await?;    admin.realm_delete("test").await?;Ok(())}

Version agreement

If we havex.y.z version ofkeycloak, our package version would bex.y.(z * 100 + v) there v is a minorfix version to officialx.y.z version.

Example: official version13.0.1 is13.0.100 for crate version.13.0.102 means keycloak version13.0.1 and minor fix version2.

Update

To update current version use providedupdate.tsdeno script:

deno run --allow-env=KEYCLOAK_RUST_VERSION,KEYCLOAK_VERSION,KEYCLOAK_RUST_MAJOR_VERSION --allow-read=Cargo.toml --allow-write=Cargo.toml,api/openapi.json,src/types.rs,src/rest/generated_rest.rs --allow-net=keycloak.org,www.keycloak.org --allow-run=cargo,gh,git,handlebars-magic update.ts

About

Keycloak REST API Client

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Rust95.7%
  • TypeScript4.3%

[8]ページ先頭

©2009-2025 Movatter.jp