首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何使用户数据私有,以便只有拥有/创建数据的用户才能看到它?

要使用户数据私有,以便只有拥有/创建数据的用户才能看到它,可以采取以下几种方法:

  1. 访问控制:通过访问控制机制,限制对用户数据的访问权限。可以使用身份验证和授权机制,例如基于角色的访问控制(RBAC)或访问令牌(Access Token)来验证用户身份,并根据其权限级别授予相应的数据访问权限。
  2. 数据加密:对用户数据进行加密,确保只有授权的用户能够解密和查看数据。可以采用对称加密或非对称加密算法,如AES、RSA等。在存储和传输过程中,确保数据的加密和解密操作。
  3. 安全传输:在数据传输过程中,使用安全的通信协议,如HTTPS,以确保数据在传输过程中的机密性和完整性。HTTPS使用SSL/TLS协议对数据进行加密,并通过数字证书验证服务器身份。
  4. 数据备份和灾难恢复:定期备份用户数据,并采取相应的灾难恢复措施,以防止数据丢失或损坏。确保备份数据的安全性和可靠性,以便在需要时进行恢复。
  5. 安全审计和监控:建立安全审计和监控机制,对用户数据的访问和操作进行监控和记录。通过日志分析和异常检测,及时发现和应对潜在的安全威胁。

腾讯云相关产品和产品介绍链接地址:

相关搜索:如何让只有登录用户才能看到他们创建的数据?如何使用Cloud Firestore来存储只有他们才能读、写和删除的私有用户数据?Eclipse milo -如何处理OPCUA中的数据(节点)可见性,以便不同的用户看到不同的数据?如何创建一个拥有大量本地数据的快速用户界面?如何“清理”给定格式的字符串数据,以便从它创建字典?我们如何创建对数据库拥有有限权限的非管理员用户?如何在firebase实时数据库安全规则中设置一条规则,以便只有处于特定时间段的用户才能写入数据?如何通过查询获取数据,以便使用面向对象的类创建编辑函数?如何修改Activity的savedInstanceState,以便使用新数据重新创建DialogFragment?如何使用用户输入的名称创建MYSQL数据库如何在yugabyte db中创建带密码的用户、删除角色和拥有所有权的数据库?如何使用python pyrebase为每个用户创建帐户并存储单独的数据?从firestore获取数据时,如何创建使用用户uid的服务?angular/firestore如何遍历类名,以便如果两个或更多元素具有相同的数据属性,则可以使用jQuery拥有相同的ID如何创建基于模板的表,并在多个DITA xml中使用它,并通过它填充数据如何从我的数据库获取用户id并使用ASP.NET核心MVC显示它?如何获取在数据库中创建的新项目的主键,以便立即使用并更新其设置如何从网格中的行中访问数据,同时选择它,以便在Adobe Flex (ActionScript)的下面的文本字段中使用它?如何使用单个数据库用户表创建两个独立的站点登录/注册如何使用来自用户输入的实时数据创建动态xpath并放入我的xpath中?
相关搜索:
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

老码农眼中的区块链

就好像比特币的概念还不够混乱似的,区块链计算显然也可以"应用"到其他行业? 这是如何运作的呢? 通过首先了解区块链计算是什么,才能来开始使用区块链的旅程。...从本质上讲,区块链是一个平台,旨在为一群人提供一种手段,以便在不需要集中系统的数字分类账上创建"交易",但同时仍然是安全和私密的,因为每个人都可以看到每个人计划改变什么,并且同意将交易合法化。...通过区块链认证是由一个只有区块链的用户才能拥有的私钥来表示,这使得他们能够通过其真实性做广泛的事情,例如广播权交易或拥有足够的数字货币。 使用稳定的加密系统,确保链条的成员在通过之前"批准"交易。...目前,只有大公司才有能力运行大数据分析任务, 因为这些公司不仅可以负担昂贵的硬件,而且也拥有大部分消费者数据。例如,谷歌拥有谷歌地图用 户的导航数据。...如果谷歌地图用户可以找到一种方法来销售他们的导航数据,那么他们就会出于经济 原因而这么做。用户不会担心他们的隐私,因为这些数据已经被谷歌看到和使用。

89410

Core Data with CloudKit(五)——同步公共数据库

