例如,我们有三种类型的用户:内部用户(我们公司的员工)、客户和承包商,它们都在同一个表中,并有一个"type“字段来区分它们。我们也有不同的域名: internal.domain.com、clients.domain.com和contractors.domain.com。其中每个域映射到一个用户类型。为了登录到这些门户,您显然需要具有正确的用户/pw,并使用户类型与域相匹配。应该将这些用户从一个表拆分为3个表吗?
发布于 2011-03-05 17:13:37
您不需要3个用户表。您正在描述“角色”的概念,这通常会导致以下类型的表:
User
Role
User_Role (cross reference to declare which users have which roles)
您将有3个角色,一个是内部角色,一个是客户角色,一个是承包商角色。这是一个规范化的设计,但是您可以在单个用户表中使用非规范化的设计(但我不建议这样做)。我假设你会根据不同的角色有不同的逻辑。
另外,我应该注意到,考虑到您上面描述的用户和站点的类型,自然会考虑使用多个LDAP存储来执行这种身份验证,例如,可以使用3个不同的活动目录来实现。这允许您将身份验证和授权委派给控制这些域的IT。
https://stackoverflow.com/questions/5205300
复制相似问题