OIDC

配置举例说明

  1. # 是否启用OIDC登录功能 参数选项true/false
  2. Enable = true
  3. # OIDC登录方式在前端显示的名称
  4. DisplayName = 'OIDC登录'
  5. # OIDC认证成功后的重定向URL。这个URL应该是夜莺监控服务的回调地址
  6. RedirectURL = 'http://n9e-server:port/callback'
  7. # SSO服务的地址
  8. SsoAddr = 'https://xxx.authing.cn/oidc'
  9. # SSO登出地址,用于处理用户退出登录的请求
  10. SsoLogoutAddr = 'https://xxx.authing.cn/oidc/session/end'
  11. # SSO服务App ID
  12. ClientId = '66988*************'
  13. # SSO服务App Secret
  14. ClientSecret = 'cbc*************'
  15. # 是否覆盖用户属性 参数选项true/false
  16. CoverAttributes = true
  17. # 用户在夜莺系统中的默认角色 选项Guest/Standard/Admin
  18. DefaultRoles = ['Guest']
  19. # 请求的OIDC范围
  20. Scopes = ['openid', 'profile', 'email', 'phone']
  21. # OIDC的用户属性映射n9e的用户属性
  22. [Attributes]
  23. # 用户名字段的映射
  24. Username = 'sub'
  25. # 昵称字段的映射
  26. Nickname = 'nickname'
  27. # 电话字段的映射
  28. Phone = 'phone_number'
  29. # email字段映射
  30. Email = 'email'

基础配置说明

下面是一个Authing的OIDC配置对应夜莺配置基本说明:

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

oidc-config

夜莺配置OIDC配置
SsoAddr认证端
SsoLogoutAddr登出端点
ClientIdApp ID
ClientSecretApp Secret

在不同的OIDC服务端可能会有映射字段差异,通过配置文件中Attributes里面的映射关系进行调整;下图是一个调整举例,将email映射为Username。

  1. [Attributes]
  2. Username = 'email'
  3. Nickname = 'nickname'
  4. Phone = 'phone_number'
  5. Email = 'email'

账号登陆

oidc-login01

oidc-login02

账号退出

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