

 从补丁 198 开始，Amazon Redshift 将不再支持创建新的 Python UDF。现有的 Python UDF 将继续正常运行至 2026 年 6 月 30 日。有关更多信息，请参阅[博客文章](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/)。

# 角色层次结构
<a name="t_role_hierarchy"></a>

*角色*是可以分配给用户或其他角色的权限集合。您可以为角色分配系统或数据库权限。用户从所分配的角色继承权限。

在 RBAC 中，用户可以拥有嵌套角色。您可以向用户和角色授予角色。将一个角色授予某个用户时，您将向该用户授予此角色包括的所有权限。将角色 r1 授予某个用户时，您向该用户授予了来自 r1 的权限。用户现在拥有来自 r1 的权限以及他们已经拥有的任何现有权限。

将角色 (r1) 授予另一个角色 (r2) 时，您向 r2 授予了来自 r1 的权限。此外，在将 r2 授予另一个角色 (r3) 时，r3 的权限是来自 r1 和 r2 的权限的组合。由于角色层次结构的原因，r2 继承了 r1 的权限。Amazon Redshift 通过执行每个角色授权来传播权限。通过将 r1 授予 r2，然后将 r2 授予 r3，从而将这三个角色的所有权限授予了 r3。因此，将 r3 授予某个用户后，该用户将拥有这三个角色的所有权限。

Amazon Redshift 不允许创建角色循环授权。如果将嵌套角色分配回角色层次结构中的上级角色，将会出现角色循环授权，例如将 r3 分配回 r1。有关如何创建角色以及管理角色分配的更多信息，请参阅[管理 RBAC 中的角色](r_roles-managing.md)。