章 20. 数据库角色

目录
20.1. 数据库角色
20.2. 角色属性
20.3. 角色成员
20.4. 函数和触发器安全

PostgreSQL使用角色的概念管理数据库访问权限。 根据角色自身的设置不同,一个角色可以看做是一个数据库用户,或者一组数据库用户。 角色可以拥有数据库对象(比如表)以及可以把这些对象上的权限赋予其它角色, 以控制谁拥有访问哪些对象的权限。另外,我们也可以把一个角色的成员 权限赋予其它角色,这样就允许成员角色使用分配给另一个角色的权限。

角色的概念替换了"用户""组"。在PostgreSQL 版本 8.1 之前,用户和组是独立类型的记录,但现在它们只是角色。 任何角色都可以是一个用户、一个组、或者两者。

本章描述如何创建和管理角色。更多各种数据库对象角色权限效果的信息可以在第 5.6 节找到。