前面一篇说了什么是Schema,Schema可用来对数据库访问进行权限控制,Schema也是有owner所有者的,不同数据库中的Schema不一样,有的可能就是跟user一样,创建user的时候创建了Schema所以owner就是创建的user,有的可能需要创建数据库的时候创建Schema并指定owner,可以参见下上一篇文章:说说我理解的数据库中的Schema吧-CSDN博客
除了通过Schema来控制数据库的权限访问外,还可以通过用户类型进行权限控制,例如Oracle的应用程序用户(Application User)类型。
一、什么是Application User?
应用程序用户是Oracle数据库中的最常见用户类型之一。这些用户可以通过预定义的API或GUI访问数据库,以执行诸如查询、更新、插入和删除数据的任务。
应用程序用户的权限控制在一个非常精细的层级结构中,用于控制其能够访问的特定表、视图和功能列表。只有授权的用户才能够访问这些信息,并执行与其相关的任务。这样可以确保访问受限的数据和操作只能由授权的用户执行。
二、什么是应用程序角色?
应用程序角色也就是Application role。
标准角色通过对用户权限等级的认定而将用户划分为不用的用户组,使用户总是相对于一个或多个角色,从而实现管理的安全性。
应用程序角色是一种比较特殊的角色。当我们打算让某些用户只能通过特定的应用程序间接地存取数据库中的数据而不是直接地存取数据库数据时,就应该考虑使用应用程序角色。当某一用户使用了应用程序角色时,他便放弃了已被赋予的所有数据库专有权限,他所拥有的只是应用程序角色被设置的角色。
三、应用程序角色的使用方法
在使用应用程序角色时,首先将原用户A添加为数据库拒绝阅读、写入等角色成员,即:让A用户失去一些权限然后创建应用程序角色,给应用程序角色赋予你想要A用户具有的权限,最后使用时激活该应用程序角色相关联权限,那么A便有了相应的权限。
四、拓展延伸Oracle数据库的其他用户
1、系统管理员
系统管理员是Oracle数据库中最重要的用户之一。他们负责管理整个Oracle环境,包括安装、升级、备份和恢复数据库。此外,系统管理员还负责对受保护数据的访问进行验证,以确保只有经过授权的用户才能够访问敏感数据。
系统管理员通常有多种操作权限,例如创建、修改和删除用户,以及授予或收回其他用户的权限。系统管理员还负责管理数据库服务器上的各种配置设置,以确保系统能够高效地运行。
2、数据库管理员
数据库管理员负责监督并监督应用程序和其他用户对Oracle数据库实例的访问。他们的职责包括:
- 管理数据库和表空间的大小和性能
- 监察数据库的安全性和完整性
- 创建和管理数据库账户和权限
- 确保备份和恢复策略的有效性
数据库管理员通常涉及与应用程序开发人员和系统管理员的沟通和协调,以确保数据库配置和性能与用户的需求相匹配。
3、数据库开发人员
数据库开发人员利用Oracle数据库,构建和维护与Oracle数据库共存的其他应用程序,以及进行批处理作业。这些人员能够编写SQL和PL/SQL代码,以实现各种功能,并与应用程序用户界面进行交互。
Oracle数据库开发人员通常通过SQL开发人员工具来完成其任务,该工具可提供高级数据库访问功能。这些工具为开发人员提供访问数据库的API,使其可以更有效地编写代码和调试程序。
4、应用程序用户
前面讲到,此处略。
参考资料:
https://www.php.cn/faq/518958.html
https://blog.csdn.net/qq_46661297/article/details/105160297