2024-09-30 06:23:03 发布
网友
如果我想从我的“mac”上传一个文件到S3,我可以使用
import boto3 s3 = boto3.resource('s3', region_name="us-west-1") s3.meta.client.upload_file('/User/gantao/amz.jpg', 'gantao_created', 'amz.jpg')
但是
有没有办法从EC2实例上传一个文件到S3(不要使用SSH到EC2)?在
简短的回答是“是”
较长的答案是,为了将文件从EC2实例上载到S3,部署的EC2实例必须具有对S3的put_object的正确权限。在
put_object
您可以通过在Python代码中配置boto客户机来实现这一点,也可以创建一个具有该权限的IAM角色并将其分配给EC2实例。在
更安全的方法是分配IAM角色,因为它不要求您在源代码管理中的代码或文件中拥有凭据。在
要创建IAM角色,请执行以下操作:
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-roles-for-amazon-ec2.html
要将IAM角色添加到EC2实例,请执行以下操作:
https://aws.amazon.com/blogs/security/easily-replace-or-attach-an-iam-role-to-an-existing-ec2-instance-by-using-the-ec2-console/
简短的回答是“是”
较长的答案是,为了将文件从EC2实例上载到S3,部署的EC2实例必须具有对S3的
put_object
的正确权限。在您可以通过在Python代码中配置boto客户机来实现这一点,也可以创建一个具有该权限的IAM角色并将其分配给EC2实例。在
更安全的方法是分配IAM角色,因为它不要求您在源代码管理中的代码或文件中拥有凭据。在
要创建IAM角色,请执行以下操作:
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-roles-for-amazon-ec2.html
要将IAM角色添加到EC2实例,请执行以下操作:
https://aws.amazon.com/blogs/security/easily-replace-or-attach-an-iam-role-to-an-existing-ec2-instance-by-using-the-ec2-console/
相关问题 更多 >
编程相关推荐