上篇豆子回顧了怎麼創建一個基本的用戶組和用戶並綁定MFA設備,這一篇我們來看看如何自定義Roles(角色),該角色綁定的EC2的實例將自動有權限訪問S3 bucket。豆子還做了一個對比試驗來驗證該自定義角色是否工作。
首先點開IAM,Create New Role
取名叫做 EC2-S3
選擇 Amazon EC2,注意說明“允許EC2實例代表來訪問其他服務”
模板選擇 S3 Full Access
自動生成的JSON語句
創建好了
接下里我們來做個試驗。 我已經有了一個Web Server的EC2實例了,我在上面跑了一個wordpress的博客。默認創建的時候我並沒有分配任何角色給他,也就是說他沒有權限訪問aws上的其他服務。
接下來我要創建一個新的實例,並分配自定義的角色給他。
創建一個linux ami 實例
免費的Micro 類型
IAM Role選擇自定義的ec2-s3
創建過程很簡單,就不贅述了。
創建完成之後,用他的公網IP從putty登陸,記得SSH的驗證方式選擇對應的證書
登陸之後,先看看python的版本 (默認已經安裝了)
然後安裝PiP
驗證成功安裝
升級PIP到最新版本
然後通過PIP安裝最新的awscli 命令行工具
安裝之後看看能否訪問S3, 訪問成功,列出了我的S3 bucket
控制檯確認一下,沒錯!
同樣的方式,登陸到我的web server,安裝命令行工具,執行命令,報錯!無權限訪問。
對比試驗成功!
補充一下:EC2不支持在已經運行的實例上更改或者刪除角色,只能在創建之初配置。如果需要更改,只能在其現有的角色上更改權限。