首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >数据库设计-帮助台应用程序

数据库设计-帮助台应用程序
EN

Stack Overflow用户
提问于 2011-06-07 11:17:21
回答 2查看 1.3K关注 0票数 1

我无法决定是将问讯台应用程序与其他公司应用程序保留在同一数据库中,还是将其完全分离。

帮助台应用程序可以记录来自电话、电子邮件、网站的支持请求。

我们可以从注册客户和非注册客户向我们发送问题。

将问讯台应用程序保存在同一数据库中的唯一原因是,我们可以共享用户群。但话又说回来,我们可以让用户创建一个新帐户用于支持,或者也可以将用户帐户与问讯台应用程序同步。

如果我们分离帮助台应用程序,我们的数据库备份也会更小。或者只是将问讯台应用程序放在同一个数据库中,这使得开发/集成变得更加容易,同时也只备份一个数据库。(可能更大,但仍然是一个包含所有内容的数据库)

你会怎么做?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-06-07 11:32:00

我认为这是一个主观的答案,但我会将问讯台系统作为一个独立的实体,除非有很好的商业理由使用相同的用户群。

这主要是基于我在专业服务台呼叫记录/工单软件中看到的,但我确实有另一个令人信服的原因-安全逻辑如下:

一般来说,服务台售票系统通常比其他业务系统(会计、购物、CRM等)需要的敏感信息较少。您的技术人员可能需要知道如何联系客户,但可能不需要存储完整的地址、出生日期等。以下所有内容都基于一个假设-您现有的客户数据包含您的票务系统不需要的敏感或个人身份数据。

  • 原则1:通过限制存储的数据来减少攻击面。一般来说,我赞同这样的原则,即你应该只收集你绝对需要的数据。拥有较少的敏感信息意味着攻击者可以使用较少的steal.
  • Principle 2:通过最小化对现有敏感数据的攻击途径来减少表面积。这让我想到了to...
  • Principle 3:最小特权。您为问讯台软件数据库设置的用户应该只能访问您的问讯台分析人员绝对需要的数据。如果您在设计数据库时考虑到了一组特定的需求,则实现这一点会更容易。从维护的角度来看,为了只允许访问非敏感数据,必须在敏感数据上设置视图和存储过程,这比将数据库设计为只包含所需数据要困难得多。

当然,我可能想得太多了。而且还有其他令人信服的理由选择这两种方式。我只是想给你一些思考的东西。

票数 2
EN

Stack Overflow用户

发布于 2011-06-07 11:38:40

根据您的环境,这肯定是一个主观的答案。你必须权衡一个选择的优点/缺点和另一个选择的优点/缺点。然而,我的观点是,将两个数据库分开会带来最大的好处。我真的不喜欢一个数据库有两个目的。相反,要创建一个只有一个目的的数据库。下面是我看到的这样做的好处:

  • 可移植性-如果您决定将服务台移至另一台服务器,则可以毫无问题地进行迁移。如果您想要将公司数据库移动到else
  • Separation关注的地方,情况也是如此--每个数据库都有自己的用途。其中一个系统的安全性不会影响另一个系统的安全性。
  • 备份策略-目前,两个系统只能有一个备份策略,因为它们位于同一个数据库中。如果将它们拆分,则可以备份其中一个的次数多于备份另一个的次数(备份应为smaller/faster).

我看到的缺点(不能很容易地访问公司数据)实际上在我的脑海中是积极的。从公司数据库访问数据听起来不错,但这可能是一个安全问题(也是一个可维护性问题)。相反,通过这种方式,您可以限制授予问讯台系统的访问权限(以及访问类型)。数据库可以很容易地相互访问,所以不会那么不方便,它将允许你在你的公司数据和你的服务台数据之间增加一个很好的安全屏障。

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

https://stackoverflow.com/questions/6260281

复制
相关文章

相似问题

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