为了安全起见,SharePoint 对可防止脚本注入的 Web 控件和未防止脚本注入的 Web 控件进行了区分。 不受信任的用户可以访问受保护的控件(或安全控件)。 您可以在 SharePoint 项目项的“安全控制项”属性中将控件标记为安全,或在向包中添加程序集时在**“包设计器”**中将控件标记为安全。 有关更多信息,请参见
web.config 文件设置更改和 Registering a Web Part Assembly as a Safe Control(将 Web 部件程序集注册为安全控件)。
| .gif) 重要事项 | 
|---|
| 这些过程用于阐释目的。 只有在确信控件安全时才将控件标记为安全。 | 
在“安全控制项”属性中标记安全控件
在“安全控制项”属性中将控件标记为安全或不安全
- 创建包含可视 Web 部件项目的 SharePoint 解决方案。 
- 向 Web 部件中添加两个控件:一个文本框和一个按钮。 分别保留名称的默认值 TextBox1 和 Button1。 
- 向 Web 部件的**“安全控制项”属性中添加两项。 为此,请单击“属性”窗口中“安全控制项”**旁边的省略号 ( .gif) ) 按钮。 ) 按钮。- 将出现**“安全控制项”**对话框。 
- 在**“安全控制项”对话框中,单击“添加”两次,向“成员”**窗格中添加两个安全控件项:一个用于按钮,一个用于文本框。 
- 单击第一个安全控件项,并将其**“安全”属性更改为“False”,将其“类型名称”属性更改为“Button1”,并将其“安全应对脚本”属性更改为“False”**。 - 此步骤将按钮控件标识为不安全控件。 
- 单击列表中的第二个安全控件项。 将其**“安全”属性保留为“True”,将其“类型名称”属性设置为“TextBox1”,并将其“安全应对脚本”属性设置为“True”**。 - 文本框控件现在即标记为可安全应对脚本注入的控件。 
- 单击**“确定”**关闭对话框。 
在包设计器中标记安全控件
在包设计器中将控件标记为安全或不安全
- 创建包含可视 Web 部件项目的 SharePoint 解决方案。 
- 向 Web 部件中添加两个控件:一个文本框和一个按钮。 分别保留名称的默认值 TextBox1 和 Button1。 - 记下控件的命名空间,因为稍后将用到该命名空间。 
- 在**“生成”菜单上单击“生成解决方案”**以生成项目。 
- 创建另一个 SharePoint 解决方案。 
- 在**“解决方案资源管理器”中双击 Package.Package 文件,以打开“包设计器”**。 
- 在**“包设计器”中,单击“高级”**选项卡。 
- 在**“其他程序集”下,单击“添加”按钮,并从列表中选择“添加现有程序集”**。 - 将出现**“添加现有程序集”**对话框。 
- 在**“添加现有程序集”对话框中,单击“源文件路径”**旁边的省略号 ( .gif) ) 按钮。 ) 按钮。
- 对于此示例,请将**“部署目标”**选项保留为 GlobalAssemblyCache。 - 此步骤将使程序集部署到系统全局程序集缓存 (GAC)。 如果希望程序集部署到 Web 应用程序 (Bin) 文件夹,请改为选择该选项。 有关更多信息,请参见 Deploying Web Parts in SharePoint Foundation(在 SharePoint Foundation 中部署 Web 部件)。 
- 在**“安全控件”框中,单击“单击此处添加新项”**按钮。 
- 依据下表输入属性的值。 - 属性名 - 值 - 命名空间 - 控件的完全限定命名空间,例如 BdcModelProject1.VisualWebPart1。 - 类型名称 - Button1 - 程序集名称 - 程序集强名称,例如:Microsoft.Office.SharePoint.ClientExtensions, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c。 - 安全 - 清除“安全”复选框。 - 安全应对脚本 - 保留“安全应对脚本”复选框为清除状态。 - 提示 - 通过“包设计器”的“高级”选项卡添加的程序集的“程序集名称”值不能为标记,它必须为强名称的程序集。 有关更多信息,请参见 Creating and Using Strong-Named Assemblies(创建和使用强名称的程序集)。 
- 按 Tab 创建另一个安全控件项。 
- 再次单击**“单击此处添加新项”**按钮。 
- 依据下表输入属性的值。 - 属性名 - 值 - 命名空间 - 控件的完全限定命名空间,例如 BdcModelProject1.VisualWebPart1。 - 类型名称 - TextBox1 - 程序集名称 - 程序集强名称,例如:Microsoft.Office.SharePoint.ClientExtensions, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c。 - 安全 - 选中“安全”复选框。 - 安全应对脚本 - 选中“安全应对脚本”复选框。 
- 单击**“确定”**关闭对话框。