跳转到内容

HiAuth是什么?

HiAuth是一个基于OAuth2.0协议的认证授权系统,通过集成HiAuth系统可以快速的开启应用的认证和授权功能。HiAuth支持SaaS模式、Docker私有化部署模式、源码编译安装模式。而且完全免费,完全开源。

想尝试一下?跳到 快速开始

功能

1. 登录认证

基于OAuth2.0授权协议,允许第三方应用在用户授权下访问其资源,而无需共享用户凭证。

  • 核心流程
    • 授权码模式:适用于Web应用,通过授权码交换访问令牌(最安全)。
    • 隐式模式:适用于单页应用(SPA),直接返回访问令牌(无刷新令牌)。
    • 密码模式:用户直接提供账号密码给客户端(仅信任场景使用)。
    • 客户端凭证模式:应用直接以自身身份获取令牌(用于服务间通信)。
  • 令牌管理
    • 访问令牌(Access Token)用于资源访问,有效期较短。
    • 刷新令牌(Refresh Token)用于获取新访问令牌,需安全存储。
  • 安全性
    • 强制HTTPS传输,防止令牌泄露。
    • 令牌绑定(Token Binding)防止中间人攻击。

2. 访问授权

访问授权(Authorization)决定用户/应用能否执行特定操作或访问资源。基于RBAC(基于角色的访问控制),通过角色分配权限(如管理员、普通用户)。

3. 应用管理

管理第三方或内部应用的接入与生命周期。

  • 核心功能
    • 应用注册:分配唯一ClientID/ClientSecret,定义权限范围Scopes
    • 密钥轮换:定期更新ClientSecret,防止泄露风险。
    • 权限控制:限制应用可访问的API或数据范围。
  • 安全审计
    • 记录应用行为日志(如API调用频率)。
    • 审核应用权限申请,确保最小权限原则。

4. 组织管理

管理企业或团队的层级结构与成员关系。

  • 功能
    • 多层级架构:支持部门、团队、项目组等嵌套结构。
    • 多租户支持:隔离不同组织的数据与权限(如SaaS场景)。
    • 管理员分配:设置组织管理员,管理成员与权限。

5. 权限管理

定义和管理用户或角色可执行的操作。

  • 核心机制
    • 权限粒度:支持API级、功能级或数据字段级控制。
    • 权限组:将权限打包为模板(如“财务审批组”)。
    • 权限继承与覆盖:子角色继承父角色权限,可局部调整。
  • 审计与合规
    • 权限变更日志:记录谁在何时修改了权限。
    • 定期审查权限分配,避免冗余或过度授权。

6. 用户管理

管理用户身份、认证与生命周期。

  • 核心功能
    • 身份存储:支持本地数据库。
    • 生命周期管理:用户注册、禁用、删除及资料更新。
    • 认证增强:多因素认证(MFA)、单点登录(SSO)。

视频教程

基于 MIT 许可发布