如何在移动应用程序中创建CloudFront签名URL?

0

【以下的问题经过翻译处理】 我可以在我的移动应用程序中通过Java实现它,但在客户端存储密钥是不安全的。攻击者可能会危害服务器。那么,创建移动应用程序的签名URL的最佳方法是什么?

我想要我的视频列表的签名URL,就像YouTube一样。最佳解决方案是什么?请提供一些代码。

profile picture
专家
已提问 5 个月前31 查看次数
1 回答
0

【以下的回答经过翻译处理】 有几种方法可以实现这个,这里提供其中一种。

要在Python中为Amazon S3对象创建签名URL,您可以使用boto3库和client.generate_presigned_url()方法。此方法允许您创建一个URL,您可以与他人共享,提供临时访问权限以下载或上传存储桶中的对象。

以下是一个示例,说明如何使用generate_presigned_url()创建一个签名URL,允许用户从您的存储桶中下载对象:(如果您将此代码用作Lambda函数或与密码管理器一起使用,则无需嵌入凭据)

import boto3

#用您访问Amazon S3桶的access key和secret key来替换ACCESS_KEY和SECRET_KEY
s3 = boto3.client('s3', aws_access_key_id=ACCESS_KEY, aws_secret_access_key=SECRET_KEY)

#用您的桶的名称和要为其创建签名URL的对象的key替换BUCKET_NAME和OBJECT_KEY
url = s3.generate_presigned_url(
    ClientMethod='get_object',
    Params={
        'Bucket': BUCKET_NAME,
        'Key': OBJECT_KEY
    }
)

print(url)

如果您需要生成大多数语言的代码的帮助,建议使用CodeWhisperer,它处于免费预览状态。

https://aws.amazon.com/codewhisperer/

profile picture
专家
已回答 5 个月前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则