使用 CREATE SECURITY LABEL COMPONENT 语句在当前数据库中定义新的安全标签组件和其元素。
该语句是 SQL ANSI/ISO 标准的扩展。
用法
只有 DBSECADM 能发出 CREATE SECURITY LABEL COMPONENT 语句,来定义安全标签组
件。这是定义一个或多多个逻辑类别的数据库对象,其值可以在安全策略中使用以确定用户的读取
或写入数据的请求是接受还是拒绝。安全组件可具有的所有有效单个值的集合由该语句为组件指定
的安全标签组件的集合来定义。
安全标签组件实施的逻辑类别由 DBSECADM 在设计安全策略的过程中标识,它是基于标签访问控制
(LBAC)的核心构造。然而,要在数据库中实施此安全功能,DBSECADM 必须以下列顺序创建安全
对象:
- 一个或多个安全标签集合,每个集合可由 CREATE SECURITY LABEL COMPONENT 语
句定义。该语句指定安全做件的名称、其值范围的结构和此组件可被分配给将安全策略应
用与数据或用户的安全标签的可能值。
- 一个或多个安全策略,每个策略可通过 CREATE SECURITY POLICY 语句定义,它可指定
应用于数据和尝试对数据库中的安全策略包含的数据执行读取或写入操作的用户,一个或
多个组件列表和角色集合。安全策略总是包含 CREATE SECURITY POLICY 值的组件的所
有的元素。
- 可使用 CREATE SECURITY LABEL 定义安全标签,它为每个标签支持的安全策略的一个
或多个组件指定一个或多个值。此安全标签可以应用于数据和用户。一个安全标签的所有
组件必须是同一安全策略的组件,但是多个安全策略和多个安全标签可以共享同一组件。
CREATE SECURITY LABEL COMPONENT 定义的一个安全标签一般只包含一个安全组件
元素的子集。
如果您包含可选的 IF NOT EXISTS 关键字,则当指定名称的安全标签组件已经在当前数据库中注
册时,数据库服务器不采取操作(而非向应用程序发生异常)。
请参阅 GRANT Security 和 REVOKE Security 语句以获取安全标签和豁免安全策略的规则是如何
定义用户或角色的 LABC 凭证的信息。
请参阅 CREATE TABLE 和 ALTER TABLE 语句获取安全标签如何与数据库表或表中的一个数据
行关联的信息。