私有数据库 这是iCloud用户存储个人数据的地方,用户将不希望公众看到的内容通过应用程序保存在这里。只有在登录了iCloud账户后,用户才可以访问其中的数据。...默认情况下,只有用户本人才能访问自己的私有数据库中的内容(可将部分内容分享给其他的iCloud用户)。用户对数据拥有全部的操作权限(创建、查看、更改、删除)。...你不拥有这些数据,并且只有在拥有必要权限的情况下才能查看和修改内容。只有已经登录了iCloud账户,此数据库才可用。...鉴权 在不考虑数据共享的情况下,私有数据库中的数据只有用户自己(已登录iCloud账户)可以访问。用户作为数据的创建者拥有所有的操作权限。...3.持久化存储管理私有数据库(用户对私有数据库拥有全部权限)4.持久化存储管理公共数据库,并且用户是该记录的创建者,或者Core Data尚未将托管对象更新到iCloud中。

1.5K30
  • 微信小程序的修炼五脉(如意篇上)

    声明 由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,雷神众测以及文章作者不为此承担任何责任。 雷神众测拥有对此文章的修改和解释权。...笔者是⼀位极其“不听话”的⼈,我不想要程序它觉得,我要我⾃⼰觉得;⾃⼰重新定义程序的逻辑以及游戏规则,掌控这其中的数据,让每⼀个环节都顺⾃⼰的⼼意,直到看到⾃⼰想要的结果为⽌。...获取微信⽤户绑定的⼿机号,需先调⽤wx.login接⼝。 因为需要⽤户主动触发才能发起获取⼿机号接⼝,所以该功能不由 API 来调⽤,需⽤ button 组件 的点击来触发。..._ 获取微信⽤户绑定的⼿机号,需先调⽤wx.login接⼝。 因为需要⽤户主动触发才能发起获取⼿机号接⼝,所以该功能不由 API 来调⽤,需⽤ button 组件 的点击来触发。...如下图所示,可以看到微信拥有⼀套⾮常成熟的⼩程序登录流程: ? 在这此流程中“session_key”起到了⾄关重要的作⽤,只要能获取此key的内容,便可以控制回调凭证内容,使整套登录安全体系破产。

    2.1K40

    混合云或成企业云计算最佳选择

    混合汽车是解释混合云功能的一个很好的例子。 所以,如何才能更好的定义云。云是一个计算环境,很大程度上与互联网类似。...这是因为云计算环境利用了标准的互联网通信协议,用户接口可以连接各种类型设备,而且在客户端操作系统上建立连接,这样就可以在特定的云中使用软件和数据资源。 那么,关于部署配置又如何。...因为这些 原因,已经安装在健壮的IT基础设施的大公司或拥有大量客户的第三方法服务提供商有能力承担起必要的投资,来构建并维护私有云。...私有云有权决定的是否给用 户或客户提供一周24小时的服务,这取决于特殊业务和可用IT资源的需求。 混合云与公有和私有云配置有什么不同?混合云是私有云和公有云的结合。...在混合云中,资源对终端用户是否透 明取决于它的云配置是处于公有部分,还是私有部分。 云爆发 让我们再回到混合汽车的例子上。混合动力汽车监控操作环境,并随着电量多少而进行调整。

    1.2K60

    Git!从零开始连接远程仓库

    ”是什么【见最下方的补充】 ---- 步骤三➡️拥有/建立一个远程仓库,并与本地仓库连接 —-Gitee为例 公有仓库和私有仓库的区别:公有仓库所有人可见,私有仓库只有仓库成员可见 所有可见仓库的用户都具有读取仓库内容的权利...(pull、clone),公有仓库所有人可见,故任何仓库都可以获取共有仓库的数据;私有仓库对外首先是不可见的,所以只有仓库成员可见,自然只有仓库成员有读取仓库的权利【能看到仓库,就能读取,看不到,当然不能读取...】 只有被仓库认证的成员即仓库成员才可以修改仓库的内容(比如上传push到远程仓库),仓库的创建者(拥有者)自然是仓库成员,如果想要添加仓库成员,由仓库创建者进行添加 Gitee相当于一个远端机器,我们可以在...,”初始化仓库“的选项勾不勾都是可以的 在仓库的权限方面,若设为开源/共有,则任何人都对于仓库拥有读(pull,clone)写(push)权限;设为私有,只有仓库拥有者具有写的权限,其他人只具有可读权限...,并用“ * ”标记出用户当前使用的分支 可以看到现在我只有一个分支master,并处在这个分支上 git branch 新分支名称 增加一个分支 这个命令会增加一个分支,新增的分支会复制原有分支的所有内容

    1.2K30

    Java多线程参考手册 博客分类: 经典文章转载

    值得一提的是,并不是只有对象才有锁,类本身也有自己的锁,这使得static方法同样可以用synchronized来修饰。访问同步static方法的线程需要获得类的同步锁才能继续执行。...由于UI线程自己本地拥有done的拷贝,用 户在按下按钮时只是把自己本地的done设成了true而没有及时更新主内存中的done,所以后台线程由于看不到done的改变而不会终止。...Volatile适用的场景比较严格,必须很清楚地看到volatile只是告诉JVM对于该变量的读写必须每次都在主内存中进行而禁止使用临时的拷贝来 优化,它只是出于JVM特殊的内存模型的需要,并没有同步的功能...事实上只有使数据发生变化的操作才需要同步,我们希望有一种方法可以把读取和写入区分开来,读取和写入的操作之 间是互斥的,但是多个读取操作可以同时进行,这样可以有效提高读取密集型程序的性能。...java.util.concurrent.Executors是用来创建线程池的工厂类,通过它提供的工厂方法,我们可以方便地创建不同特性的线程池。

    43920

    Shiro框架学习笔记(二)基于内置ini文件的身份认证

    一开始学习我们先从简单的开始学习,先不从数据库中取数据来进行交互检测,先通过内置一个shiro.ini文件来进行简单的身份验证。...[roles] # admin 拥有所有权限,⽤*表示 admin=* # clerk 只有查询权限 clerk=user:query,user:detail:query # manager 有 user...我们先通过控制台程序先测试,之后会集成到web项目中,接下来就是程序代码: // 定义main函数测试效果 // 创建 "SecurityFactory",加载ini配置,并通过它创建SecurityManager...直接由用户使用,调用功能简单,其底层调用Securitymanager的相关流程 Subject currentUser = SecurityUtils.getSubject(); // 身份认证(...对象,之后将该对象交由SecurityUtils来进行管理,之后在进行身份验证时主要是通过获取SecurityUtils获取到当前的登录用户,之后通过该用户的用户名以及密码创建相应的令牌,之后通过subject.login

    36230

    Git!从零开始连接远程仓库

    XXX”是什么【见最下方的补充】 ---- 步骤三➡️拥有/建立一个远程仓库,并与本地仓库连接 —-Gitee为例 公有仓库和私有仓库的区别:公有仓库所有人可见,私有仓库只有仓库成员可见 所有可见仓库的用户都具有读取仓库内容的权利...(pull、clone),公有仓库所有人可见,故任何仓库都可以获取共有仓库的数据;私有仓库对外首先是不可见的,所以只有仓库成员可见,自然只有仓库成员有读取仓库的权利【能看到仓库,就能读取,看不到,当然不能读取...】 只有被仓库认证的成员即仓库成员才可以修改仓库的内容(比如上传push到远程仓库),仓库的创建者(拥有者)自然是仓库成员,如果想要添加仓库成员,由仓库创建者进行添加 Gitee相当于一个远端机器,我们可以在...如果仓库是私有仓库,按道理说只有仓库成员才可见,所以需要验证本地用户信息 如果本地Git没有关联这个私人仓库的Gitee,需要输入用户的Gitee用户名和密码来验证自己是该私有仓库的成员...显示当前仓库下所有的分支 这个命令可以查看当前仓库的所有分支,并用“ * ”标记出用户当前使用的分支 可以看到现在我只有一个分支master,并处在这个分支上 ⚠️如果输入此指令之后,并没有正常显示

    81930

    如何使用Nexus 3 :npm仓库配置

    这是关于如何将Sonatype Nexus 3用作多种技术仓库的第二部分。 npm install有时可能会花费太长时间,因此在自己的内网中拥有一个代理可能是个好主意。...如何下载安装 请查看本系列的第一部分如何使用Sonatype Nexus Repository 3 :Maven仓库配置 配置Sonatype Nexus 3作为npm仓库,我们将要做的事情包括: 创建一个用于托管我们自己的...我建议您为每个要创建的新仓库创建一个新的Blob存储。这样,每个仓库的数据将位于/nexus-data目录内的不同文件夹中(在Docker容器内部)。但这不是必须的,默认仍然可以正常工作。...创建一个新的npm(代理)仓库并按以下方式配置它: 组仓库 这将汇集所有上述仓库,并为您提供一个统一的URL,以便配置您的客户端从中下载/部署。...如果您使用不同的凭据,您应该使用以下方法计算自己的哈希值: echo -n 'myuser:mypassword' | openssl base64 您必须设置一个用户才能发布包。

    2.1K20

    第六章 用户和组

    第六章 用户和组 6.1 用户管理 6.1.1 用户创建 其实在真生的生产环境中(即实际的项目运行环境)中,管理员操控Linux系统,并不都是使用root用户的,为了项目的安全与稳定,一般操控者都是使用普通用户登录系统的...-r zhang ---删除用户,并删除所有该用户的相关文件 读者可以依次输入命令验证一下,不加-r参数的目的是,删除用户后,但保留其文件,以防止数据丢失,便于系统后续使用。...户同名的组,作为其私有组。...是无法查看到的,我们只能做好操作记录,以便后期管理。...格式:用户 主机名=(以哪个用户的身份) 命令的绝对路径 注:命令绝对路径可以使用whereis查看到 示例:zhang centos7-1=(root) /usr/bin/mount

    93930

    初识公有云和私有云

    二是,从增效角度看,效率是企业的生命线,只有提高了生产效率,企业才能在市场中更好的竞争,而云则是提高基础设施效率最好的手段之一。...可以看到,云可以满足企业弹性、快速供给、快速释放基础设施的能力,同时还能够按需增加、灵活扩展,这些都是传统的自建数据中心所不能提供的。...通过企业上云,确实可以有效的推动基础设施架构的迭代,包括私有云和公有云怎样在资源上去做分配,以及和原生公有云之间如何去做资源的整合等,实现数据中心的现代化,最终实现资源优化和降本增效。...如果公有云比喻成出租公寓,那么企业就是其中的租户之一,当企业选择停止租用时,空间将被清理并释放出来租给下个租户。 公有云的优点是价格低廉、使用便捷、节省维护成本,所以用户多以创业公司和个人居多。...如果公有云是出租公寓,那么私有云就是独门独户的小别墅。 私有云的优点是提供了更加安全的环境,用户可以根据需求选择定制其资源。 缺点是安装成本高,高度安全性可能会使部分功能操作有局限性。

    6.7K30

    操作系统常见面试题

    因此,当程序使⽤⽤户空间时,我们常说该程序在⽤户态执⾏,⽽当程序使内核空间时,程序则在内核态执⾏。 用户态和内核态是如何切换的?...,只需要切换线程的私有数据、寄存器等不共享的数据; 所以,线程的上下⽂切换相⽐进程,开销要⼩很多。...不可剥夺条件:指线程获取到的资源在自己使用完之前不能被其它线程抢占,只有在自己使用完毕后才由自己释放该资源。...假如需要文件传输,使用传统I/O,数据读取和写入是用户空间到内核空间来回赋值,而内核空间的数据是通过操作系统的I/O接口从磁盘读取或者写入,这期间发生了多次用户态和内核态的上下文切换,以及多次数据拷贝。...其次,该系统调⽤,可以直接把内核缓冲区⾥的数据拷⻉到 socket 缓冲区⾥,不再拷⻉到⽤户态,这样就只有 2 次上下⽂切换,和 3 次数据拷⻉。

    1.2K31

    区块链技术开发探索区块链系统未来应用的作用

    为了在互联网上使用社交媒体、电子邮件和云数据存储等服务,人们需要向服务提供商进行身份验证。目前的方法是提供一个用户名和密码,并向提供者注册一个帐户。但目前还没有办法验证用户的身份。...因为有一种方法可以用他们的数字证书来识别用户,所以社交媒体账户可以和真人联系起来。一所学校可以创建社交媒体群,只有当学生拥有学校发给他们的证书时,才能访问这些群,防止外部人士渗透到这个群中。...这使得这项技术成为非常有价值的资产,特别是对于需要内部数据传输和维护记录的基于数据的组织和部门而言。这确实是一项革命性的技术,它改变了我们对数据的整体看法。...除此之外,还讨论了联邦区块链,以便创建具有大量私有和公共区块链信息的智能合约。 QQ截图20190717111920.png 事实上,以太坊更进一步,决定开发一个将业务逻辑应用于区块链的系统。...在保障数字资产系统的安全性和稳定性方面有大量经验,对于百万级别并发、大数据存储与分析领域进行过深入的研究并拥有丰富的处理经验,源中瑞科技为用户提供成熟稳定且人性化的操作交易系统,以确保客户的数字资产安全

    2.2K00

    私有云泛滥 如何采用云整合加强安全性

    虽然有些统计数据表示私有云的使用量开始下降,但过去这几年所遗留下来的私有云规模还是颇为可观的,对于某些大型机构,例如财富500强公司,仍然维持着几十个独立的私有云环境的情况也并不少见。...我们之前讨论了一些可能遇到的挑战,但为了说明使用私有云可能对组织有益这个观点,请你想像某个在不同使用场景下拥有多重监管要求的组织。...为了避免这样的问题,企业需要收集不少数据才能做出战略上的决策。他们需要了解: 这个环境是存在的 环境里有什么 使用环境所需的安全要求 现今这个环境中已经存在哪些控制/流程 如何开始整合私有云环境?...这三种数据的来源结合在一起使用,会给予你的组织所需的原始材料,帮助做出关于整合是否是正确的这一战略层面的决策。如果结论是是的话,将会帮助你建立如何让整合更有效的计划。...云整合本身,虽然是个长期的活动,只有这样才能被仔细规划,以便让你的组织最大化的利用资源。如果你的企业正在考虑将应用放到私有云里,那么这些信息也会帮助你做出最适合业务需求的决策。

    2K70

    CDP的安全参考架构概要

    首先配置身份验证以确保用户和服务只有在证明其身份后才能访问集群。接下来,应用授权机制为用户和用户组分配权限。审计程序会跟踪访问集群的人员(以及访问方式)。 2 更多安全 敏感数据被加密。...安全架构改进 为符合 第3 级安全实施的监管标准,客户将创建网络拓扑,以确保只有特权管理员才能访问核心 CDP 服务,而应用程序、分析师和开发人员仅限于适当的网关服务,例如 Hue 以及适当的管理和监控...以下部分将更详细地介绍如何实现每个方面。 验证 通常,集群将与现有的公司目录集成,从而简化凭据管理,并与管理和维护用户和服务帐户的完善的 HR应用保持一致。...它用于创建和管理策略以访问 CDP 堆栈中所有服务的数据和其他相关对象,并且与早期版本相比具有许多改进: 在 CDP 之前,Ranger 仅在策略中支持用户和组。...与公司目录集成 创建并保护 Hive 表: 描述 Ranger 策略评估流程 提供如何通过角色为组或用户启用和保护特定 Hive 对象的示例。

    1.4K20

    【董天一】关于IPFS的热门问题

    是的,在IPFS里面并没有文件所有权的问题。至少小编没有看到关于这个方面的论述,这跟我们目前的web使用是一样的,数据本身没有所有权,所有权是通过应用实现的。...IPFS引入了私有网络(Private Network)的概念:         允许你在IPFS网络里面创建私有网络,你只需要把自己节点的密钥发送给对方,对方节点经过设置之后就可以链接到你的节点,进而创建一个私有网络...如果你存储的文件是不想别人看到的文件,在存入IPFS之前对文件进行加密即可,这样即便是别人拥有了文件哈希,还需要私钥来查查看数据。...上传的照片如果经过加密,那么只有拥有密钥的你才能查看。 IPFS只是一个分布式的数据库,文件系统,怎么使用完全取决于前端的应用。IPFS打造是一个高可用,高速的分布式存储系统。...一项新技术能够在经济层面巨大的提高我们的社会运转效率,我们要学会运用这样的技术,限制它的弊端。所以不应该把新技术看做虎狼,更应该考虑的是如何运用好新技术。

    99410

    云安全中的零信任:永不信任,始终验证

    公司基础设施团队需要具备相当的意识和知识,才能确保他们能够实施有效的控制措施,尤其是在身份管理以及如何限制对某些员工的访问方面。 通常,内部安全团队对公有云的了解不足。...为了保护您已部署的应用程序和服务,请在网络级别使用分层安全方法,在多个安全控制。使用零信任:永远不要信任;始终验证。公有云提供商在其目录中提供了各种工具来实施身份验证、授权和私有隔离网络。...因此,当您使用公有云时,需要付出努力来限制访问并构建这些分层控制,以确保例如,只有连接到 VPN 的开发人员或员工才能访问服务,即使这些服务默认情况下在公有云上是公开的。...如果团队中的某个人部署了不安全的应用程序或创建了不符合规范的配置选项,则需要通知某人并采取行动。一旦团队对当前的安全基线感到满意,就可以配置自动操作,以便不再需要人工干预。...云提供商拥有工具来监控并深入了解可能存在的配置错误。我们建议使用这些产品来识别和提醒您何时创建了不符合您设定标准的新服务或新代码。

    8510

    百座城市,万个前置仓,亿户家庭,刚融资4.5亿美金的每日优鲜要下什么棋?

    这验证了零售业的本质,提供商品或服务的公司,只有不断追求距离用户更近,才能通过更优质的体验抓牢用户抓住市场。对格外在意新鲜度的生鲜消费来说,即时性配送定是趋势。 ?...很多人看到前置仓模式都会有两个疑问: 一个是建设这么多前置仓,如果没有足够的订单支撑会不会造成资源闲置浪费? 还有一个是前置仓如何进行库存管理?即每天应该调拨何种商品、调拨多少到一个前置仓?...这两个问题都有一个共同答案,就是大数据分析。每日优鲜通过积累的订单和用户大数据,对需求进行预测,再决定到什么地方拓展前置仓,以及进行商品调拨。...数据证明了每日优鲜前置仓模式的成功,基于此开展“百城万仓亿户”计划,就是将冷链仓库由城市级推向社区级后的进一步区域化推广。...提供商品或服务的公司,都在努力追求距离用户更近,只有这样才能实时地交付产品、提供服务,实现体验的最佳化。 ? 零售行业的本质就是看谁距离消费者更近,减少商品获得的等待时间。

    52940

    11种常用的设计模式

    8.2 使用的优势 授权机制不同级别的用户对同一对象拥有不同的访问权利,如在论坛系统中,就使用Proxy进行授权机制控制,访问论坛有两种人:注册用户和游客(未注册用户),论坛就通过类似ForumProxy...8.3 如何使用 以论坛系统为例,访问论坛系统的用户有多种类型:注册普通用户、论坛管理者、系统管理者、游客。...注册普通用户才能发言,论坛管理者可以管理他被授权的论坛,系统管理者可以管理所有事务等,这些权限划分和管理是使用Proxy完成的。...Builder模式是一步一步创建一个复杂的对象,它允许用户可以只通过指定复杂对象的类型和内容就可以构建它们。用户不知道内部的具体构建细节。...Builder模式是非常类似抽象工厂模式,细微的区别大概只有在反复使用中才能体会到。

    48110

    使用NATS实现服务网格功能,第2部分:安全性

    NATS 2.0操作员-帐户-用户模型作AuthN和AuthZ 所有这些都有利有弊。没有完美的答案,只有适合你和你的团队的方法。但是我相信有其他选择是好的!...它允许你控制用户帐户(这里是指到NATS的客户端连接),以便访问其他帐户中的消息。你可以保护围绕帐户和用户的消息流,以分割应用程序中的流量。...你需要知道这些区别来衡量你的情况、产品、团队和环境能够和应该做什么。 NATS账户服务器和NATS本身的一个非常酷的特性是,它不存储私有密匙、用户数据和秘密用户名/密码组合。...现在我已经开始了解nsc工具和帐户服务器,我看到他们是如何做到的。这是个很酷的设计。当然,DevSecOps自动化(100%)方面的我仍然需要弄清楚如何将所有这些自动化到一个开发/测试设置中。...NATS使用操作员-帐户-用户模型和他们的nsc工具来排列消息主题,以便发布和请求/回复跨帐户以及用户在帐户内的消息。

    1.8K30
    领券