数据库用户表和权限

时间:2012-03-07 23:37:45

标签: database oracle jsp

我正在为大学制作一个数据库系统项目,需要在线登录才能让人们阅读付款信息。我有一个“人”表,存储有关人员的信息,他们有一个唯一的标识符,它将是他们的用户名,密码是在其他地方生成的(鉴于系统如何工作,这部分完全没有问题)。但是,有时候有些人不会直接参与数据库中的数据,而是会有一个密码授予他们,这些密码将存储在数据库中。

现在。如何为存储在数据库中的这些用户分配“角色”?顺便说一句,我正在使用Oracle和JSP作为我的主语。

1 个答案:

答案 0 :(得分:0)

嗯,你必须要么

  • 使用Oracle对角色的本机支持,
  • 将您需要的数据存储在表格中,或
  • 从您在数据库外可用的内容中获取。

对于本机支持,请参阅,例如,docs.oracle.com表示CREATE ROLE。

为了在表格中存储您需要的数据,您可以使用像

这样简单的东西
create table user_roles (
  user_id integer primary key references users (user_id),
  user_role varchar(20) not null references user_roles (user_role)
);

如果您这样做,请密切关注该表的权限。您不希望用户升级其角色。

为了从数据库之外的东西派生它,你可以使用像

这样的东西
  • 网络登录名,
  • IP地址,
  • cookie,或
  • 别的。
但是,如果其中任何一项运作良好,我会感到有些惊讶。他们中的大多数人可能也需要在数据库中存储一些东西。

当我在数据库应用程序中需要角色时,我通常依赖于CREATE ROLE。