2

我正在寻找一种在报告门户上使用登录名/密码生成令牌的方法。可以肯定的是,应该有一种使用 API 调用的方法。我只是找不到它。

因此,给定(项目名称、用户、密码),我应该得到一个令牌,可用于进行其他 API 调用。

谢谢。

4

2 回答 2

3

获取 API 令牌

在获取 API 令牌之前,您必须生成它。

如果它已经生成(您已使用此用户登录),此端点将返回您现有的 API 令牌:

GET /sso/me/apitoken

例子:

curl -X GET --header 'Accept: application/json' --header 'Authorization: bearer 4f73871b-e477-4f49-b1bd-805b24201fe0' 'http://web.demo.reportportal.io/uat/sso/me/apitoken'

回复:

{
  "access_token": "b1debc0a-d47d-492f-aa7c-3e2e0fb96332",
  "token_type": "bearer",
  "scope": "api"
}

请注意,第一个(卷曲)请求中的承载具有范围UI,响应的承载具有范围API

  • UI 令牌根据服务器配置和用户会话的 TimeToLive 过期。
  • API 令牌具有无限的 TTL

** 如果GET请求返回错误,则需要生成令牌。

生成 API 令牌

POST sso/me/apitoken

例子:

curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' --header 'Authorization: bearer 4f73871b-e477-4f49-b1bd-805b24201fe0' 'http://web.demo.reportportal.io/uat/sso/me/apitoken?authenticated=true'

回复:

{
  "access_token": "4e76e31e-0250-4e5e-ba66-90105dd014bb",
  "token_type": "bearer",
  "scope": "api"
}

(!) 代币是公开的。在演示实例http://web.demo.reportportal.io的公共帐户中使用

在此处输入图像描述

于 2019-03-11T15:48:41.947 回答
2

发帖至:

/uat/sso/oauth/token?grant_type=password&password=***password***&username=***username***

使用凭据设置基本身份验证(用户名:ui 和密码:uiman)以获取范围 UI 的访问令牌,使用此令牌获取 apitoken。

于 2019-08-07T09:33:52.477 回答