Burnett

淡定,执着......
posts - 29, comments - 109, trackbacks - 22, articles - 10
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

【翻译 WSS3.0 SDK系列之一】用户,组和认证

Posted on 2007-02-27 11:58 Burnett 阅读(...) 评论(...) 编辑 收藏

  原文地址:General Reference  --- Security, Users, and Groups --- Users, Groups, and Authorization
      在WSS 3.0中,用户使用基于角色的成员系统来访问Web站点,列表,文件夹和列表项目。用户也通过扮演某一个角色的认证方式来操作WSS对象模型。
为了赋予用户的访问对象的权限,你可以通过两种方式来进行这种操作:第一种是把这个用户加入到可以访问这个对象的用户组中,或者重新建立一个角色,把这个角色分配给用户,你可以自由的将角色的任务绑定到适当的,具有基本权限的角色定义上,这样,你就可以通过这个角色来访问列表对象,文件夹,列表,或者Web站点。如果你没有把角色的任务绑定到已有的角色定义上。那么这个用户是没有任何权限的。

WSS提供了下列的方法来控制对象的访问:

  • 对象可以拥有父Web站点,列表,或则会文件夹相同的功能,继承这些父对象的角色或者可访问的用户,还可以使用独一无二的访问权限。

  • 站点,列表,文件夹和项目都提供了角色任务集,允许更详细的用户访问对象管理

  • 在WSS3.0中,只存在一种组,以前的叫法叫做跨站点组(cross-site group),这些组由用户组成,可以或者不可以被指定到角色中。WSS默认提供以下三种组

    • 所有者 owners (administrator)

    • 成员  member (contributor)

    • 访问者  visitors (reader)

当你使用唯一的权限通过用户接口建立一个Web站点的时候,你将会被指引到一个页面上去,在这个页面上你可以为这个站点设定可访问的用户组

  • 匿名访问允许用户在不需要认证的情况下访问列表,调查,或者读取页面。你也可以给“全部认证用户”赋予相应权限来允许所有的域用户来访问Web站点来达到和匿名访问相同的效果

  • 站点建立权限(CreateSSCSiteManageSubwebs)控件可以建立顶层的Web站点,子站点或者工作区。

用户间接的通过角色分配的组,或者直接通过角色分配来成为SharePoint对象的访问成员。另外,用户也可以被加入到组里或者被分配到一个角色从而成为NT域组里的成员 。一个角色的定义使用分配给一个用户一个单独的权限或者一组权限,这些权限符合 Microsoft.SharePoint.SPBasePermissions 枚举值。每一个用户或者组都有一个独立的用户ID
你可以通过addrole.aspx 和 editrole.aspx两个页面来建立或者修改分配的角色或者定义的角色,同时你也可以使用对象模型来达到同样功能的效果!不同于UI的是,对象模型不强制权限依赖。这样一来,你可以使用任意的权限组合来建立角色的定义。但是,在使用对象模型自定义角色定义和许可之前请仔细的计划一下,因为一个没有深思熟虑的角色定义和不适当的权限分配会导致不良的用户体验。
为了获取更多的WSS权限,请参考SPBasePermissions

安全策略

安全策略提供了一个手段来加强在一个Web应用程序(虚拟服务器)中的所有站点集的安全性。通过策略你可以指定角色,权限集给WSS用户的独立个体和域组中使用Windows认证或者第三方的认证系统,但不是给于SharePoint组的。在Web应用程序中每一个策略入口指定了一个用户或者组。策略可以提供逻辑Web应用程序或者区域级别的保护。比如说,用户在http://Server 和 http://Server.extranet.microsoft.com 可以拥有不同的策略,即使两个Web应用程序拥有相同的内容。

策略可以准许或者拒绝一个或者一些权限。准许一个权利意味着给于了用户或者组在Web应用程序中使用所有安全化的对象的权限而不管这个对象的本地的安全许可。拒绝一个权限要好于准许一个权限,可以在Web应用程序中的安全化的对象中积极的调度用户或者组。

在策略角色中,用户的身份可以由安全ID(SID)和登录的用户名来唯一的识别。使用一个策略角色和Web站点,列表,文件夹或者文件的许可管理类似:加入一个用户,并赋予这个用户一个或者更多的角色定义。但是,不同于WSS对象的访问许可,策略角色不与其他的Web应用程序或者用于管理对象许可的内容角色定义共享。每一个Web应用程序有他自己的策略角色。策略角色和管理许可的其他的不同点在于中心管理员可以通过Web应用程序来拒绝向某一个用户发放权限

注意:

中心管理员策略角色不同于站点集的角色定义。