GB28181流媒体协议国标视频云服务平台EasyGBS请求白名单功能开发记录

介绍了EasyGBS中如何实现IP白名单功能,通过检查请求来源IP来控制接口访问权限,确保只有白名单内的IP地址能正常使用。此外,还提到了其他已实现的功能如语音对讲等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在最新版本的EasyGBS中,开启http接口鉴权后就意味着必须登录过后才能够调用后端接口。在部分场景中,有的项目想针对性地对某些IP开放鉴权,这个时候就需要添加请求白名单功能。

在没有添加白名单功能前,通过未开放鉴权的IP去访问界面,就会报权限错误,如下:

36.png

此处我们需要针对IP进行鉴权的判断,因此可以添加如下代码判断请求的来源IP,判断IP是否在预设置的白名单内,如果在内则放行,不在内则验证权限。

func CheckIP(c *gin.Context) bool {
       host, _, err := net.SplitHostPort(c.Request.RemoteAddr)
       if err != nil {
              return false
       }
       sechttp := utils.Conf().Section("http")
       whiteIpList := sechttp.Key("white_ip_list").MustString("127.0.0.1")
       whiteIpListArr := strings.Split(whiteIpList, ",")
       for _, v := range whiteIpListArr {
              if v == host {
                     return true
              }
       }
       return false
}

再次请求页面能够正常打开播放。

37.png

之前EasyGBS还开发了告警白名单功能,大家可以了解一下(EasyGBS如何配置告警白名单)。EasyGBS已经添加的功能包括语音对讲、云台控制、告警上报等。如果有兴趣,可以自行下载测试,测试期间可以自由调用接口进行二次开发。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值