#casdoor #iam #sso #oidc #jwt

casdoor-rust-sdk

Casdoor的Rust客户端SDK

6个版本 (稳定)

1.3.0 2023年9月27日
1.2.1 2022年7月8日
1.1.0 2022年7月5日
1.0.1 2022年7月4日
0.1.0 2022年7月2日

#356 in 身份验证

Apache-2.0

22KB
341

casdoor-rust-sdk

GitHub last commit Crates.io Docs CI Discord

这是Casdoor的Rust SDK,它将允许您轻松地将您的应用程序连接到Casdoor身份验证系统,而无需从头开始实现。

Casdoor SDK使用非常简单。下面我们将展示步骤。

[dependencies]
casdoor-rust-sdk = <latest-version>

步骤1. 初始化SDK

初始化需要6个参数,它们都是字符串类型

名称(顺序) 必须 描述
endpoint Casdoor服务器URL,例如 https://127.0.0.1:8000
client_id Casdoor应用的客户端ID
client_secret Casdoor应用的客户端密钥
certificate Application.cert的x509证书内容
org_name Casdoor组织的名称
app_name Casdoor应用的名称
// init from params.
let app = CasdoorConfig::new(endpoint, client_id, client_secret, certificate, org_name);

// init from toml file, file_path should be absolute path. (recommend)
let conf = CasdoorConfig::from_toml(file_path).unwrap().as_str()).unwrap();

步骤2. 获取服务并使用

现在提供两个服务:CasdoorUserServiceCasdoorAuthService

您可以像下面这样创建它们:

let user_service = UserService::new(&conf);
let auth_src = AuthService::new(&conf);

步骤3. 与SDK服务交互

SDK支持基本操作。

user

  • get_user(name),通过用户名获取一个用户。
  • get_users(),获取所有用户。
  • get_sorted_users(sorter, limit),获取排序后的用户和限制结果数量。
  • get_user_count(is_online),获取用户数量。
  • add_user(User),将用户写入数据库。
  • update_user(User),更新用户信息
  • delete_user(User),删除用户

auth

  • get_auth_token(code),获取认证令牌。
  • parse_jwt_token(token),解析 JWT 令牌。

依赖项

~14–27MB
~516K SLoC