#oauth #api-client #authentication #http-request #bindings #user #p7m

p7m-userauth

P7M登录和认证API的Rust绑定

2个不稳定版本

0.13.0 2024年7月7日
0.11.0 2022年7月18日

#702 in Web编程

Download history 123/week @ 2024-07-06 10/week @ 2024-07-13 1/week @ 2024-07-20 4/week @ 2024-07-27

每月138次下载

Apache-2.0

83KB
1K SLoC

p7m-userauth的Rust API客户端

认证和管理用户账户的API

这是P7M服务中管理租户、账户和认证的API。它是P7M许多服务的基础。

调用者必须通过系统进行认证并将在HTTP请求的Authorization头部提供JWT令牌。当使用API时,您通常通过首先使用OAuth 2.0进行认证来获取此令牌。

当您使用Swagger界面尝试此API时,您需要点击Authorize按钮,然后再次点击弹出的窗口中的Authorize按钮。

概述

此API客户端由OpenAPI Generator项目生成。通过使用来自远程服务器的openapi-spec,您可以轻松生成API客户端。

  • API版本:0.13.0
  • 包版本:0.13.0
  • 构建包:org.openapitools.languages.RustClientCodegen

安装

将包放置在您的项目文件夹中名为p7m-userauth的目录下,并在[dependencies]下添加以下内容到Cargo.toml

p7m-userauth = { path = "./p7m-userauth" }

API端点文档

所有URI均相对于https://login.p7m.de/v1

方法 HTTP请求 描述
AccountApi delete_account_by_id DELETE /accounts/{id} 删除用户账户
AccountApi get_account_by_id GET /accounts/{id} 根据ID(UUID)获取账户
AccountApi get_accounts GET /accounts 获取租户的所有账户列表
AccountApi post_accounts POST /accounts
AccountApi put_account_by_id PUT /accounts/{id}
AuthApi post_login POST /login 使用用户名和密码对系统进行身份验证(=证明你是谁)
AuthApi post_login_authorize POST /login/authorize 授权访问给定的租户并获得该访问的JWT
ClientApi delete_clients_by_id_superadmin DELETE /clients/{id} 删除OAuth客户端
ClientApi get_clients_by_id_superadmin GET /clients/{id} 通过其ID请求单个OAuth客户端
ClientApi get_clients_superadmin GET /clients 获取所有注册OAuth客户端的列表
ClientApi post_clients_superadmin POST /clients 创建新的OAuth客户端
ClientApi put_clients_by_id_superadmin PUT /clients/{id} 更新OAuth客户端
ServiceApi delete_services_superadmin DELETE /services/{id} 删除服务
ServiceApi get_services GET /services 获取P7M所有已知服务的列表
ServiceApi post_services_superadmin POST /services 创建新的服务
TenantApi delete_tenant_by_id DELETE /tenants/{id} 根据租户ID删除指定的租户
TenantApi get_tenant_by_id GET /tenants/{id} 请求由其ID标识的租户
TenantApi get_tenants GET /tenants 获取租户列表
TenantApi post_tenants POST /tenants
TenantApi put_tenant_by_id PUT /tenants/{id} 更新现有租户

模型文档说明

要获取crate生成的文档的访问权限,请使用

cargo doc --open

作者

[email protected]

依赖关系

~4–15MB
~231K SLoC