IVS 中的非预期内容和观看者
恶意用户可能会试图在您的平台上重新流式传输非预期内容(例如职业体育比赛)。这种流式传输可以显著增加您的应用程序提供的直播视频数量以及相关成本,而不会增加您的业务价值。除了为您提供停止活动流的控制措施外,Amazon IVS 还提供资源,从一开始就帮助检测和防止此类行为。
正在检测非预期内容
异常检测
您可以检测并提醒流式传输某些非预期内容时出现收视率异常峰值的情况。(一旦检测到峰值,就可以采取停止流并重置流密钥中提到的步骤,如下所述。)
您可使用 Amazon CloudWatch 创建警报,这些警报可以在特定情况下发送提醒;例如,在您的收视率出现峰值时。Amazon IVS 会自动向 Amazon CloudWatch 报告所有通道的并发视图(CCV)指标,因此您只需设置警报即可。要设置基于 CCV 的异常检测警报,请执行以下步骤:
-
通过以下网址打开 Amazon CloudWatch 控制台:https://console.aws.amazon.com/cloudwatch/
。 -
在左侧导航栏中,依次选择警报和所有警报。
-
在页面右上角,选择创建警报。
-
选择选择指标。在指标下,依次选择 IVS 和全部,然后选中 ConcurrentViews 旁边的复选框。
-
在右下角,选择选择指标。随即打开 4 步警报创建向导。
-
向导:在步骤 1:指定指标和条件中,指定以下设置:
-
统计数据 = 最大值
-
时间 = 1 分钟
-
阈值类型 = 异常检测
-
每当并发视图为... = 大于该范围
-
异常检测阈值 = 3
此阈值是初始建议值。您可能需要根据典型的流量模式和需求选择不同的值。使用较小值可以更仔细地观察您的指标;使用较大值可减少警报。
-
选择下一步。
-
-
向导:在步骤 2:配置操作中,选择一个现有 SNS 主题或创建一个新 SNS 主题,把电子邮件发送到您指定的地址。要创建发送电子邮件的主题,请选择创建新主题,提供主题名称,输入您的电子邮件地址,然后选择创建主题。选择下一步继续。
-
向导:在步骤 3:添加名称和描述中,为警报添加名称和可选描述,然后选择下一步。
-
向导:在步骤 4:预览和创建中,验证信息是否正确,然后选择创建警报。
-
您的警报已创建。如果出现提示,请按照相关说明确认 SNS 订阅。
有关更多信息,请参阅:
自定义内容审核
您可以探索自定义内容审核解决方案,通过图像识别检测非预期内容。Amazon IVS 能够自动将 Amazon IVS 实时流录制到 Amazon S3,包括生成用于此类解决方案的缩略图。
考虑以下其他检测和预防技术:
-
使用 Amazon Rekognition 进行 Amazon IVS 审核
的演示展示了如何将 IVS 自动录制到 S3 与 Amazon Rekognition 结合使用来审核实时内容。 -
《使用 AI/ML 内容审核创建更安全的在线社区》
是一篇关于在 IVS 应用程序中使用 Amazon Rekognition 的博客文章。
阻止非预期内容和观看者
停止流并重置流密钥
如果您检测到某个通道被用来流式传输非预期内容,则可以使用 Amazon IVS 控制台关闭该流:
-
打开 Amazon IVS 控制台
。(您还可通过 Amazon 管理控制台 访问 Amazon IVS 控制台。) -
如有必要,从导航栏中,使用选择区域下拉菜单选择托管该通道的区域。
-
选择要停止的流正在运行的通道。
-
在通道页面上,向下导航到实时流部分,然后选择停止流。
即使您停止流,广播者也可以在该通道上重启流。为防止这种情况,请重置流密钥;这样可以防止广播者在未事先获取新的流密钥的情况下重启流。要重置流密钥,请执行以下操作:
-
还在通道页面上时,向下导航到流配置部分,然后选择重置流密钥。
您也可以通过编程方式停止流并重置(删除/创建)流密钥。请参阅 Amazon IVS Low-Latency Streaming API Reference。
根据应用程序发放流密钥的方式,您可能需要采取进一步措施来防止获取任何新的流密钥。
使用私有通道
在很多情况下,只需将播放 URL 嵌入第三方网站中,就能将非预期内容流式传输给平台外的大量受众。防止这种行为的最佳解决方案是 Amazon IVS 私有通道。通过使用私有通道,您可以将播放受众限制为具有有效播放令牌的观众。播放令牌用于验证播放应用程序中的观众,从而妨碍非预期平台的收视率。此外,您还可以启用源强制功能,防止观众在未托管在您的域上的网站上观看直播。您还可以通过启用严格的源强制功能来扩展此保护以覆盖常见的流式处理应用程序。
请注意,您可以获得私有通道和身份验证的保护,而无需强制用户创建和/或登录正式账户。您的播放应用程序只需在幕后匿名获取令牌即可。您仍然可以利用源强制功能。
要了解有关私有通道的更多信息,请参阅:
-
IVS 低延迟流式传输用户指南中的设置私有通道。在该文档中,要了解有关源强制功能的更多信息,请参阅 Generate and Sign IVS Playback Tokens。
使用播放限制策略
如果您不想使用私有通道,您仍然可以利用播放限制策略从一些相同的保护措施中受益。这些策略允许您在公有通道上启用 GeoBlocking 和源强制等功能。您可以使用 IVS 控制台或 API 来创建播放限制策略,然后将该策略的 ARN 附加到您的通道。
控制台说明(播放限制策略)
-
创建播放限制策略
-
打开 Amazon IVS 控制台
。在左侧导航窗格中,选择播放安全性 > 播放限制策略。 -
选择创建策略。
-
(可选)为策略命名。
-
(可选)切换严格源强制(参见以下说明)。
-
指定允许的国家/地区和允许的来源。
-
选择创建策略。
-
-
附加此策略至新的或现有通道
-
创建新通道或编辑现有通道。
-
在(创建通道或更新通道窗口的)限制播放部分中,选择启用播放限制。
-
从播放限制策略下拉列表中,选择您在步骤 1 中创建的策略。
-
选择创建通道(用于新通道)或保存(更新现有通道)。
-
关于严格源强制的说明:这是一个可选设置,可用于加强使用允许源指定的源限制。默认情况下,源限制仅适用于多变体播放列表。如果启用了严格源限制,则服务器将强制要求请求源与所有播放请求(包括多变体播放列表、变体播放列表和片段)的策略匹配。这意味着所有客户端(包括非浏览器客户端)都必须在每个请求中提供有效的源请求标头。使用 setOrigin
方法在 IVS iOS 和 Android 回放器 SDK 中设置标头。除 iOS Safari 之外,它会在 Web 浏览器中自动设置。对于 iOS Safari,您需要将 crossorigin="anonymous"
添加到视频元素,以确保发送源请求标头。示例:<video
crossorigin="anonymous"></video>
。
关于 IP 地址和国家/地区之间映射的说明:IVS 使用第三方数据库来确定用户的位置。IP 地址和国家/地区之间映射的准确性因区域而异。根据最近的测试,整体准确性为 99.8%。如果 IVS 无法确定用户的位置,则 IVS 将提供用户请求的内容。
CLI 说明(播放限制策略)
-
创建播放限制策略。下面是一个例子。对于
allowed-countries
和allowed-origins
字段,将以下示例值替换为实际值,或者根据您的用例删除一个或两个字段。aws ivs create-playback-restriction-policy --name test-playback-restriction-policy --enable-strict-origin-enforcement --allowed-countries "US","JP" --allowed-origins "https://example1.com","https://*.example2.com"
此时将返回新的播放限制策略。有关其字段,请参阅《IVS Low-Latency Streaming API Reference》中的 PlaybackRestrictionPolicy。
-
将新策略附加到通道。对于现有通道,运行
update-channel
并传入上一步中创建的播放限制策略的 ARN:aws ivs update-channel --arn "arn:aws:ivs:us-west-2:123456789012:channel/abcdABCDefgh" --playback-restriction-policy-arn "arn:aws:ivs:us-west-2:123456789012:playback-restriction-policy/abcdABCDefgh"
对于新通道,请在创建通道时添加
--playback-restriction-policy-arn
声明。