我有一个移动应用程序,允许用户下载视频并从本地播放它,或者他们可以播放而无需通过流媒体下载。我们对两个来源都使用Amazon S3
。由于我们不希望这些视频从外部下载以保护它们,因此我们应用了存储桶策略。
{
"Version": "2013-10-17",
"Id": "Policy15026037299",
"Statement": [
{
"Sid": "Stmt1502668836564",
"Effect": "Allow",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::bucketname/*",
"Condition": {
"StringLike": {
"aws:UserAgent": "*SomeKeyText*"
}
}
}
]
}
使用上述政策,我们可以阻止用户进行外部下载,他们可以通过我们的应用成功下载视频。但是,视频流不适用于此策略。
当我们删除该政策并将视频文件公开时,流式传输就可以了,但随后它就可以对外开放,这是我们不希望的。我想知道如何处理此问题。