## 通用认证机制 模块`a-auth`以[Egg Passport鉴权](https://eggjs.org/zh-cn/tutorials/passport.html)为基础,并作了进一步封装,实现了一套通用认证机制,从而使 `认证模块`开发更简洁,配置与维护更简便,实现`开箱即用`的效果 ## 数据表 ### 数据表`aAuthProvider` 数据表`aAuthProvider`统一管理`认证提供者`。比如简单的`用户密码认证`,以及`Github`等第三方认证,都通过`认证提供者`实现 | 名称 | 说明 | |----|----| | id | 认证提供者Id | | disabled | 是否禁用 | | module | 所属模块名称 | | providerName | 提供者名称 | | config | 配置信息 | ### 数据表`aAuth` 数据表`aAuth`统一管理`用户认证`信息 | 名称 | 说明 | |----|----| | id | 认证Id | | userId | 对应的用户Id | | providerId | 认证提供者Id | | profileId | 由认证提供者获取的用户信息Id | | profile | 由认证提供者获取的用户信息 | > `profileId`和`profile`的具体值,由具体的认证提供者决定 ## 认证模块开发 请参考核心模块源码:`a-auth`、`a-authsimple`、`a-authsms`、`a-authgithub`