本文件僅適用於第 1 AWS CLI 版。如需與版本 2 的相關文件 AWS CLI,請參閱第 2 版使用者指南。
本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
控制命令輸出 AWS CLI
本節介紹控制 AWS Command Line Interface (AWS CLI) 輸出的不同方法。在終端機中自訂 AWS CLI 輸出可以提高可讀性、簡化指令碼自動化,並讓您更輕鬆地瀏覽大型資料集。
AWS CLI 支援多種輸出格式 json,包括textyaml和table。有些服務具有服務器端分頁的數據,。
最後, AWS CLI 具有伺服器端和用戶端篩選,您可以個別或一起使用來篩選 AWS CLI 輸出。
靈敏輸出
的某些操作可 AWS CLI 能會返回可能被認為是敏感的信息,包括來自環境變量的信息。在某些情況下,這些資訊的暴露可能代表安全風險;例如,這些資訊可能包含在持續整合和持續部署 (CI/CD) 記錄中。因此,當您將此類輸出包含為日誌的一部分時,請務必查看,並在不需要時抑制輸出。
如需有關保護機密資料的其他資訊,請參閱AWS CLI 中的資料保護。
請考慮下列最佳作法:
-
考慮以程式設計方式從密碼存放區擷取您的密碼,例如 AWS Secrets Manager.
-
檢閱組建記錄的內容,以確保它們不包含敏感資訊。考慮管道
/dev/null
或捕獲輸出作為 bash 或 PowerShell 變量等方法來抑制命令輸出。以下是將輸出重定向(但不是錯誤)的 bash 示例:
/dev/null
$
aws s3 ls > /dev/null
有關抑制終端機輸出的詳細信息,請參閱您使用的終端機的用戶文檔。
-
考慮對日誌的訪問,並根據您的使用案例適當地設置訪問範圍。
服務器端與客戶端輸出選
AWS CLI 具有伺服器端和用戶端篩選,您可以個別或一起使用來篩選 AWS CLI
輸出。系統會先處理伺服器端篩選,並傳回用戶端篩選的輸出。服務 API 支援伺服器端篩選。用戶端使用--query
參數支援用 AWS CLI 戶端篩選。
伺服器端輸出選項是 AWS 服務 API 直接支援的功能。任何篩選或分頁輸出的資料都不會傳送至用戶端,因此可加快 HTTP 回應時間並改善較大資料集的頻寬。
用戶端輸出選項是由 AWS CLI. 所有數據都被發送到客戶端,然後過 AWS CLI 濾器或頁面顯示的內容。用戶端作業不會節省較大資料集的速度或頻寬。
當伺服器端和用戶端選項一起使用時,伺服器端作業會先完成,然後傳送至用戶端進行用戶端作業。這使用了服務器端選項的潛在速度和帶寬節省,同時使用其他 AWS CLI 功能來獲得所需的輸出。