AWS Identity and Access Management

강재민·2022년 12월 2일
0

AWS 서비스 정복하기

목록 보기
13/16

IAM이란 무엇입니까?

AWS Identity and Access Management(IAM)은 AWS 리소스에 대한 액세스를 안전하게 제어할 수 있는 웹 서비스입니다. IAM을 사용하여 리소스를 사용하도록 인증(로그인)권한 부여(권한 있음)된 대상을 제어합니다.

AWS 계정을 생성할 때는 해당 계정의 모든 AWS 서비스 및 리소스에 대한 완전한 액세스 권한이 있는 단일 로그인 ID로 시작합니다. 이 자격 증명은 AWS 계정 루트 사용자라고 하며, 계정을 생성할 때 사용한 이메일 주소와 암호로 로그인하여 액세스합니다. 일상적인 작업에 루트 사용자를 사용하지 않을 것을 강력히 권장합니다. 루트 사용자 보안 인증 정보를 보호하고 루트 사용자만 수행할 수 있는 작업을 수행하는 데 사용합니다.


IAM 기능

AWS 계정에 대한 공유 액세스

암호나 액세스 키를 공유하지 않고도 AWS 계정의 리소스를 관리하고 사용할 수 있는 권한을 다른 사람에게 부여할 수 있습니다.

세분화된 권한

리소스에 따라 여러 사람에게 다양한 권한을 부여할 수 있습니다. 예를 들어 일부 사용자에게 Amazon Elastic Compute Cloud(Amazon EC2), Amazon Simple Storage Service(Amazon S3), Amazon DynamoDB, Amazon Redshift 및 기타 AWS 서비스에 대한 완전한 액세스를 허용할 수 있습니다. 다른 사용자에게는 일부 S3 버킷에 대한 읽기 전용 권한, 일부 EC2 인스턴스를 관리할 수 있는 권한 또는 결제 정보에만 액세스할 수 있는 권한을 허용할 수 있습니다.

Amazon EC2에서 실행되는 애플리케이션을 위한 보안 AWS 리소스 액세스

EC2 인스턴스에서 실행되는 애플리케이션의 경우 IAM 기능을 사용하여 자격 증명을 안전하게 제공할 수 있습니다. 이러한 자격 증명은 애플리케이션에 다른 AWS 리소스에 액세스할 수 있는 권한을 제공합니다. 예를 들면 이러한 리소스에는 S3 버킷DynamoDB 테이블이 있습니다.

멀티 팩터 인증(MFA)

보안 강화를 위해 계정과 개별 사용자에게 2팩터 인증을 추가할 수 있습니다. MFA를 사용할 경우 계정 소유자나 사용자가 계정 작업을 위해 암호나 액세스 키뿐 아니라 특별히 구성된 디바이스의 코드도 제공해야 합니다. 이미 다른 서비스와 함께 FIDO 보안 키를 사용하고 있으며 FIDO 보안 키의 구성에 AWS가 지원되는 경우.

FIDO 보안키
이런식으로 따로 MFA를 위한 USB를 말함

ID 페더레이션

기업 네트워크나 인터넷 자격 증명 공급자와 같은 다른 곳에 이미 암호가 있는 사용자에게 AWS 계정에 대한 임시 액세스 권한을 부여할 수 있습니다.

즉 안전하다고 확인된 곳에서 인증을 받은 내용을 가지고 접근을 허용하는 기능이라고 보면됨


IAM 작동 방식 이해

사용자를 생성하기 전에 IAM 작동 방식을 이해해야 합니다. IAM은 계정에 대한 인증권한 부여를 제어하는 데 필요한 인프라를 제공합니다. IAM 인프라에는 다음 요소가 포함되어 있습니다.


약관

IAM 리소스

IAM에 저장된 사용자, 그룹, 정책자격 증명 공급자 객체. 다른 AWS 서비스와 마찬가지로 IAM에서 리소스를 추가, 편집제거할 수 있습니다.

IAM 자격 증명

식별 및 그룹화에 사용되는 IAM 리소스 객체입니다. 정책을 IAM 자격 증명에 연결할 수 있습니다. 여기에는 사용자,그룹역할이 포함됩니다.

IAM 엔터티

AWS가 인증에 사용하는 IAM 리소스 객체입니다. 여기에는 IAM 사용자 및 역할이 포함됩니다.

보안 주체

AWS 계정 루트 사용자, IAM 사용자 또는 IAM 역할을 사용하여 로그인하고 AWS에 요청하는 사람 또는 애플리케이션입니다. 보안 주체에는 페더레이션 사용자 및 수임된 역할이 포함됩니다.


AWS용 ABAC란 무엇입니까?

ABAC(속성 기반 액세스 제어)속성을 기반으로 권한을 정의하는 권한 부여 전략입니다. AWS에서는 이러한 속성을 태그라고 합니다. IAM 엔터티(사용자 또는 역할)와 AWS 리소스에 태그를 연결할 수 있습니다. IAM 보안 주체에 대해 단일 ABAC 정책 또는 작은 정책 세트를 생성할 수 있습니다. 이러한 ABAC 정책은 보안 주체의 태그가 리소스 태그와 일치할 때 작업을 허용하도록 설계될 수 있습니다. ABAC는 빠르게 성장하는 환경에서 유용하며 정책 관리가 번거로운 상황에 도움이 됩니다.

예를 들어, access-project 태그 키를 사용하여 세 개의 역할을 생성할 수 있습니다. 첫 번째 역할의 태그 값을 Heart로, 두 번째 역할의 태그 값을 Sun으로, 세 번째 역할의 태그 값을 Lightning으로 설정합니다. 그런 다음 역할과 리소스에 access-project에 대해 동일한 값으로 태그를 지정할 때 액세스를 허용하는 단일 정책을 사용할 수 있습니다. AWS에서 ABAC를 사용하는 방법을 보여 주는 자세한 자습서는 IAM 튜토리얼: 태그를 기반으로 AWS 리소스에 액세스할 수 있는 권한 정의 단원을 참조하십시오. ABAC를 지원하는 서비스에 대해 알아보려면 AWS IAM으로 작업하는 서비스을 참조하세요.

0개의 댓글