--- title: 用户概述 --- # 用户概述 App 用户需要接入融云服务,才能使用即时通讯服务。对于融云来说,用户是指持有由融云分发的有效 Token,接入并使用即时通讯服务的 App 用户。 ## 注册用户 应用服务端(App Server)应向融云服务端提供 App 用户的用户 ID(`userId`),以向融云换取唯一用户 Token。对融云来说,这个以 `userId` 获取 Token 的步骤即[注册用户],且必须通过调用 Server API 来完成。 应用客户端必须持有有效 Token,才能成功连接到融云服务端,使用融云即时通讯服务。当 App 客户端用户向服务器发送登录请求时,服务器会查询数据库以检查连接请求是否匹配。 **注册用户数限制** - **开发环境**?中的注册用户数上限为 100 个。 - 在 **生产环境**?中,升级为 **IM 旗舰版**或 **IM 尊享版**后不限制注册用户数。 ## 删除用户 {#delete} 删除用户是指在应用的**开发环境**中,通过控制台删除已注册的测试用户,以控制开发环境中的测试用户总数。**生产环境**不支持该操作。 ![(width=500)](../assets/dev-console/where-to-delete-users.png) ## 注销用户 注销用户是指在融云服务中删除用户数据。App 可使用该能力实现自身的用户销户功能,满足 App 上架或合规要求。 融云返回注销成功结果后,与用户 ID 相关数据即被删除。您可以向融云查询所有已注销用户的 ID。如有需要,您可以重新激活已被注销的用户 ID(注意,用户个人数据无法被恢复)。 仅 IM Server API 提供上述能力。 ## 用户信息 用户信息泛指用户的昵称、头像,以及群组的群昵称、群头像等数据。融云默认不存储和维护您应用的用户信息数据,需要在应用侧自行维护用户数据。如果您需要将应用下用户的资料信息存储在融云,可开启并使用融云的信息托管服务,将用户的资料信息存储到融云进行托管维护。 ## 好友关系 默认融云即时通讯服务不会同步或保存 App 端的好友关系数据,需要由应用服务器(App Server)自行维护。如果您需要使用融云的好友关系管理服务,可开启融云的信息托管服务,开启后可通过融云提供的好友关系管理服务,进行用户的好友关系管理。 在未使用融云好友关系管理服务情况下,如果需要对客户端用户之间的消息收发行为进行限制(例如,App 的所有 `userId` 泄漏,导致某个恶意用户可越过好友关系向任意用户发送消息),可以考虑使用[用户白名单]服务。用户一旦开启并设置白名单,则仅可接收来自该白名单中用户的消息。 如使用融云提供的好友关系管理服务,默认非好友间也可以正常发送消息,如需要限制为仅好友可以发送消息,可以在融云控制台(**应用配置**>**IM 服务**>**信息托管服务**>**功能设置**>**好友功能配置**)中开启仅好友可以相互发送单聊消息功能。 ## 用户管理接口 | 功能分类 | 功能描述 | 客户端 API | 服务端 API | |:-----------------------|:---------------------------------------------------------------------------------------------------------------------------------------------------------------|:------------------------------------------------------------------------------------------------------------------|:----------------------------------------------------------------------------------------------------| | 注册用户 | 使用 App 用户的用户 ID 向融云换取 Token。 | 不提供该 API | [注册用户] | | 删除用户 | 参见上文[删除用户](#delete)。 | 不提供该 API | 不提供该 API | | 废弃 Token | 废弃在特定时间点之前获取的 Token。 | 不提供该 API | [作废 Token] | | 注销用户 | 注销用户是指在融云服务中停用用户 ID,并删除用户个人数据。 | 不提供该 API | [注销用户] | | 查询已注销用户 | 获取已注销的用户 ID 列表。 | 不提供该 API | [查询已注销用户] | | 重新激活用户 ID | 在融云服务中重新启用已注销用户的 ID。 | 不提供该 API | [重新激活用户 ID] | | 设置客户端本地的用户信息 | 设置用户信息提供者,由应用层负责提供数据。 | [设置用户信息提供者] | 不提供该 API | | 设置融云服务端的用户信息 | 设置在融云推送服务中使用的用户名称与头像。 | 不提供该 API | 未提供单独的设置接口。在[注册用户]时必须提供用户信息。 | | 获取客户端本地的用户信息 | 获取在会话页面、好友列表等处显示的用户头像、昵称等信息。 | [获取用户信息] | 不提供该 API | | 获取融云服务端的用户信息 | 获取用户在融云注册的信息,包括用户创建时间和服务端的推送服务使用的用户名称、头像 URL。 | 不提供该 API | [获取信息] | | 修改客户端本地的用户信息 | 修改在客户端本地数据库中保存的用户昵称、头像等信息。 | [刷新用户信息] | 不提供该 API | | 修改融云服务端的用户信息 | 修改在融云推送服务中使用的用户名称与头像。 | 不提供该 API | [修改信息] | | 封禁用户 | 禁止用户连接到融云即时通讯服务,并立即断开连接。可按时长解封或主动解封。查询被封禁用户的用户 ID、封禁结束时间。 | 不提供该 API | [添加封禁用户]、[解除封禁用户]、[查询封禁用户] | | 查询用户在线状态 | 查询某用户的在线状态。 | 不提供该 API | [查询在线状态] | | 用户黑名单 | 在用户的黑名单列表中添加、移除用户。在 A 用户黑名单的用户无法向 A 发送消息。查询黑名单相关信息。

