本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
教學課程:使用 IAM Identity Center 在 中執行 Amazon S3 命令 AWS CLI
本主題說明如何設定 AWS CLI 以使用目前 AWS IAM Identity Center (IAM Identity Center) 來驗證使用者,以擷取憑證以執行 AWS Command Line Interface (AWS CLI) Amazon Simple Storage Service Amazon S3命令。
主題
步驟 1:IAM身分中心的身分驗證
存取 IAM Identity Center 中的SSO身分驗證。選擇下列其中一種方法來存取您的 AWS 憑證。
請遵循 AWS IAM Identity Center 使用者指南的入門說明。此程序會啟用 IAM Identity Center、建立管理使用者,並新增適當的最低權限許可集。
注意
建立套用最低權限許可的許可集。建議您使用預先定義的 PowerUserAccess
許可集,除非您的雇主已為此目的建立了自訂許可集。
結束入口網站並再次登入,以查看您的 AWS 帳戶、程式設計存取詳細資訊,以及 Administrator
或 的選項PowerUserAccess
。使用 PowerUserAccess
時,選取 SDK。
AWS 透過身分提供者的入口網站登入 。如果您的 Cloud Administrator 已授予您 PowerUserAccess
(開發人員) 許可,您會看到您有權存取 AWS 帳戶 的 和許可集。您會在許可集名稱旁,看到使用該許可集手動或以程式設計方式存取帳戶的選項。
若您自訂實作,可能會產生不同體驗,例如不同的許可集名稱。若您不確定要使用哪個許可集,請聯絡您的 IT 團隊尋求協助。
AWS 透過您的 AWS 存取入口網站登入 。如果您的 Cloud Administrator 已授予您 PowerUserAccess
(開發人員) 許可,您會看到您有權存取 AWS 帳戶 的 和許可集。您會在許可集名稱旁,看到使用該許可集手動或以程式設計方式存取帳戶的選項。
請聯絡您的 IT 團隊尋求協助。
步驟 2:收集IAM您的身分中心資訊
取得 的存取權後 AWS,請執行下列動作來收集您的 IAM Identity Center 資訊:
-
在 AWS 存取入口網站中,選取您用於開發的許可集,然後選取存取金鑰連結。
-
在取得憑證對話方塊中,選擇與您的作業系統相符的索引標籤。
-
選擇 IAM Identity Center 憑證方法,以取得執行 所需的
SSO Start URL
和SSO Region
值aws configure sso
。如需要註冊哪些範圍值的資訊,請參閱 IAM Identity Center 使用者指南中的 OAuth2.0 存取範圍。
步驟 3:建立 Amazon S3 儲存貯體
登入 AWS Management Console 並在 開啟 Amazon S3 主控台https://console.aws.amazon.com/s3/
在此教學課程中,請建立幾個儲存貯體,以供稍後在清單中擷取。
步驟 4:安裝 AWS CLI
為您的作業系統安裝 AWS CLI 下列指示。如需詳細資訊,請參閱安裝或更新至最新版本的 AWS CLI。
安裝完成後,您可以開啟偏好的終端機並執行下列命令來驗證安裝。這應該會顯示已安裝的 版本 AWS CLI。
$
aws --version
步驟 6:設定您的 AWS CLI 設定檔
使用下列其中一種方法設定您的設定檔
config
檔案的 sso-session
區段會用來將用來取得SSO存取權杖的組態變數分組,然後可用來取得 AWS 憑證。使用下列的設定:
您可以定義sso-session
區段並將其與設定檔建立關聯。sso_region
和 sso_start_url
設定必須在 sso-session
區段中設定。一般而言, sso_account_id
和 sso_role_name
必須在 profile
區段中設定,以便 SDK可以請求SSO憑證。
下列範例會將 設定為SDK請求SSO憑證,並支援自動權杖重新整理:
[profile
dev
] sso_session =my-sso
sso_account_id =111122223333
sso_role_name =SampleRole
[sso-sessionmy-sso
] sso_region =us-east-1
sso_start_url =https://my-sso-portal.awsapps.com/start
config
檔案的 sso-session
區段會用來將用來取得SSO存取權杖的組態變數分組,然後可用來取得 AWS 憑證。使用下列的設定:
定義 sso-session
區段並將其與設定檔相關聯。sso_region
和 sso_start_url
必須在 sso-session
區段內設定。一般而言, sso_account_id
和 sso_role_name
必須在 profile
區段中設定,以便 SDK可以請求SSO憑證。
下列範例會將 設定為SDK請求SSO憑證,並支援自動權杖重新整理:
[profile
my-dev-profile
] sso_session =my-sso
sso_account_id =111122223333
sso_role_name =SampleRole
[sso-sessionmy-sso
] sso_region =us-east-1
sso_start_url =https://my-sso-portal.awsapps.com/start
sso_registration_scopes =sso:account:access
身分驗證字符會以基於工作階段名稱的檔案名稱快取至 ~/.aws/sso/cache
目錄下的磁碟。
步驟 7:登入 IAM Identity Center
注意
登入程序可能會提示您允許 AWS CLI 存取您的資料。由於 AWS CLI 建置在 SDK for Python 的 之上,因此許可訊息可能包含botocore
名稱的變化。
若要擷取和快取 IAM Identity Center 憑證,請執行下列命令讓 AWS CLI 開啟預設瀏覽器並驗證 IAM Identity Center 登入。
$
aws sso login --profile my-dev-profile
步驟 8:執行 Amazon S3 命令
若要列出您先前建立的儲存貯體,請使用 aws s3 ls
$
aws s3 ls
2018-12-11 17:08:50 my-bucket 2018-12-14 14:55:44 my-bucket2
步驟 9:登出 IAM Identity Center
使用 IAM Identity Center 設定檔完成時,請執行下列命令來刪除快取的憑證。
$
aws sso logout
Successfully signed out of all SSO profiles.
步驟 10:清除資源
完成本教學課程後,請清除您在本教學課程中建立的任何不再需要的資源,包括 Amazon S3 儲存貯體。
故障診斷
如果您使用 遇到問題 AWS CLI,請參閱 對 的錯誤進行故障診斷 AWS CLI 以取得常見的疑難排解步驟。
其他資源
其他資源如下所示。
-
aws configure sso
第 AWS CLI 2 版參考中的 -
aws configure sso-session
第 AWS CLI 2 版參考中的 -
aws sso login
第 AWS CLI 2 版參考中的 -
aws sso logout
第 AWS CLI 2 版參考中的 -
在 Amazon 使用者指南中設定 以 AWS CLI 搭配 使用 CodeCatalyst CodeCatalyst