2017-05-04 89 views
0

據我所知,用s3fs掛載s3存儲桶的唯一方法是使用支持各種文件位置的文件中指定的accesskey:secretkeys3fs與aws ec2實例和使用實例配置文件

但是,如果我是一個ec2實例,在本地s3帳戶中,使用實例配置文件,我只想使用可用的實例配置文件憑據。有誰知道使用實例配置文件的方式,而不必在本地文件系統中設置憑據?如果沒有,是否有人正在努力支持此功能?

感謝

回答

0

如果你知道你可以使用AWS CLI獲得安全credentails的IAM角色的名稱。

以下命令檢索名爲s3access的IAM角色的安全憑證。

複製 curl http://169.254.169.254/latest/meta-data/iam/security-credentials/s3access 以下是輸出示例。

{ 
    "Code" : "Success", 
    "LastUpdated" : "2012-04-26T16:39:16Z", 
    "Type" : "AWS-HMAC", 
    "AccessKeyId" : "AKIAIOSFODNN7EXAMPLE", 
    "SecretAccessKey" : "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY", 
    "Token" : "token", 
    "Expiration" : "2012-04-27T22:39:16Z" 
} 

http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-roles-for-amazon-ec2.html#instance-metadata-security-credentials

0

當/如果你有一個連接到EC2實例的角色,然後你可以添加在/etc/fstab以下條目自動掛載S3桶上的引導:

s3fs#bucketname /PATHtoLocalMount fuse _netdev,iam_role=nameofiamrolenoquotes 

當然,您必須安裝s3fs(正如您根據問題所做的那樣),並且角色策略必須授予對S3存儲區的適當(可能是全部)訪問權限。這很好,因爲沒有IAM證書需要存儲在實例上(=更安全,因爲角色訪問不能在連接到角色的實例之外使用,而IAM證書可以)。