通过 HTTP API 设置 grafana 服务帐户令牌的过期时间

问题描述 投票:0回答:1

我正在尝试通过 API 设置 grafana 服务帐户令牌的过期时间,但我不知道需要作为正文的一部分传递的正确键或值。

我尝试了一系列设置过期时间的方法,但我不走运。 请帮助使用正确的键和值格式来设置过期时间。

注意:令牌创建后始终没有过期时间。 我还将

token_expiration_day_limit
设置为 365 天。 我还可以从 grafana UI 创建具有过期时间的令牌。

以下是我尝试过的不同方法

curl -X POST --insecure -H "Content-Type: application/json"  -d '{
  "name": "grafana16",
  "expiration": "2023-08-23T10:31:02Z"
}' https://url
curl -X POST --insecure -H "Content-Type: application/json"  -d '{
  "name": "grafana16",
  "expiration": "30d"
}' https://url


#epoch time
curl -X POST --insecure -H "Content-Type: application/json"  -d '{
  "name": "grafana16",
  "expiration": "1692537131"
}' https://url

curl -X POST --insecure -H "Content-Type: application/json"  -d '{
  "name": "grafana16",
  "expiration": "2023-08-21"
}' https://url

通过将密钥指定为“过期”、“生存时间”来尝试上述方法

rest curl grafana access-token
1个回答
0
投票

Grafana 的服务帐户 API 文档缺少此信息。但我找到了一种方法来设置已弃用的 API 密钥文档的到期日期。 您必须在到 SA 令牌端点的 POST 请求的请求正文中设置字段“secondsToLive”。

示例:

curl -X POST 'http://localhost:3000/api/serviceaccounts/1/tokens' \
--header 'Authorization: Basic token' \
--header 'Content-Type: application/json' \
--data '{
    "name": "example-sa",
    "secondsToLive": 3600
}'

在 UI 上,它将显示“1 天后过期”,但在 HTTP API 中获取令牌将显示它将在 1 小时后过期。

© www.soinside.com 2019 - 2024. All rights reserved.