IAM

여준서·2024년 9월 22일
0

AWS(클라우드)

목록 보기
6/7
post-thumbnail

IAM이란?

IAM은 AWS 리소스에 대한 접근을 안전하게 관리할 수 있는 글로벌 서비스이다. IAM을 통해 사용자를 생성하고 이들을 그룹으로 관리할 수 있다.

루트 계정

AWS 계정을 생성할 때 처음에는 루트 사용자가 생성된다. 하지만 루트 계정은 계정 설정시에만 사용해야하며 , 이후에는 사용하거나 공유해서는 안된다. 대신에 개별 사용자 계정을 생성하여 각 사용자에게 필요한 권한을 부여해야한다.

사용자와 그룹

  • IAM에서 각 사용자 계정은 조직 내의 한 사람을 나타낸다.
  • 사용자는 그룹으로 묶을 수 있다. 예를 들어 개발자는 Developers 그룹에 운영팀은 Operations 그룹에 넣을 수 있다.

  • 그룹을 통해 사용자를 관리하며 그룹에는 사용자만 포함 될 수있다. 사용자가 그룹에 속하지 않는 것도 가능하며 한 사용자가 여러 그룹에 속할 수도 있다.

정책과 권한

  • 사용자나 그룹이 AWS 리소스를 사용할 수 있도록 정책을 부여해야한다. 이 정책은 JSON 문서로 작성되며, 특정 작업에 대한 권한을 정의한다.
  • 예를 들어 , EC2나 CloudWatch 등의 서비스에 대한 접근 권한을 부여할 수 있다.
  • AWS는 최소 권한 원칙을 따른다. 즉 사용자에게 필요한 최소한의 권한만 부여하여 불필요한 서비스 접근이나 보안 문제를 방지한다.

IAM 정책 이해하기

IAM 정책은 AWS 리소스에 대한 사용자와 그룹의 접근 권한을 정의하는 중요한 도구이다. 정책은 JSON 문서 형식으로 작성되며, 사용자나 그룹에 연결하여 그들이 어떤 리소스에 접근 할 수 있는지 어떤 작업을 수행할 수 있는지를 결정한다.

그룹 레벨 정책

  • 그룹에 정책을 연결하면 해당 그룹의 모든 구성원이 동일한 권한을 상속받는다 예를 들어 개발자 그룹에 연결된 정책은 Alice,Bob,Charles에게 동일하게 적용된다.
  • 각 그룹은 서로 다른 정책을 가질 수 있으며, 예를 들어 운영팀의 David와 Edward는 개발자 그룹과 다른 정책을 적용받을 수 있다.

인라인 정책

  • 인라인 정책은 그룹에 속하지 않은 사용자에게만 적용할 수 있는 정책이다. 예를 들어 Fred와 같은 사용자가 그룹에 속하지 않는 경우 인라인 정책을 통해 별도의 권한을 부여할 수 있다.
  • 사용자별로 맞춤형 권한을 적용할 수 있어 유연하게 접근 권한을 관리할 수 있다.

다중 정책 적용

  • 사용자는 여러 그룹에 속할 수 있으며 , 그에 따라 여러 정책을 상속받는다 예를 들어 Charles는 개발자 그룹과 감사팀에 속해 두 그룹의 정책을 모두 적용받는다 David도 운영팀과 감사팀의 정책을 동시에 상속받아 여러 권한을 가진다.

IAM 정책의 구조

IAM 정책은 몇가지 중요한 요소로 구성된다.
1. Effect : 특정 작업을 허용할지 거부할지 결정한다.
2. Principal : 정책이 적용될 사용자,계정,또는 역할을 정의한다.
3. Action : 허용하거나 거부할 API 작업 목록을 정의한다.
4. Resource: 정책이 적용되는 리소스를 지정한다.
5. Condition(선택사항) : 정책이 적용될 조건을 설정한다.

정책 구조는 매우 유연하며, 사용자의 권한을 세밀하게 제어할 수 있다. 이중에서 Effect,principal,Action,Resource는 필수적으로 이해해야하는 중요한 요소이다.

IAM 사용자 및 그룹 보호

AWS에서는 사용자를 안전하게 보호하기 위해 두가지 방어 메커니즘을 제공한다. : 비밀번호 정책다중 인증(MFA)이다.

1. 비밀번호 정책

비밀번호 정책을 통해 계정 보안을 강화 할 수 있다 AWS에서는 비밀번호 정책을 다양하게 설정할 수 있다.

  • 비밀번호 길이 및 복잡성 설정 : 대문자,소문자,숫자,특수문자를 포함하도록 요구할 수 있다.
  • 비밀번호 변경 주기 : 사용자가 일정 주기마다 비밀번호를 변경하도록 강제할 수 있다.
  • 비밀번호 재사용 방지 : 이전에 사용했던 비밀번호로 변경하는 것을 방지한다.

비밀 번호 정책을 통해 계정을 해킹으로부터 보호할 수 있다. 강력한 비밀번호 규칙을 통해 사용자의 보안을 더욱 강화할 수 있다.

2. 다중인증(MFA)

MFA는 비밀번호 외에도 추가적인 보안 장치로 계정을 보호하는 방법이다. 이는 비밀번호보안 장치의 조합을 통해 보안을 강화한다.

  • MFA의 장점 : 비밀번호가 유출되더라도 해커가 물리적 장치에 접근하지 않는 한 계정을 보호할 수 있다.

3. MFA 장치 옵션

AWS에서 제공하는 다양한 MFA 장치 옵션은 다음과 같다.

  • 가상 MFA 장치 : Google 인증기와 같은 앱을 통해 여러 계정에 대해 MFA를 설정할 수 있다.
  • 유니버설 세컨드 팩터 보안키 : 유비키와 같은 물리적 장치를 사용하여 여러 계정을 보호할 수 있다.

  • 하드웨어 보안토큰 : AWS와 파트너사에서 제공하는 하드웨어 기반 MFA 장치이다.

이와 같은 방어 메커니즘을 통해 IAM 사용자와 그룹을 효과적으로 보호할 수 있다.

profile
DevOps 전향을 준비 중인 인프라 지향형 주니어 개발자

0개의 댓글