配置使用Gitee账号认证登录Grafana

三方社会化身份源

集成gitee第三方登录

第三方登录的原理

所谓第三方登录,实质就是 OAuth 授权。用户想要登录 A 网站,A 网站让用户提供第三方网站的数据,证明自己的身份。获取第三方网站的身份数据,就需要 OAuth 授权。

举例来说,A 网站允许 Gitee 登录,背后就是下面的流程。

  • A 网站让用户跳转到 Gitee。
  • Gitee 要求用户登录,然后询问"A 网站要求获得 xx 权限,你是否同意?"
  • 用户同意,Gitee 就会重定向回 A 网站,同时发回一个授权码。
  • A 网站使用授权码,向 Gitee 请求令牌。
  • Gitee 返回令牌.
  • A 网站使用令牌,向 Gitee 请求用户数据。

gitee中创建应用

  • 设置中点击【第三方应用】

  • 点击【创建应用】

  • 填写信息,然后点击【创建应用】

配置使用 Gitee 账号认证登录Grafana

要将Gitee作为Grafana的OAuth2提供程序,您需要在Grafana的配置文件(默认路径为/etc/grafana/grafana.ini)中添加以下条目:

[auth.generic_oauth]  
name = Gitee  
enabled = true  
allow_sign_up = true  
client_id = YOUR_GITEE_CLIENT_ID  
client_secret = YOUR_GITEE_CLIENT_SECRET  
scopes = user_info  
auth_url = https://gitee.com/oauth/authorize  
token_url = https://gitee.com/oauth/token  
api_url = https://gitee.com/api/v5/user  
email_attribute_path = html_url
icon = google

请记住,将YOUR_GITEE_CLIENT_ID和YOUR_GITEE_CLIENT_SECRET替换为了在Gitee上注册您的应用程序时获得的值。

测试地址

BOXTRADE天启量化平台-Grafanahttp://mac.boxtrade.top:3000

注意

  • 回调地址为Grafana工作区的连接地址加/login/generic_oauth后缀,例如http://[Grafana连接地址:端口号]/login/generic_oauth。您可以在工作区信息页面查看Grafana工作区的连接地址和端口号,更多信息,请参见创建Grafana工作区。

  • scope表示权限范围,有以下选项,请求时使用空格隔开 user_info projects pull_requests issues notes keys hook groups gists enterprises

参考

Gitee OAuth 文档

如何对接Grafana实现第三方应用登录_应用实时监控服务-阿里云帮助中心

集成gitee第三方登录 - huihui_teresa - 博客园

Configure generic OAuth2 authentication | Grafana documentation

grafana 三方登录图标icon代码逻辑

1、登录图标的位置 grafana/public/img/icons/unicons/ 2、代码 public/app/core/components/Login/LoginServiceButtons.tsx https://github.com/grafana/grafana/blob/8ec4c1bdc87c43fe43e6bc56db924a9107edf137/public/app/core/components/Login/LoginServiceButtons.tsx#L72 3、默认配置参考 https://github.com/grafana/grafana/blob/8ec4c1bdc87c43fe43e6bc56db924a9107edf137/conf/defaults.ini#L732 4、gitee图标参考 https://gitee.com/about_u

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/97927.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ubuntu上使用osg3.2+osgearth2.9

一、介绍 在ubuntu上使用osgearth加载三维数字地球,首先要有osg和osgearth的库,这些可以直接使用apt-get下载安装,但是版本有些老,如果需要新版本的就需要自己编译。 #查看现有版本 sudo apt-cache madison openscenegraph #安装…

Python写一个创意五子棋游戏

前言 在本教程中,我们将使用Python写一个创意五子棋游戏 📝个人主页→数据挖掘博主ZTLJQ的主页 个人推荐python学习系列: ☄️爬虫JS逆向系列专栏 - 爬虫逆向教学 ☄️python系列专栏 - 从零开始学python 首先 GomokuGame 类的构造函数 __ini…

小程序 CSS-in-JS 和原子化的另一种选择

小程序 CSS-in-JS 和原子化的另一种选择 小程序 CSS-in-JS 和原子化的另一种选择 介绍快速开始 pandacss 安装和配置 0. 安装和初始化 pandacss1. 配置 postcss2. 检查你的 panda.config.ts3. 修改 package.json 脚本4. 全局 css 注册 pandacss5. 配置的优化与别名 weapp-pand…

LeetCode 周赛上分之旅 #40 结合特征压缩的数位 DP 问题

⭐️ 本文已收录到 AndroidFamily,技术和职场问题,请关注公众号 [彭旭锐] 和 BaguTree Pro 知识星球提问。 学习数据结构与算法的关键在于掌握问题背后的算法思维框架,你的思考越抽象,它能覆盖的问题域就越广,理解难度…

07_缓存预热缓存雪崩缓存击穿缓存穿透

缓存预热&缓存雪崩&缓存击穿&缓存穿透 一、缓存预热 提前将数据从数据库同步到redis。 在程序启动的时候,直接将数据刷新到redis懒加载,用户访问的时候,第一次查询数据库,然后将数据写入redis 二、缓存雪崩 发生情…

Roxy-Wi 命令执行漏洞复现

