OperationNames 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
包含用户可对 SQL Server Reporting Services 中的项执行的操作的字段名称和相应值。
public ref class OperationNames sealed
public sealed class OperationNames
type OperationNames = class
Public NotInheritable Class OperationNames
- 继承
-
OperationNames
注解
该OperationNames类包含表示Reporting Services中操作名称的常量字符串值的字段。 安全扩展插件可以使用这些操作名称返回报表服务器数据库中给定项的用户的权限列表。 有关详细信息,请参阅 GetPermissions 接口的方法 IAuthorizationExtension 。
可以通过此类方式开发报表服务器 Web 服务客户端应用程序,以便根据当前用户的权限提供功能和外观。 客户端应用程序(如报表管理器)依赖于 Web 服务方法GetPermissions返回一组对应于Reporting Services中的操作的权限名称。 当客户端调用 GetPermissions时,Web 服务会根据所访问的项以及发出请求的用户使用一组权限进行响应。 为分配 浏览器角色 的用户对报表服务器数据库中根项或主页项的典型调用可能如下所示:
// C# Web service code
string[] permissions = rs.GetPermissions("/");
foreach (string p in permissions)
{
Console.WriteLine(p);
}
上述代码返回浏览器用户的单个权限: Read Properties
用户有权查看内容和属性,但无权修改或删除内容。 用户也不允许更新安全策略或查看数据源信息。 浏览器角色是一个非常严格的角色。
由于客户端可以调用 GetPermissions 来发现用户拥有哪些权限,因此可以为每个用户定制客户端应用程序。 在报表管理器中, 浏览器 用户无权访问报表 的安全属性 或 数据源属性 页。 浏览器 用户也 不允许查看网站设置或其他管理员信息,因为报表管理器会提前调用 GetPermissions 并确定要显示的页和选项卡。 由于客户端应用程序依赖命名权限,安全扩展必须实现 GetPermissions 接口的方法 IAuthorizationExtension 。
为了支持实现GetPermissions,安全扩展 API 提供OperationNames类,该类包含一组常量字段,表示Reporting Services中的每个可用权限。 实现 GetPermissions时,应分析项目的安全描述符和当前用户,并根据当前用户的访问控制列表返回权限列表。
构造函数
OperationNames() |
初始化 OperationNames 类的新实例。 |