IMKit 未提供该 API 接口。此处客户端 API 为 IMLib 的 API 接口。 | [加入黑名单][sdk-add-to-blacklist]、[移出黑名单][sdk-remove-from-blacklist]、[查询用户是否在黑名单中]、[获取黑名单列表] | [加入黑名单][server-api-add-to-blacklist]、[移出黑名单][server-api-remove-from-blacklist]、[查询黑名单] | | 用户白名单 | 用户一旦开启并设置白名单,则仅可接收来自该白名单中用户的消息。 | 不提供该 API | [开启用户白名单]、[用户白名单状态查询]、[添加白名单]、[移出白名单]、[查询白名单] | [注册用户]: /platform-chat-api/user/register [作废 Token]: /platform-chat-api/user/expire [注销用户]: /platform-chat-api/user/deactivation/deactivate [查询已注销用户]: [查询已注销用户]: /platform-chat-api/user/deactivation/query-deactivated-list [重新激活用户 ID]: /platform-chat-api/user/deactivation/reactivate [获取信息]: /platform-chat-api/user/get [修改信息]: /platform-chat-api/user/modify [添加封禁用户]: /platform-chat-api/user/block [解除封禁用户]: /platform-chat-api/user/unblock [查询封禁用户]: /platform-chat-api/user/query-blocked-list [查询在线状态]: /platform-chat-api/user/check-online-status-by-user [server-api-add-to-blacklist]: /platform-chat-api/user/blacklist/add-to-blacklist [server-api-add-to-blacklist]: /platform-chat-api/user/blacklist/add-to-blacklist [查询黑名单]: /platform-chat-api/user/blacklist/query-blacklist [用户白名单]: /platform-chat-api/user/whitelist/whitelist-about [开启用户白名单]: /platform-chat-api/user/whitelist/query-whitelist-service [用户白名单状态查询]: /platform-chat-api/user/whitelist/query-whitelist-service [添加白名单]: /platform-chat-api/user/whitelist/add-to-whitelist [移出白名单]: /platform-chat-api/user/whitelist/remove-from-whitelist [查询白名单]: /platform-chat-api/user/whitelist/query-whitelist [设置用户信息提供者]: ./userinfo.md#setuserinfo [获取用户信息]: ./userinfo.md#getuserinfo [刷新用户信息]: ./userinfo.md#refreshuserinfo [sdk-add-to-blacklist]: /ios-imlib/user/blacklist#add [sdk-remove-from-blacklist]: /ios-imlib/user/blacklist#remove [查询用户是否在黑名单中]: /ios-imlib/user/blacklist#lookup [获取黑名单列表]: /ios-imlib/user/blacklist#get