如何:将控件标记为安全控件
为了安全起见,SharePoint 对可防止脚本注入的 Web 控件和未防止脚本注入的 Web 控件进行了区分。 不受信任的用户可以访问受保护的控件(或安全控件)。 您可以在 SharePoint 项目项的“安全控制项”属性中将控件标记为安全,或在向包中添加程序集时在**“包设计器”**中将控件标记为安全。 有关更多信息,请参见
web.config 文件设置更改和 Registering a Web Part Assembly as a Safe Control(将 Web 部件程序集注册为安全控件)。
重要事项 |
---|
这些过程用于阐释目的。 只有在确信控件安全时才将控件标记为安全。 |
在“安全控制项”属性中标记安全控件
在“安全控制项”属性中将控件标记为安全或不安全
创建包含可视 Web 部件项目的 SharePoint 解决方案。
向 Web 部件中添加两个控件:一个文本框和一个按钮。 分别保留名称的默认值 TextBox1 和 Button1。
向 Web 部件的**“安全控制项”属性中添加两项。 为此,请单击“属性”窗口中“安全控制项”**旁边的省略号 () 按钮。
将出现**“安全控制项”**对话框。
在**“安全控制项”对话框中,单击“添加”两次,向“成员”**窗格中添加两个安全控件项:一个用于按钮,一个用于文本框。
单击第一个安全控件项,并将其**“安全”属性更改为“False”,将其“类型名称”属性更改为“Button1”,并将其“安全应对脚本”属性更改为“False”**。
此步骤将按钮控件标识为不安全控件。
单击列表中的第二个安全控件项。 将其**“安全”属性保留为“True”,将其“类型名称”属性设置为“TextBox1”,并将其“安全应对脚本”属性设置为“True”**。
文本框控件现在即标记为可安全应对脚本注入的控件。
单击**“确定”**关闭对话框。
在包设计器中标记安全控件
在包设计器中将控件标记为安全或不安全
创建包含可视 Web 部件项目的 SharePoint 解决方案。
向 Web 部件中添加两个控件:一个文本框和一个按钮。 分别保留名称的默认值 TextBox1 和 Button1。
记下控件的命名空间,因为稍后将用到该命名空间。
在**“生成”菜单上单击“生成解决方案”**以生成项目。
创建另一个 SharePoint 解决方案。
在**“解决方案资源管理器”中双击 Package.Package 文件,以打开“包设计器”**。
在**“包设计器”中,单击“高级”**选项卡。
在**“其他程序集”下,单击“添加”按钮,并从列表中选择“添加现有程序集”**。
将出现**“添加现有程序集”**对话框。
在**“添加现有程序集”对话框中,单击“源文件路径”**旁边的省略号 () 按钮。
对于此示例,请将**“部署目标”**选项保留为 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。
安全
选中“安全”复选框。
安全应对脚本
选中“安全应对脚本”复选框。
单击**“确定”**关闭对话框。