暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

GBae 8s SQL 指南:语法_4. 数据类型和表达式_4.7 表达式(158)

GBASE数据库 2022-05-06
115

SECLABEL_TO_CHAR 函数
SECLABEL_TO_CHAR 函数返回一个安全标签字符串格式的安全标签。
执行此函数的用户的安全凭证可影响该函数的输出。如果用户没有对那个元素的读访问权限,则在
输出中不包括安全标签组件的元素。如果用户提供对该数据的读访问的安全凭证,由仅包含那个元
素而没有其他元素的安全标签保护数据,则用户有对该元素的访问权限。
对于规则集 IDSLBACRULES,仅类型 TREE 的组件可包含用户没有对元素的子集的读访问权限
的元素。对于其他类型组件,如果任何元素阻止读访问,则用户根本不可读该行。因此,仅类型
TREE 的安全组件可有以此方式排除的安全组件元素的子集。 
例如,如果用户的安全标签的 TREE 类型组件为 {A},且行安全标签的 TREE 类型组件为 {A,
B},则仅返回组件 A,且用户感觉不到在行安全标签中存在 B。然而,如果用户持有
IDSLBACREADTREE 规则上的豁免,则返回的安全组件为 A 和 B。
在下一示例中,MegaCorp 安全策略有名为 mylabel 的安全标签,该标签由其值为 'Director' 的
level 组件,以及带有值 'HR' 和 'Finance' 的 compartments 组件组成。被授予了
‘mylabel’ 的用户已将带有那个安全标签的一行插入到表 T1 内。在此上下文中,在下列 T1 上
的 SELECT 语句中,由 SECLABEL_TO_CHAR 函数返回的安全标签字符串如下。
SELECT SECLABEL_TO_CHAR ('MegaCorp’, C1) FROM T1;
Row returned:
'Director:(HR,Finance)'
由于数据库服务器允许对安全策略名称和安全标签组件的值的读访问,根据 MegaCorp 安全策略
的 IDSLBACREAD 规则,此查询的成功说明 SECLABEL_TO_CHAR 函数成功,且该用户的安
全凭证是充分的。
限定安全标签字符串的最大大小为 32 KB。如果要被返回的安全标签字符串的长度超出此上限,则
发出警告,且返回截断了的 32 KB 字符串。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论