【问题标题】:AudioPlayer.Play directive: How to secure the mp3-file, that will be used by alexaAudioPlayer.Play 指令:如何保护将由 alexa 使用的 mp3 文件
【发布时间】:2019-03-07 20:44:32
【问题描述】:

我正在构建一项技能,当提示时播放一首随机歌曲。

我已经想到,我必须使用AudioPlayer.Play 指令并为audioItem.stream.url 提供一个有效属性(例如https://test.com/api/getmysong,它返回一个流式mp3 文件)。

到目前为止,一切都很好。但是……

出于安全原因,我不希望“公共用户”能够访问 mp3。 alexa 究竟是如何请求文件的?这也是我可以用来验证的特定 Alexa 请求,用户有权请求 mp3 吗?我需要使用任何其他机制来保护我的“mp3”文件吗?

【问题讨论】:

    标签: c# authentication asp.net-core-webapi alexa-skills-kit


    【解决方案1】:

    您的 mp3(文件或流)必须是公开的并通过 https 提供 - Alexa 只使用提供的链接。

    Flash 简报创建者会发现同样的问题 - 因为 Flash 简报音频文件也应该具有公共访问权限。但是-您可以限制对AWS IP range 的音频流的访问-在Amazon Developers Forum 上与topic 相关的Flash 简报中找到。它不会 100% 保护您的音频 - 但仍会使您的文件无法从“互联网的其余部分”访问。

    【讨论】:

      【解决方案2】:

      我还发现亚马逊没有播放我的 mp3,除非它的 URL 是 CA 签名的。它不适用于自签名证书。 另一种方法是将 mp3 文件上传到 Amazon S3 存储,在那里您可以有更多的身份验证机制

      【讨论】:

        猜你喜欢
        • 2010-11-20
        • 2018-06-25
        • 2013-05-11
        • 1970-01-01
        • 2021-05-03
        • 1970-01-01
        • 2018-05-13
        • 1970-01-01
        • 2016-01-21
        相关资源
        最近更新 更多