# mod-authtoken **Repository Path**: fluagen/mod-authtoken ## Basic Information - **Project Name**: mod-authtoken - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2017-11-22 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # mod-authtoken > Open API的Access Token 认证模块 > > 基于folio的mod-authtoken-1.1.1模块重构 > > 兼容folio的okapi ## 1. 特性 * 支持签名校验 * 支持Client Key合法性校验 * 支持Open API的OAuth2.0认证流程 ## 2.依赖 **1.Folio模块:** | 模块 | 版本 | 说明 | |----------------|--------|------| | mod-permission | 5.0.1 | 权限管理模块 | **2.Open API模块:** | 模块 | 版本 | 说明 | |----------------|--------|------| | mod-signauth | 0.0.1 | 签名模块 | | mod-clientauth | 0.0.1 | Client 认证模块 | ## 3. 如何集成 资源服务要使用mod-authtoken的签名校验、Client校验需要在原资源服务模块接口上增加如下权限: * privilege.signature.check : 签名校验 * privilege.clientkey.check : Client校验 当访问资源服务时,Open API 认证模块检查资源服务接口的必备权限列表,若存在上述配置的权限,则Open API 认证模块会分别做签名校验和Client校验,校验失败的请求将拒绝访问资源服务。 以mod-notify-1.1.6-SNAPSHOT模块为例,来说明如何为mod-notify-1.1.6-SNAPSHOT的接口增加签名校验、Client校验。 配置样例: ```json { ... "provides": [ { "handlers": [ { "methods": [ "GET" ], "pathPattern": "/notify", "permissionsRequired": [ "privilege.signature.check", "privilege.clientkey.check", "notify.collection.get" ] }, { "methods": [ "POST" ], "pathPattern": "/notify", "permissionsRequired": [ "privilege.signature.check", "privilege.clientkey.check", "notify.item.post" ] } ... ], "id": "notify", "version": "1.1" } ], ... } ``` 样例中在原 `/notify`接口上配置了`privilege.signature.check`、`privilege.clientkey.check`,外部应用通过Open API访问`/notify`服务时,则需要先通过签名校验和Client校验才可以访问资源服务。 ## 4. 如何部署 同okapi的其它模块部署方式一样,具体请求参见相关文档。