认证鉴权
目前KooDrive服务采用Token鉴权。针对想要直接调koodrive接口,开放了App鉴权。
Token认证:通过Token认证调用请求。
目前部分接口既支持token鉴权也支持App鉴权。
- 获取文件详情 POST /koodrive/ose/v1/files/{fileId}/detail
- 搜索文件 POST /koodrive/ose/v1/files/search
- 上传文件 POST /koodrive/ose/v1/files/create
- 确认文件上传完成 POST /koodrive/ose/v1/files/complete
- 获取个人空间文件列表 POST /koodrive/ose/v1/files/{type}
- 获取下载链接 POST /koodrive/ose/v1/files/download
- 创建批量任务 POST /koodrive/ose/v1/jobs(开发者联盟只有物理删除)
- 查询批量操作任务详情 GET /koodrive/ose/v1/{job_id}
- 创建目录 POST /koodrive/ose/v1/directory
- 创建空间 POST /koodrive/ose/v1/space/{owner_id}
- 创建用户 POST /koodrive/ose/v1/users
Token认证
当前Token有效期为20分钟,20分钟内有调用接口则以调用时间点为基准延长至20分钟,20分钟内无任何操作则Token失效。
使用Token前请确保Token离过期有足够的时间,防止调用API的过程中Token过期导致调用API失败。
Token在计算机系统中代表令牌(临时)的意思,拥有Token就代表拥有某种权限。Token认证就是在调用API的时候将Token加到请求消息头,从而通过身份认证,获得操作API的权限。
Token目前采取从服务前端登录后,从cookie获取,如图1所示,“Authorization”的Value值即为要获取的AT。
获取Token后,再调用其他接口时,您需要在请求消息头中添加“Authorization”,其值即为Token。例如Token值为“ABCDEFJ....”,则调用接口时将“Authorization: ABCDEFJ....”加到请求消息头即可,如下所示。
POST https://cn.myhuaweicloud-koodrive.com/koodrive/ose/v1/files/batch Content-Type: application/json Authorization: xxx
APP鉴权
可通过koodrive提供的app鉴权生成规则来获取鉴权,将鉴权放入请求头中。
Authorization有效期是15分钟。
示例:
Authorization: HMAC-SHA256 AppId=a378331eca141163119eb602adb67b7802cc79cd33ba44c7d2fe61d1586c96a1,SignedHeaders=host;x-date;x-user-id,Signature=bd355f202be40f95bf9510fd7bd48ad711a7d144c01df07d515ee0fbf3a47416 X-User-Id: 1505084218764547200 Host: 10.32.45.165 X-Date: 20240909T033325Z