示例 2 - 显式指定拒绝集
在此示例中,数据库角色具有如下表中所示的维度安全性设置。
Attribute | IsAllowed | AllowedSet | DeniedSet | ApplyDenied | VisualTotals |
---|---|---|---|---|---|
州省市自治区 |
True |
Oregon |
True |
False |
|
市县 |
True |
True |
False |
||
性别 |
True |
True |
False |
以下为这些维度安全性设置的结果:
- 该数据库角色无法看到州省市自治区属性的 Oregon 成员。(Oregon 已在州省市自治区属性的拒绝集中进行指定。)
- 该数据库角色也无法看到包含 Oregon 的属性层次结构的任何成员(在此例中,为市县属性的成员)。(ApplyDenied 属性已启用。)
查看结果集
根据该角色的这些维度安全性设置(并根据对所有单元的多维数据集的权限),在查询所有成员时将从多维数据集中返回以下结果集:
全部级别 | 州省市自治区 | 市县 | 性别 | 销售额 |
---|---|---|---|---|
All Offices |
27300 |
|||
California |
12900 |
|||
San Jose |
4200 |
|||
Male |
2000 |
|||
Female |
2200 |
|||
San Francisco |
|
4400 |
||
Male |
2200 |
|||
Female |
2200 |
|||
Los Angeles |
|
4300 |
||
Male |
2100 |
|||
Female |
2200 |
|||
Washington |
|
8700 |
||
Seattle |
|
4500 |
||
Male |
2200 |
|||
Female |
2300 |
|||
Tacoma |
|
4300 |
||
Male |
2000 |
|||
Female |
2300 |
请注意,虽然结果集不显式提供 Oregon 的总销售额,但是该数据库角色的成员仍可推导出此信息。该角色的成员可以查看所有办事处的总销售额,并可查看 California 和 Washington 的总销售额。因此,即使显式拒绝该数据库角色的成员查看 Oregon 的销售额,他也能够推断出 Oregon 的总销售额。若要防止该数据库角色的成员推导出 Oregon 的总销售额,请启用 VisualTotals 属性。
请参阅
任务
概念
示例 1 - 显式指定允许集
示例 3 - 使用 Except 函数从拒绝集中排除成员
示例 4 - 使用 Exists 函数从拒绝集中排除成员
示例 5 - 使用 Exists 函数指定允许集
示例 6 - 使用 Exists 和 Except 函数来指定允许集和拒绝集