IM 应用场景中如何限制只有好友之间才能互发消息?

功能介绍 好友关系由开发者的应用服务器自行维护好友关系,融云服务器提供消息发送能力,消息发送过程中默认不会做任何权限校验

得到 userId 后即可发送消息,例如:A 发送消息给 B,只需要把 B 的 userId 传给融云服务即可发送消息

这样易用的设计可以使开发者高度自由集成自己业务,无需关心和融云的数据同步、安全问题

但如果 userId 如果泄漏,岂不是可以越过开发者的好友关系,向任意用户发送消息?针对此中情况可采用 用户白名单服务

白名单关系是双向的,只有将对方加入自己的白名单,对方才能送消息给自己,反之一样

例如:开通消息白名单后 A、B 之间互发消息

A 需要添加 B 到 A 的用户白名单中

B 需要添加 A 到 B 的用户白名单中

经过以上两步后方可互发消息,解决 userId 泄漏导致非好友之间可任意发送消息

注意: 用户白名单开通后,用户黑名单将失效,需要将黑名单用户数据转换至用户白名单中

功能使用

1、申请开通功能,提交工单提申请,操作路径:融云开发者后台 → 技术支持 → 创建工单 ,开发者后台地址:https://developer.rongcloud.cn

2、设置用户白名单需要开发者的服务器来调用,详细可参考 Server API: http://doc.rongcloud.cn/imserver/server/v1/user/whitelist 详情查看:https://www.rongcloud.cn/?utm_source=SEO&utm_term=helloworld

点赞
收藏

评论区

加载中...

相关推荐

Kafka中produer发送消息回调超时错误

Kafka版本0.10.1.1producer发送消息后出现如下错误消息: Theproducerhasaerror:Expiring1record(s)fortesttopic0dueto30039mshaspassedsincelastappendTheproducerhasaerror:Expi

Spring Boot+Socket实现与html页面的长连接,客户端给服务器端发消息,服务器给客户端轮询发送消息,附案例源码

功能介绍1.客户端给所有在线用户发送消息2.客户端给指定在线用户发送消息3.服务器给客户端发送消息(轮询方式)注意:socket只是实现一些简单的功能,具体的还需根据自身情况,代码稍微改造下项目搭建项目结构图!(https://img2020.cnblogs.com/blog/15044

单聊、群聊、聊天室、超级群在融云端历史消息存储时间分别是多长?

单聊历史消息与群聊历史消息在融云为同一项存储服务:单群聊历史消息云存储。需自行在开发者后台IM服务管理页面的普通服务标签下开通,开通后单聊、群聊历史消息默认存储6个月。

IM 应用场景中如何限制只有好友之间才能互发消息?

功能介绍好友关系由开发者的应用服务器自行维护好友关系,融云服务器提供消息发送能力,消息发送过程中默认不会做任何权限校验得到userId后即可发送消息,例如:A发送消息给B,只需要把B的userId传给融云服务即可发送消息这样易用的设计可以使开发者高度自由集

消息丢失排查方法?

遇到丢消息问题,如果是单聊,群聊,聊天室,系统消息可以在开发者后台北极星自助查询一下消息是否发送成功。根据您实际发送的相关信息(发送者、接收者、时间、消息ID……)看是否可以查到消息如果消息查不到一般有几种可能:信息有误(获取token的用户id跟您系统中

融云IM干货丨IM聊天室中客户端如何确保消息同步的准确性?

客户端确保消息同步的准确性主要依赖于以下几个关键技术和策略:全局唯一的消息ID生成策略:为了保证消息可以通过ID进行识别和排重,IM系统采用全局唯一的消息ID生成策略。这种策略可以确保每条消息都有一个唯一的标识符,从而在消息的发送和接收过程中避免重复。客户