코딩Puri의 코딩풀이
CLI - AWS 액세스 키, CLI 및 SDK 본문
🔏AWS에 엑세스 하는 3가지 방
1️⃣ 사용해왔던 AWS 콘솔: 사용자 이름 및 비밀번호와 다요소 인증(MFA)으로 보호
2️⃣ 명령줄 인터페이스(CLI): 엑세스 키에 의해 보호됨
3️⃣ AWS 소프트웨어 개발자 키트(SDK): AWS로부터 애플리케이션 코드 내에서 API를 호출하고자 할 때 사용되는 방식
💡 엑세스키 : 자격 증명으로 곧 다운로드 받을 텐데, 터미널에서의 AWS 액세스를 가능하도록 해줌
💡 2️⃣, 3️⃣ 방식 모두 완전히 동일한 액세스 키로 보호됨
🛠️Access Key 생성 방법
- 관리 콘솔을 사용해서 생성할 수 있음
- 사용자들이 자신들의 액세스 키를 집접 관리함
- Access Key ID = 사용자 이름
- Access Key = 비밀번호
💡 자신만의 Access Key를 생성하게 되면 동료와 공유해서는 안됨(다들 각자의 액세스 키를 생성하게 될 것이기 때문)
ex> 임의 액세스 키 ID와 임의 액세스 키가 있다고 했을 때 명령줄 인터페이스에 이들이 적용되면 AWS API에 액세스가 가능함
‼️‼️ 이 강의에서나 직장에서 보안 문제를 피하기 위해서는 절대 엑세스 키를 공유하지 마세요. 여러분만 알고 계셔야 합니다.
⌨️ CLI란?
- 명령줄 인터페이스(명령줄 셸에서 명령어를 사용하여 AWS 서비스들과 상호작용할 수있도록 해주는 도구)
ex> aws s3 cp myfile.txt s3://ccp-mybuckey/myfile.txt => upload: ./myfile.txt to s3://ccp-myvucket/myfile.txt
aws s3 ls s3://ccp-mybucket => 2021-05-14 03:22:52 0 myfile.txt
⁉️CLI를 사용하는 이유
- 모든 명령어가 aws로 시작하기 때문
- AWS 서비스의 공용 API로 직접 액세스가 가능함
- CLI를 통해 리소스를 관리하는 스크립트를 개발해 일부 작업을 자동화 할 수 있음
- CLI는 오픈소스로, GitHub에서 모든 소스 코드를 찾을 수 있고 AWS 관리 콘솔 대신 사용되기도 함
- 주변 몇몇 사람들은 관리콘솔을 아예 사용하지 않고 CLI만 사용하기도 함
🗃️ SDK란?
- 소프트웨어 개발 키트
- 특정언어로 된 라이브러리의 집합(프로그래밍 언어에 따라 개별 SDK가 존재함)
- SDK 방식으로도 AWS 서비스나 API에 프로그래밍을 위한 액세스가 가능하도록 해줌
- 터미널 내에서 사용하는 것 ❌
- 코딩을 통해 애플리케이션 내에 심어두어야 하는 것 애플리케이션 내에 자체적으로 AWS SDK가 있는 것
- 다양한 프로그래밍 언어를 지원함
ㄴ 웹 : JavaSCript, Python, PHP, .NET, Ruby, Java, Go, Node.js, C++
ㄴ 모바일 : iOS, 안드로이드
ㄴ loT 장치 : Embedded C, Arduino
🔜 다음 시간에는 CLI를 설정 및 액세스 키에 대한 내용을 연습해볼 것