在分析RBAC(基于角色的访问控制)权限模型时,我们可以通过查看各个选项的描述并分析其正确性。以下是对各个选项的分析:
A: **用于将需要做权限验证的定义为角色**
- RBAC模型的核心思想是通过角色来管理权限,用户被分配到一个或多个角色,每个角色对应系统中的一组权限。因此,将权限验证定义为角色是符合RBAC基本原理的。
B: **大数据引擎Hive权限模型依赖RBAC**
- Apache Hive确实可以利用RBAC模型来管理权限,通过使用诸如Apache Ranger或Sentry等工具来实现基于角色的访问控制。这个描述是正确的。
C: **角色之间可以有继承关系**
- 在RBAC模型中,确实可以设置角色之间的继承关系。通过继承,一个角色可以继承另外一个角色的权限,这种设计可以简化权限管理。因此,这个描述是正确的。
D: **RBAC基于责任分离原则和数据抽象原则**
- RBAC模型确实基于责任分离原则,因为它通过角色分配来确保用户只能访问与其职责相关的权限。然而,RBAC不直接依赖数据抽象原则。数据抽象通常涉及隐藏数据的复杂性,提供接口操作数据,而RBAC关注的是如何给角色分配权限以确保合适的访问控制。
综合分析,D选项在表述上存在问题,因为RBAC虽然符合责任分离原则,但与数据抽象原则没有直接关系。因此,答案是 **D**。