夜莺-Nightingale
夜莺V6
项目介绍 架构介绍
快速开始 快速开始
黄埔营
安装部署 安装部署
升级
采集器 采集器
使用手册 使用手册
API API
数据库表结构 数据库表结构
FAQ FAQ
开源生态
Prometheus
版权声明
第1章:天降奇兵 第1章:天降奇兵
第2章:探索PromQL 第2章:探索PromQL
第3章:Prometheus告警处理 第3章:Prometheus告警处理
第4章:Exporter详解 第4章:Exporter详解
第5章:数据与可视化 第5章:数据与可视化
第6章:集群与高可用 第6章:集群与高可用
第7章:Prometheus服务发现 第7章:Prometheus服务发现
第8章:监控Kubernetes 第8章:监控Kubernetes
第9章:Prometheus Operator 第9章:Prometheus Operator
参考资料

OAUTH2

配置举例说明

# 是否启用OAuth2登录功能 参数选项true/false
Enable = true
# OAuth2登录方式在前端显示的名称
DisplayName = 'OAuth2登录'
# OAuth2认证成功后的重定向URL。这个URL应该是夜莺监控服务的回调地址
RedirectURL = 'http://n9e-server:port/callback/oauth'
# SSO服务的地址
SsoAddr = 'https://<authing-tenant-name>.authing.cn/oauth2/authorize'
# SSO登出地址,用于处理用户退出登录的请求
SsoLogoutAddr = 'https://<authing-tenant-name>.authing.cn/logout'
# SSO服务获取令牌的地址
TokenAddr = 'https://<authing-tenant-name>.authing.cn/oauth2/token'
# SSO服务获取用户信息的地址
UserInfoAddr = 'https://<authing-tenant-name>.authing.cn/userinfo'
# 传递令牌的方法,参数为header | querystring | formdata
TranTokenMethod = 'header'
# SSO服务App ID
ClientId = '66***********'
# SSO服务App Secret
ClientSecret = 'ccc***********'
# 是否覆盖用户属性 参数选项true/false
CoverAttributes = true
# 用户在夜莺系统中的默认角色 Guest/Standard/Admin
DefaultRoles = ['Standard']
# 用户信息是否为数组
UserinfoIsArray = false
# 用户信息的前缀
UserinfoPrefix = 'data'
# 请求的OAuth2范围
Scopes = ['profile', 'email', 'phone']

# OAuth2的用户属性映射平台的用户属性
[Attributes]
# 用户名字段的映射
Username = 'sub'
# 昵称字段的映射
Nickname = 'nickname'
# 电话字段的映射
Phone = 'phone_number'
# email字段映射
Email = 'email'

TranTokenMethod 参数说明

TranTokenMethod 配置是设定获取 getUserInfo 接口信息时候的 Token 发送方式。大家在配置是可以查看确认一下 getUserInfo 接口对传递 Token 的要求。下面是分情况配置参数。

接口要求 GET 请求,并放到 header 中传递,TranTokenMethod 设置为 header ;

接口要求 GET 请求,并放到 url 中传递,TranTokenMethod 设置为 querystring ;

接口要求 POST 请求,TranTokenMethod 设置为 formdata ;

用户属性映射

在对接适配时,可以通过 DEBUG 日志过滤关键词 oauth2 进行查看分析,如下图所示我们可以看到平台通过 getUserInfo 接口可以获得的相关数据。 oauth2-config 我们把接口中获取到的用户信息填写在配置中,与平台字段对应即可实现用户信息的映射。

oauth2-config

如上图所示,将获取到的 name —> Username ; nickename —> Nickname ; phone_number —> Phone ; email —> Email;

oauth2-config

UserinfoPrefix 参数说明

UserinfoPrefix 参数用于指定在返回的用户信息 JSON 中,属性前缀的设置。

如果 API 返回的用户信息结构如下,需要设置 UserinfoPrefix 为 data 。

{
  "data": {
    "username": "john_doe",
    "email": "john@example.com"
  }
}

如果不清楚返回的数据结构,可以通过查看平台 DEBUG 日志分析数据结构。

oauth2-config

基础配置说明

下面是一个Authing的OAuth2配置对应说明:

RedirectURL默认是http://n9e-server:port/callback/oauth

oauth2-config

夜莺配置 OIDC配置
SsoAddr 认证端
SsoLogoutAddr 登出端点
TokenAddr Token端点
UserInfoAddr 用户信息端点
ClientId App ID
ClientSecret App Secret

账号登陆

oauth2-login01

oauth2-login02

账号退出

与OIDC一样目前暂时不支持夜莺服务端OAuth2账号直接退出。如需账号退出登陆,需要先在OAuth2服务端进行账号下线后,再返回夜莺服务页面选择账号退出即可。

快猫星云 联系方式 快猫星云 联系方式
快猫星云 联系方式
快猫星云 联系方式
快猫星云 联系方式
快猫星云
OpenSource
开源版
Flashcat
Flashcat