에서 명령 출력 제어 AWS CLI - AWS Command Line Interface

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

에서 명령 출력 제어 AWS CLI

이 단원에서는 AWS Command Line Interface (AWS CLI)의 출력을 제어하는 다양한 방법에 대해 설명합니다. 터미널에서 AWS CLI 출력을 사용자 지정하면 가독성을 높이고, 스크립팅 자동화를 간소화하고, 더 큰 데이터 세트를 통해 더 쉽게 탐색할 수 있습니다.

, , 및 를 포함한 여러 출력 형식을 AWS CLI 지원합니다textyamltable. json 일부 서비스에는 데이터에 대한 서버 측 페이지 매김 있으며 는 추가 페이지 매김 옵션 을 위한 자체 클라이언트 측 기능을 AWS CLI 제공합니다.

마지막으로 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 기능을 사용하여 원하는 결과를 얻을 수 있습니다.