使用 CREATE SECURITY LABEL COMPONENT 语句在当前数据库中定义新的安全标签组件和其元素。
语法
元素 |
描述 |
限制 |
语法 |
component |
此处为此组件声明的名称 |
在当前数据库中的安全标签组件中必须唯一 |
标识符 |
element |
此处定义的组件元素 |
在该 component 的元素中必须唯一,且不能多于 32 字节。左括号( ( )和右括号(
) )、逗号( , )和冒号(: )是无效字符
|
用引号括起的字符串 |
用法
只有 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 语句获取安全标签如何与数据库表或表中的一个数据行关联的信息。