漏洞描述 Roxy-WI是开源的一款用于管理 Haproxy、Nginx 和 Keepalived 服务器的 Web 界面 Roxy-WI 6.1.1.0 之前的版本存在安全漏洞,该漏洞源于系统命令可以通过 subprocess_execute 函数远程运行,远程攻击者利用该漏洞可以执行远程代码。 免责声明 技术文章仅供参考,任…

小程序前台Boot后台校园卡资金管理系统java web学校进销存食堂挂失jsp源代码

本项目为前几天收费帮学妹做的一个项目,Java EE JSP项目,在工作环境中基本使用不到,但是很多学校把这个当作编程入门的项目来做,故分享出本项目供初学者参考。 一、项目描述 小程序前台Boot后台校园卡资金管理系统 系统有2权限&…

Nuxt3_1_路由+页面+组件+资源+样式 使用及实例

1、 简介 1.1 开发必备 node版本 v16.10.0 我使用的是16.14.0编辑器推荐使用Volar Extension 的VS code插件Terminal 运行nuxt指令 1.2 环境搭建 安装项目: npx nuxilatest init [first_nuxt3]进入项目目录: cd [first_nuxt3]安装依赖:n…

【蓝桥杯】[递归]母牛的故事

原题链接:https://www.dotcpp.com/oj/problem1004.html 目录 1. 题目描述 2. 思路分析 3. 代码实现 1. 题目描述 2. 思路分析 我们列一个年份和母牛数量的表格: 通过观察,找规律,我们发现: 当年份小于等于4时&…

如何在出差期间远程访问企业ERP系统?内网穿透解决您的难题!

文章目录 概述1.查看象过河服务端端口2.内网穿透3. 异地公网连接4. 固定公网地址4.1 保留一个固定TCP地址4.2 配置固定TCP地址 5. 使用固定地址连接 概述 ERP系统对于企业来说重要性不言而喻,不管是财务、生产、销售还是采购,都需要用到ERP系统来协助。…

JVM前世今生之JVM内存模型

JVM内存模型所指的是JVM运行时区域,该区域分为两大块 线程共享区域 堆内存、方法区,即所有线程都能访问该区域,随着虚拟机和GC创建和销毁 线程独占区域 虚拟机栈、本地方法栈、程序计数器,即每个线程都有自己独立的区域&#…

华盛顿大学Baker实验室率先设计出双稳态结构蛋白质

在蛋白质世界,“结构决定功能”是一条基本原则。因此,很多人可能认为,一个蛋白质就应该有一个唯一确定的结构,使得它能够去执行确定的生物学功能。其实,在真实的世界中,蛋白质大多都是处于一种不断起伏的动…

依赖预构建与静态资源处理

依赖预构建 vite是一个基于浏览器原生ES-Module的前端构建工具。 当你首次启动vite的时候,vite会在本地加载你的站点之前预构建项目依赖。 原因: CommonJS和UMD兼容性:在开发阶段中,Vite的开发服务器将所有的代码视为原生ES模块。…

unity 之 GetComponent 获取游戏对象上组件实例方法

GetComponent 简单介绍 GetComponent 是Unity引擎中用于获取游戏对象上组件实例的方法。它允许您从游戏对象中获取特定类型的组件&#xff0c;以便在脚本中进行操作和交互。 GetComponent< ComponentType >(): 这是一个泛型方法&#xff0c;用于从当前游戏对象上获取指定…

【⑫MySQL | 约束(二)】外键 | 默认值 | 检查约束 — 综合案例

前言 ✨欢迎来到小K的MySQL专栏&#xff0c;本节将为大家带来MySQL外键 | 默认值 | 检查约束 以及综合案例的分享✨ 目录 前言6. 外键约束(FOREIGN KEY,FK)7. 默认值约束和检查约束8. 综合实战总结 6. 外键约束(FOREIGN KEY,FK) 前面介绍的完整性约束都是在单表中进行设置&…

七夕前的爱心代码!

话不多说上代码&#xff01; import turtle as tu import random as ratu.setup(1.0, 1.0) tu.screensize(1.0, 1.0) tu.bgcolor(black) t tu.Pen() t.ht() colors [pink, hotpink, deeppink, lightpink, red, purple, violet, magenta]def draw_star(x, y, size, color):t.…

HASH索引,AVL树,B树,B+树的区别?

提前声明&#xff0c;本篇文章是我对我之前B树那篇文章的追加部分和补充的知识点&#xff0c;建议各位在看本篇文章的时候时已经了解了数据库索引B树的基本原理&#xff0c;否则有些地方可能理解起来会多一些难度哦&#xff01; 深入理解索引B树的基本原理_程序猿ZhangSir的博…

iOS17 widget Content margin

iOS17小组件有4个新的地方可以放置分别是&#xff1a;Mac桌面、iPad锁屏界面、 iPhone Standby模式、watch的smart stack Transition to content margins iOS17中苹果为widget新增了Content margin, 使widget的内容能够距离边缘有一定的间隙&#xff0c;确保内容显示完整。这…

Datawhale Django入门组队学习Task02

Task02 首先启动虚拟环境&#xff08;复习一下之前的&#xff09; 先退出conda的&#xff0c; conda deactivate然后cd到我的venv下面 &#xff0c;然后cd 到 scripts&#xff0c;再 activate &#xff08;powershell里面&#xff09; 创建admin管理员 首先cd到项目路径下&a…