用户可以通过各种方式在 Blackboard Learn 中输入 HTML。例如,用户可以使用博客和讨论区中的内容编辑器,以及通过 HTML 文件上传来输入 HTML。过去,由于用户可能会输入潜在危险的标记(如脚本标记),因此引入了安全威胁。此类标记可用于在 Blackboard Learn 中执行恶意脚本,致使其他用户受到攻击。这称为跨脚本执行,使用户可以控制其他用户浏览器。
安全 HTML 筛选器使您可以更好地控制学生可以输入的 HTML 类型,使用户提供的 HTML 可以更安全地在 Blackboard Learn 中使用。该功能将早期的 HTML 杀毒软件替换为开放 Web 应用程序安全性项目的 AntiSamy API 提供的开源安全库。该新的 API 可确保用户提供的 HTML 符合应用程序的规则。
Blackboard Learn 为管理员提供包含安全 HTML 规则的 default-policy.xml 文件。管理员可以基于其组织的风险容限级别,在 default-policy.xml 文件中定义其 Blackboard Learn 实例上允许的 HTML 标记和属性。
如果您自定义了 default-policy.xml 文件,并且 Blackboard 对文件的默认版本进行了更改,则会重命名以前的 Blackboard 默认文件以指示它是旧版本。Blackboard 提供的新 default-policy.xml 文件将添加到您的策略中,并设置为您的活动策略。您将通过电子邮件收到文件更新的通知。您自己的自定义策略会保持不变。
安全 HTML 仅适用于没有“添加/修改信任内容”权限(也称为“使用脚本添加/编辑信任内容”权限)的用户。具有此权限的用户可以输入无限制/受信任的 HTML,这意味着他们不会绑定到安全 HTML 规则。默认情况下,Blackboard Learn 将此权限授予管理员、课程内容构建者、评分者、教师和助教。默认情况下,所有其他角色都不具有此权限,但可以根据需要添加此权限。
在管理员面板上,选择安全菜单中的安全 HTML 筛选器。
Blackboard Learn SaaS 环境不能配置为通过 HTML 筛选器筛选自定义文件类型。
自定义策略
管理员可以根据其组织的需求,在 default-policy.xml 文件中自定义容许的 HTML 标记和属性的列表。但是,这应该是一个很少见的事件。仅当管理员具有策略不支持的特定使用案例时,才需要自定义该策略。
- 在管理员面板上,选择安全菜单中的安全 HTML 筛选器。
- 选择内容编辑器的安全 HTML 筛选器以访问策略列表。
- 访问 default-policy.xml 的菜单,然后选择下载。将该文件保存至您的计算机。
- 对 SafeHTML 规则进行任何更改以满足组织的需求。
- 编辑完文件后,键入新名称。
- 返回到内容编辑器的安全 HTML 筛选器页面以访问策略列表。
- 选择上传以访问上传安全 HTML 策略页面,然后浏览查找您的新文件。
- 键入注释(可选)。
- 选择提交以上传新文件。
- 新文件将显示在策略文件列表中。从文件的菜单中,选择激活将其设为 Blackboard Learn 环境中的活动策略文件。
测试策略
管理员可以测试策略以确保其可正常运行并生成所需的结果。
- 在管理员面板上,选择安全菜单中的安全 HTML 筛选器。
- 选择内容编辑器的安全 HTML 筛选器。
- 从策略文件的菜单中,选择测试策略。
- 在输入要测试的代码 (HTML、JS)字段中,输入要测试的任意 HTML 代码。
- 选择测试。
根据输入的 HTML 代码,系统会提供测试结果,如下所示:
- 将显示一个新的净化的输出字段,其中会显示您输入的 HTML 的系统净化输出。
- 如果策略不允许您输入的脚本标记,则系统会显示一条消息,告诉您出于安全原因不允许使用您的脚本。
- 标记可能包含无法处理的属性。在这种情况下,将显示一条消息,指明包含无法处理且已被筛选掉的属性的标记。
HTML 正文标记和属性
default-policy.xml 文件允许以下正文标记和属性。
分组元素
HTML 正文标记和属性标记 | 属性 |
---|
div | id、class、lang、dir、title、style、align |
span | id、class、dir、title、style、align、xml:lang |
标题
标题标记 | 属性 |
---|
h1 | id、class、lang、dir、title、style、align |
下半年 | id、class、lang、dir、title、style、align |
h3 | id、class、lang、dir、title、style、align |
h4 | id、class、lang、dir、title、style、align |
h5 | id、class、lang、dir、title、style、align |
h6 | id、class、lang、dir、title、style、align |
地址
地址标记 | 属性 |
---|
地址 | id、class、lang、dir、title、style |
字形以及 HR 标记和属性
default-policy.xml 文件随附有以下字形以及 HR 标记和属性。
字形
字形以及 HR 标记和属性标记 | 属性 |
---|
tt | id、class、lang、dir、title、style |
i | id、class、lang、dir、title、style |
b | id、class、lang、dir、title、style |
big | id、class、lang、dir、title、style |
small | id、class、lang、dir、title、style |
HR
HR标记 | 属性 |
---|
hr | id、class、lang、dir、title、style |
列表标记和属性
default-policy.xml 文件随附有以下列表标记和属性。
无序列表、有序列表和列表项目
列表标记和属性标记 | 属性 |
---|
ul | id、class、lang、dir、title、style |
li | id、class、lang、dir、title、style |
ol | id、class、lang、dir、title、style |
定义列表
定义列表标记 | 属性 |
---|
dl | id、class、lang、dir、title、style |
dt | id、class、lang、dir、title、style |
dd | id、class、lang、dir、title、style |
dir | id、class、dir、title、style、compact |
menu | id、class、lang、dir、title、style、compact |
链接标记和属性
default-policy.xml 文件随附有以下链接标记和属性。
链接
文本标记和属性
default-policy.xml 文件随附有以下文本标记和属性。
短语元素
文本标记和属性标记 | 属性 |
---|
em | id、class、lang、dir、title、style |
strong | id、class、lang、dir、title、style |
cite | id、class、lang、dir、title、style |
dfn | id、class、lang、dir、title、style |
code | id、class、lang、dir、title、style |
samp | id、class、lang、dir、title、style |
kbd | id、class、lang、dir、title、style |
var | id、class、lang、dir、title、style |
abbr | id、class、lang、dir、title、style |
acronym | id、class、lang、dir、title、style |
引用
引用标记和属性标记 | 属性 |
---|
blockquote | id、class、lang、dir、title、style |
q | id、class、lang、dir、title、style |
下标和上标
下标和上标标记和属性标记 | 属性 |
---|
sub | id、class、lang、dir、title、style |
sup | id、class、lang、dir、title、style |
行和段落
行和段落标记和属性标记 | 属性 |
---|
p | Id、class、lang、dir、title、style、align |
br | id、class、title、style、clear |
pre | id、class、lang、dir、title、style |
标记文档更改
标记文档更改标记和属性标记 | 属性 |
---|
ins | id、class、lang、dir、title、style |
del | id、class、lang、dir、title、style |
表格标记和属性
default-policy.xml 文件随附有以下表格标记和属性。
表格
表格标记和属性标记 | 属性 |
---|
table | id、border、cellpadding、cellspacing、align、class、frame、summary、lang、dir、style、bgcolor、width、rules、dir |
表格标题
表格标题标记和属性标记 | 属性 |
---|
caption | id、lang、dir、title、style |
行组
行组标记和属性标记 | 属性 |
---|
thread | cellhalign、cellvalign、id、class、lang、dir、title、style、align、char、charoff、valign |
tfoot | cellhalign、cellvalign、id、class、lang、dir、title、style、align、char、charoff、valign |
tbody | id、class、lang、dir、title、style、align、char、charoff、valign |
pre | id、class、lang、dir、title、style |
列组
列组标记和属性标记 | 属性 |
---|
colgroup | span、width、id、class、lang、dir、title、style、align、char、charoff、valign |
col | span、width、id、class、lang、dir、title、style、align、char、charoff、valign |
表格行
表格行标记和属性标记 | 属性 |
---|
tr | id、class、lang、dir、title、style、bgcolor、align、char、charoff、valign |
表格单元格
表格单元格标记和属性标记 | 属性 |
---|
th | abbr、axis、headers、scope、rowspan、colspan、id、class、lang、dir、title、style、bgcolor、align、char、charoff、valign |
td | abbr、axis、headers、scope、rowspan、colspan、id、class、lang、dir、title、style、bgcolor、align、char、charoff、valign |
嵌入式媒体和聚合标记和属性
default-policy.xml 文件随附有以下嵌入式媒体和聚合标记和属性。
合作伙伴
嵌入式媒体和聚合标记和属性标记 | 属性 |
---|
script | type、charset、src |
iframe | src=(以 SafeHTML 限制的 Youtube 源或 Building Block 开头)、longdesc、name、width、height、id、class、title、style、align、frameborder、marginwidth、marginheight、scrolling |
图像
图像标记和属性标记 | 属性 |
---|
img | src、alt、longdesc、name、id、class、lang、dir、title、style、align、width、height、border、hspace、vspace |
YouTube
YouTube 标记和属性标记 | 属性 |
---|
object | classid、codebase、codetype、data、type、archive、declare、standby、id、class、lang、dir、title、style、tabindex、ame、align、width、height、border、hspace、vspace |
param | name=movie, value=(以 SafeHTML 限制的 Youtube 源或 Building Block 开头)、name = allowscriptaccess, value=true、name=allowfullscreen, value=true|false |
嵌入 | src=(以 SafeHTML 限制的 Youtube 源)、allowScriptAccess=never、allowNetworking=internal、type=application/x-shockwave-flash、id、width、height、type、quality、scale、salign、wmode、base、name、align、hspace、vspace、bgcolor、sound、progress、swstretchstyle、swstretchalign、swstretchvalign |
iframe | src=(以 http(s)://www.youtube.com 或 http(s)://www.youtube-nocookie.com/ 开头)、longdesc、name、width、height、id、class、title、style、align、frameborder、marginwidth、marginheight、scrolling |
Slideshare
Slideshare 标记和属性标记 | 属性 |
---|
object | classid、codebase、codetype、data、type、archive、declare、standby、id、class、lang、dir、title、style、tabindex、ame、align、width、height、border、hspace、vspace |
param | name=movie, value=(以 http(s)://static.slidesharecdn.com/ 或 http(s)://www.slideshare.net/ 开头)、name=allowscriptaccess、value=never、name=allowfullscreen、value=true|false、name=wmode、value=transparent |
嵌入 | src=(以 http(s)://static.slidesharecdn.com/ 或 http(s)://www.slideshare.net/ 开头)、allowScriptAccess=never、allowNetworking=never、wmode=transparent、type=application/x-shockwave-flash、id、width、height、type、quality、scale、salign、base、name、align、hspace、vspace、bgcolor、sound、progress、autostart=false、swstretchstyle、swstretchalign、swstretchvalign |
iframe | Src=(以=(以 http(s)://static.slidesharecdn.com/ 或 http(s)://www.slideshare.net/ 开头)、height、width、frameborder、marginwidth、marginheight、scrolling |
其他媒体类型(包括 Flash)
其他媒体类型标记和属性标记 | 属性 | 评论 |
---|
object | codebase、name、align、hspace、vspace、bgcolor、classid | |
param | name = allowScriptAccess、value = never、name = allowNetworking、value = none、name = autostart、value = false | 可以包含其他参数,但对于 youtube 和 slideshare 以外的其他来源,必须始终显示这些参数。 |
嵌入 | allowScriptAccess=never, allowNetworking=none, autostart=false, allowFullScreen=false, type=... see comment, wmode=window/transparent/opaque, id, class, dir, flashvars, height, lang, name, src, style, title, width, xml:lang | allowScriptAccess=never 必须始终为 Flash 提供 allowNetworking=none 必须始终为 Flash 提供 allowFullScreen=false 必须始终为 Flash 提供 “type”目前不限制为我们支持的媒体类型,但默认策略最终将限制为: - video/quicktime
- application/x-shockwave-flash
- application/x-director
- application/x-mplayer2
|
iframe | src=限制的列表、longdesc、name、width、height、id、class、title、style、align、frameborder、marginwidth、marginheight、scrolling | |