管理业务数据目录的授权

业务数据目录是一种可用于将业务线数据与 Microsoft Office SharePoint Server 2007 集成的服务。它包括用于按一致格式存储业务线应用程序元数据的数据库,以及用于从应用程序中提取数据并将客户端连接到数据库的对应 API。

业务数据目录的客户端包括(但不限于)业务数据配置文件、Web 部件、SharePoint 列表和用户配置文件。每次客户端尝试访问业务数据时,都会对当前帐户进行身份验证,并根据通过验证的帐户的授权设置为该帐户授予数据访问权限。如果帐户有正确的权限,则会从中间层数据库中检索数据,并将数据返回到客户端。

应用程序可在后端服务器上授予对业务线应用程序中的数据(例如数据库或 Web 服务)的访问权限。如果使用受信任子系统身份验证模式,则可以通过使用业务数据目录服务权限授予客户端访问权限。有关身份验证模式的详细信息,请参阅管理业务数据目录的身份验证

本文内容:

  • 后端授权

  • 中间层授权

后端授权

在后端授权中,应用程序的后端服务器负责在服务器上授予数据访问权限,并依据应用程序定义的权限单独标识和验证用户。在某些方案中审核业务数据事务时,这可能有一些优势,但需要在后端服务器上进行额外的配置工作。使用后端授权的业务线应用程序基于后端服务器的授权为用户授予访问控制。将可以在客户端应用程序中使用这些应用程序中的数据,具体情况取决于每个用户的授权。当您使用后端授权时,将无法使用业务数据目录的服务权限来实现更具体的访问控制。

中间层授权

中间层授权使用单一标识对后端服务器上的所有用户授权。您可以配置业务数据目录服务权限,以便为个别用户实现更具体的访问控制。这样就提供了一个跨所有应用程序的单一授权模型,从而可实现数据库连接池,并支持无法进行后端授权的情况。

业务数据目录的服务权限使用户能够访问导入到业务数据目录中的业务线应用程序中的业务数据。这些权限不是 Windows SharePoint Services 3.0 安全和权限模型的一部分,并可以从共享服务管理网站上的特殊“共享服务权限”页面中进行管理。

默认情况下,用来为共享服务提供程序 (SSP) 创建共享服务管理网站的帐户具有业务数据目录的所有服务权限。不会自动授予其他帐户(包括作为共享服务管理网站的网站管理员添加的帐户)服务权限。

可向至少拥有对共享服务管理网站的“仅查看”权限的任何帐户授予一个或多个服务权限。

业务数据目录的服务权限包括:

可将这些权限设置为位于五个分层级别的访问控制列表 (ACL),这些分层级别对应于业务数据目录中业务线应用程序的应用程序定义 XML 文件中使用的对象名称:

  • 业务数据目录(顶层级别,在架构中称为应用程序注册表)

  • 应用程序(在架构中为 LobSystem)

  • 实体或业务数据类型(在架构中为 Entity)

  • 方法

  • 方法实例(在架构中为 MethodInstance)

有关应用程序定义文件的示例,请参阅示例:AdventureWorks2000 PassThrough 元数据 (https://go.microsoft.com/fwlink/?linkid=124631&clcid=0x804)。

每个级别的权限都是单独设置的。例如,在业务数据目录级别具有“编辑”权限的用户将能够导入新应用程序定义,但是,如果他们在应用程序级别具有“编辑”权限,则只能编辑或删除现有应用程序定义。可以通过共享服务管理网站上的“管理权限”页面查看和管理顶层的三个级别的权限。方法和方法实例权限只能在相关的应用程序定义文件中查看。

一个级别的权限管理员可以将该级别的权限复制到所有后代。例如,具有业务数据目录访问权限的用户可被授予访问所有现有应用程序和实体的相同权限,或者,具有应用程序访问权限的用户可被授予访问该应用程序的所有实体的权限。

在业务数据目录初始配置过程中,最好配置跨业务数据目录的权限,并在转移到个别应用程序的权限之前考虑哪些用户需要该级别的每个服务权限。然后,为用户添加了每个应用程序的权限后,您可以针对每个实体、方法或方法实例配置权限。在后续操作过程中,应用程序定义管理员可以在业务需求和做法随着时间的过去发生变化时添加或移除应用程序权限和实体权限。

顶级业务数据目录权限

默认情况下,用于创建共享服务管理网站的帐户具有位于业务数据目录顶级的所有服务权限,其中包括“设置权限”权限。作为权限管理员,此用户通常为位于业务数据目录顶级的少部分用户添加服务权限。这些用户是作为权限管理员和/或应用程序定义管理员的业务数据目录管理员。

应用程序定义管理员与设计人员或开发人员协作工作,后者为每个业务线应用程序创作应用程序定义。应用程序定义包括所有已导入实体、方法和方法实例的 ACL。可以在创作应用程序定义时详细地添加这些权限,或者,您可以添加少量的用户,然后在导入应用程序定义之后对其进行编辑。

顶级应用程序定义管理员通常为限制为只能使用各个应用程序的其他用户添加权限。这样,可以为不同的用户赋予管理各个应用程序的业务数据权限的责任,而无需将跨应用程序的权限授予大量用户。

在任何级别添加权限时,最好为每个用户授予使用相关业务数据所必需的最低权限。

  • 应用程序管理员具有应用程序级别的所有权限。通常,只有少量的应用程序管理员,并且他们是在应用程序级别被授予“设置权限”权限和“编辑”权限的唯一用户。

  • 信息工作者具有“在客户端中选择”权限,并且没有其他权限。

  • 开发人员和设计人员具有他们所开发和设计的应用程序和实体的“执行”权限,并且没有其他权限。

应用程序级别和实体级别的初始权限由应用程序的应用程序定义作者配置。应用程序定义的作者还可以为用户和组配置应用程序权限,并根据需要为用户和组配置该应用程序的一个或多个实体的权限。当应用程序定义管理员将应用程序定义导入业务数据目录时,这些用户即被添加到 ACL,并被授权查看相关应用程序和实体的数据。在每个级别对权限所做的更改将影响应用程序定义中的基础 XML。

任务要求

以下为执行此任务过程必须具备的条件:

  • 管理员必须有权访问共享服务管理网站,并且必须针对业务数据目录启用“设置权限”权限。用于创建共享服务管理网站的帐户具有此权限,并能够向其他用户授予权限。

若要管理业务数据目录的权限,您可以执行以下过程: