机器数据分析平台

  • 机器数据分析平台 > API 文档 > 接口文档 >Token 管理

    Token 管理

    最近更新时间: 2020-05-29 18:18:06

    1. 接口清单

    Token 管理接口是操作 Pandora 2.0 非常敏感的接口,通过接口形式操作API风险很高,尽量确保可信网络下,或者在界面操作。以下是搜索接口的清单:

    1. 创建Token 接口:POST /api/v1/auth/tokens
    2. 查询Token接口:GET /api/v1/auth/tokens
    3. 启用Token 接口:PUT /api/v1/auth/tokens/{id}/status
    4. 禁用Token 接口:PUT /api/v1/auth/tokens/{id}/status
    5. 删除Token 接口:DELETE /api/v1/auth/tokens/{id}/

    注意:搜索接口的请求格式是json格式,所以请求Header中必须添加 'Content-Type: application/json'

    2. 接口描述

    准备工作,先参考文档准备工作中所指导步骤,创建一个可用的Token,对接下来的其他Token进行操作。

    2.1 创建Token 接口

    请求路径:/api/v1/auth/tokens

    请求方法:POST

    请求体示例:

    {
        "username":"pandora@qiniu.com",
        "audience":"default",
        "notBefore":1584344002522,
        "expireTime":1584430402522
    }
    

    请求体字段解释:

    字段名 是否必填 字段解释 默认值
    username 需是系统已存在的⽤户名
    audience Token面向受众
    notBefore Token 生效时间,为13位时间戳
    expireTime Token 失效时间,为13位时间戳

    响应体示例:

    {
      "id": "<TokenId>",
      "token":"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
    }
    

    响应体字段释义:

    字段名 是否必填 字段解释
    token token值,只显示一次,之后无法二次获得

    2.2 查询Token接口:

    请求路径:GET /api/v1/auth/tokens?pageNo=<pageNo>&pageSize=<pageSize>&sort=<sort>&order=<order>&prefix=<prefix>

    请求方法:GET

    URL参数解释:

    字段名 是否必填 字段解释 默认值
    pageNo 指定⻚号(1~n) 1
    pageSize 指定每⻚所包含的条⽬数 10
    sort 指定排序键,可填以下内容之⼀:username, 按“⽤户名”排序; audience, 按“⽤途”排序; issuedAt, 按“发⾏于”排序; expireTime, 按“过期时间”排序; lastAccessTime,按“上次使⽤时间”排序 无(若URL参数中不包含sort参数,则将按自然顺序返回Token信息列表)
    order 指定排序顺序。可填以下内容之⼀:desc降序,asc升序 desc
    prefix 预匹配字符,⽤于匹配“⽤户名”

    响应体示例:

    {
        "total":2,
        "pageNo":1,
        "pageSize":2,
        "tokens":[
            {
                "id":"09e456c0-9b86-468c-b31d-3e963d3c024e",
                "username":"pandora@qiniu.com",
                "audience":"default",
                "notBefore":1575527903578,
                "expireTime":1575533907928,
                "issuedAt":1575527909225,
                "issuer":"pandora@qiniu.com",
                "status":"enabled",
                "lastAccessIP":"100.100.32.114",
                "lastAccessTime":1575528203896
            },
            {
                "id":"12a20dff-9182-4b51-afa7-d1a16a8ff33d",
                "username":"pandora@qiniu.com",
                "audience":"default",
                "notBefore":1576483954865,
                "expireTime":1576484435486,
                "issuedAt":1576483837431,
                "issuer":"pandora@qiniu.com",
                "status":"enabled",
                "lastAccessIP":null,
                "lastAccessTime":-1
            }
        ]
    }
    

    响应体字段示例:

    字段名 是否必填 字段解释
    total 总共Token 数量
    pageNo 分页页码
    pageSize 每页数量
    tokens.id Token 的唯一标识id
    tokens.username Token的生效用户
    tokens.audience Token的用途
    tokens.notBefore Token的生效时间
    tokens.expireTime Token的过期时间
    tokens.issuedAt Token的创建时间
    tokens.issuer Token的创建者
    tokens.status Token的状态,enabled生效,disabled失效
    tokens.lastAccessIP Token的最后访问IP
    tokens.lastAccessTime Token的最后访问时间,-1代表未被使用过

    2.3 启用、禁用 Token

    请求路径:/api/v1/auth/tokens/{id}/status

    注意

    1. <id> 为Token 的唯一标识

    请求方法:PUT

    请求体示例:

    {
        "status":"enabled"
    }
    

    请求体释义:

    字段名 是否必填 字段解释
    status 状态,enabled代表启用,disabled代表禁用

    2.4 删除 token

    请求路径:/api/v1/auth/tokens/{id}/

    注意<id> 为Token 唯一标识

    请求方法:DELETE

    响应码200为删除成功

    注意:建议定期更新Token,并关注Token的使用情况,避免Token泄露造成严重的数据风险。

    以上内容是否对您有帮助?
  • Qvm free helper
    Close