首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Cassandra实现数据访问/权限管理

如何在Cassandra实现数据访问/权限管理
EN

Stack Overflow用户
提问于 2019-07-31 07:28:37
回答 1查看 37关注 0票数 1

我正在制作一个SaaS应用程序,用户将在其中创建广告列表。

  1. 所有广告都应向我的注册用户的所有用户和未注册的访问者可见。
  2. 只有注册用户才能创建广告。
  3. 注册用户可以创建多个广告。
  4. 只有创建广告的用户才能删除或编辑广告。

我从未做过用户和数据管理工作。一个数据库,所以我需要关于如何实现它的建议(我承认这是一个悬而未决的问题,但我仍然觉得它与我能问的其他方面有关!)

我的数据库是cassandra

  • 我正在考虑为所有的广告使用一个键空间来处理point#1
  • 我正在考虑为每个用户创建一个专用的密钥空间,用于存储他们的广告(point#2、point#3和point#4)。
  • 如果使用编辑/删除广告,则需要更改所有广告的特定用户密钥空间和全局密钥空间。

问题1-我的方法是否是创建这样一个应用程序的常用方法?如果不是的话,我会很欣赏关于替代设计的建议。

问题2-由于我将创建特定于用户的密钥空间,作为我的web注册过程的一部分,我是否能够编程地创建一个密钥空间(包含用户提供的用户名和密码)?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-08-05 06:25:08

在Cassandra中使用每个用户键空间不是个好主意,只有在有几个用户的情况下,这才能起作用。单独的键空间将意味着您要为每个用户创建一个单独的表,因此这将与第一点相矛盾-显示您需要从所有表中读取的所有广告。而且Cassandra还限制了它能够支持的表的数量--推荐的值不是集群中的500个表(更多细节请参见这个答案 )。

我建议只将用户ID作为分区键的一部分,或者分区键本身--但这将取决于其他因素,例如用户可以创建多少广告等等--这需要一个单独的问题。

我建议在DS220学习DataStax学院的卡桑德拉数据建模课程,以便更好地理解如何为卡桑德拉建模。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57285428

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档