grafana API 调用 Bearer Token
所属分类 grafana
浏览量 73
Bearer 持票人
Bearer Token 是一种用于身份验证的访问令牌,它授权持有者(Bearer)访问资源的权限。
向服务器发送请求时,可以在请求头中携带 Bearer Token,服务器会根据这个 Token 来验证身份并授权你所请求的操作。
Bearer Token 的工作原理是当用户成功登录后,服务器会生成一个 Bearer Token,并将其返回给客户端。
客户端在后续的请求中携带这个 Token,服务器通过验证 Token 的有效性来确认用户的身份和权限。
Bearer Token 通常用于 OAuth 2.0 认证框架中,用来验证访问者的身份并授予其相应的权限。
它是一种基于文本的安全令牌,主要用于在网络请求中验证用户身份。
"Bearer" 这一名称意味着,任何拥有该令牌的实体都被授权访问特定资源。
在 OAuth 2.0 的部署中,Bearer Token 是最常用的令牌类型之一。
它可以被任何持有它的用户使用,而不需要证明拥有某个加密密钥。
为了防止滥用,Bearer Token 需要从存储和传输中进行保护。
Bearer Token 还可以与 JSON Web Token (JWT) 结合使用,提供额外的安全性。
JWT 是一种经过签名的令牌,可以直接用于对 Connect 服务器进行身份验证。
Bearer Token 是一种高效且安全的身份验证机制,广泛应用于现代的 API 和微服务架构中,以确保资源的安全访问。
调用 grafana api ,使用 Bearer Token
譬如创建 告警规则
在Grafana中,token key(令牌密钥)主要用于身份验证和授权。
创建API Token:
在Grafana中,可以通过服务账户(Service Account)来创建API Token。
具体步骤如下:
登录到Grafana。
在侧边栏中将鼠标悬停在“配置”(齿轮图标)上。
点击“服务账户”。
选择要为其添加token的服务账户。
点击“添加token”。
输入token的名称(推荐)和过期日期(可选)。
点击“添加”后,系统会返回一个token,请妥善保存,后续的所有请求都需要用到它。
使用API Token进行认证:
调用Grafana的API请求时,在请求头中添加token认证。
首先创建API Token,然后在请求头中添加Authorization: Bearer [token]
postman
http://127.0.0.1:3000/api/ruler/grafana/api/v1/rules/be1avczzy12bkb?subtype=cortex
authorization
type:Bearer Token
token:glsa_Q46aV4TfG8OEFCQpGTujBF0aN5fiR0xr_0a7b22xx
json
{
"name": "myweb06",
"interval": "1m",
"rules": [
{
"grafana_alert": {
"title": "rule_myweb06_001",
"condition": "B",
"data": [
{
"refId": "A",
"datasourceUid": "ee1ausy6abxfkb",
"queryType": "",
"relativeTimeRange": {
"from": 600,
"to": 0
},
"model": {
"refId": "A",
"expr": "page_pv{page=\"about\", job=\"myweb\"}",
"range": false,
"instant": true,
"editorMode": "code",
"legendFormat": "__auto"
}
},
{
"datasourceUid": "__expr__",
"model": {
"refId": "B",
"datasource": {
"type": "__expr__",
"uid": "__expr__",
"name": "Expression"
},
"type": "classic_conditions",
"conditions": [
{
"type": "query",
"reducer": {
"type": "last",
"params": [
]
},
"operator": {
"type": "and"
},
"query": {
"params": [
"A"
]
},
"evaluator": {
"params": [
3000,
0
],
"type": "gt"
}
}
],
"expression": "",
"hide": false
},
"refId": "B",
"queryType": ""
}
],
"is_paused": false,
"no_data_state": "OK",
"exec_err_state": "OK",
"notification_settings": {
"receiver": "grafana-default-email"
}
},
"annotations": {
"message": "{\"title\":\"rule_myweb06_001\",\"serviceName\":\"myweb\",\"alertLevel\":\"normal\"}"
},
"labels": {
"type": "myweb"
},
"for": "1m"
},
{
"grafana_alert": {
"title": "rule_myweb06_002",
"condition": "A",
"data": [
{
"refId": "A",
"datasourceUid": "ee1ausy6abxfkb",
"queryType": "",
"relativeTimeRange": {
"from": 600,
"to": 0
},
"model": {
"refId": "A",
"expr": "page_pv{page=\"about\", job=\"myweb\"}",
"range": false,
"instant": true,
"editorMode": "code",
"legendFormat": "__auto"
}
},
{
"datasourceUid": "__expr__",
"model": {
"refId": "B",
"datasource": {
"type": "__expr__",
"uid": "__expr__",
"name": "Expression"
},
"type": "classic_conditions",
"conditions": [
{
"type": "query",
"reducer": {
"type": "last",
"params": [
]
},
"operator": {
"type": "and"
},
"query": {
"params": [
"A"
]
},
"evaluator": {
"params": [
3000,
0
],
"type": "gt"
}
}
],
"expression": "",
"hide": false
},
"refId": "B",
"queryType": ""
}
],
"is_paused": false,
"no_data_state": "OK",
"exec_err_state": "OK",
"notification_settings": {
"receiver": "grafana-default-email"
}
},
"annotations": {
"message": "{\"title\":\"rule_myweb06_002\",\"serviceName\":\"myweb\",\"alertLevel\":\"normal\"}"
},
"labels": {
"type": "myweb"
},
"for": "1m"
}
]
}
{
"message": "rule group updated successfully",
"created": [
"ee1bxy7oswlc0a",
"be1bxy7oswlc1f"
]
}
再请求一次
{
"message": "rule group updated successfully",
"created": [
"ce1by4a1avpc0a",
"ce1by4a1avpc1b"
],
"deleted": [
"ee1bxy7oswlc0a",
"be1bxy7oswlc1f"
]
}
之前的两个会被删除
上一篇
下一篇
flink jar包上传目录设置
netty NioEventLoop 性能优化与最佳实践
netty NioEventLoop 实例
道友入门
道家养生功(牛胜先)
道家五术