역할 생성 및 정책 연결(콘솔) - AWS Identity and Access Management

역할 생성 및 정책 연결(콘솔)

앞서 나열한 여러 가지 정책은 AWS 서비스에서 사용자 대신 작업을 수행할 수 있도록 해주는 역할을 이용해 해당 서비스를 구성할 수 있는 권한을 부여합니다. 직무 정책은 반드시 사용해야 하는 정확한 역할 이름을 정의하거나, 사용할 수 있는 이름의 앞부분을 지정하는 접두사만이라도 포함합니다. 이러한 역할 중 하나를 생성하려면 다음 절차의 단계를 따릅니다.

AWS 서비스에 대한 역할 생성(IAM 콘솔)
  1. AWS Management Console에 로그인하고 https://console.aws.amazon.com/iam/에서 IAM 콘솔을 엽니다.

  2. IAM 콘솔의 탐색 창에서 역할을 선택하고 역할 생성을 선택합니다.

  3. 신뢰할 수 있는 엔터티 유형AWS 서비스를 선택합니다.

  4. 서비스 또는 사용 사례의 경우 서비스를 선택한 다음, 사용 사례를 선택합니다. 사용 사례는 서비스에 필요한 신뢰 정책을 포함하기 위해 서비스에서 정합니다.

  5. 다음을 선택합니다.

  6. 권한 정책의 경우 선택한 사용 사례에 따라 옵션이 달라집니다.

    • 서비스가 역할에 대한 권한을 정의하는 경우 권한 정책을 선택할 수 없습니다.

    • 제한된 권한 정책 세트에서 선택합니다.

    • 모든 권한 정책에서 선택합니다.

    • 권한 정책 없음을 선택하고 역할이 생성된 후 정책을 생성한 다음, 정책을 역할에 연결합니다.

  7. (선택 사항) 권한 경계를 선택합니다. 이는 서비스 역할에서 가능한 고급 기능이며 서비스 링크된 역할은 아닙니다.

    1. 권한 경계 설정 섹션을 열고 최대 역할 권한을 관리하기 위한 권한 경계 사용을 선택합니다.

      IAM은 계정의 AWS 관리형 또는 고객 관리형 정책 목록을 포함합니다.

    2. 정책을 선택하여 권한 경계를 사용하세요.

  8. 다음을 선택합니다.

  9. 역할 이름의 경우 옵션은 서비스에 따라 달라집니다.

    • 서비스에서 역할 이름을 정의하는 경우 이 역할 이름을 편집할 수 없습니다.

    • 서비스에서 역할 이름에 대한 접두사를 정의하는 경우 사용자가 선택적 접미사를 입력할 수 있습니다.

    • 서비스에서 역할 이름을 정의하지 않는 경우 역할 이름을 지정할 수 있습니다.

      중요

      역할 이름을 지정할 때는 다음 사항에 유의하세요.

      • 역할 이름은 AWS 계정 내에서 고유해야 하지만 대소문자를 구분하지는 않습니다.

        예를 들어, 이름이 PRODROLEprodrole, 두 가지로 지정된 역할을 만들지 마십시오. 역할 이름이 정책 또는 ARN의 일부로 사용되는 경우 역할 이름은 대소문자를 구분합니다. 그러나 로그인 프로세스와 같이 콘솔에서 역할 이름이 고객에게 표시되는 경우에는 역할 이름이 대소문자를 구분하지 않습니다.

      • 다른 엔터티가 역할을 참조할 수 있기 때문에 역할이 생성된 후에는 역할 이름을 편집할 수 없습니다.

  10. (선택 사항)설명에 역할에 대한 설명을 입력합니다.

  11. (선택 사항) 역할에 대한 사용 사례와 권한을 편집하려면 1단계: 신뢰할 수 있는 엔터티 선택 또는 2단계: 권한 추가 섹션에서 편집을 선택합니다.

  12. (선택 사항) 태그를 키-값 페어로 연결하여 역할을 식별, 구성 또는 검색합니다. IAM에서 태그 사용에 대한 자세한 내용을 알아보려면 IAM 사용 설명서의 IAM 리소스에 태그 지정을 참조하세요.

  13. 역할을 검토한 다음 역할 생성을 선택합니다.

예시 1: 사용자를 데이터베이스 관리자로 구성(콘솔)

이 예시는 IAM 사용자 Alice를 데이터베이스 관리자로 구성하는 데 필요한 단계를 보여줍니다. 이 섹션에서 테이블 첫 번째 행의 정보를 사용하여 사용자가 Amazon RDS 모니터링을 지원하도록 허용합니다. Amazon 데이터베이스 서비스를 관리할 수 있도록 DatabaseAdministrator 정책을 Alice의 IAM 사용자에게 연결합니다. 이 정책을 통해 Alice는 rds-monitoring-role(이)라는 역할을 Amazon RDS 서비스로 전달할 수도 있습니다. 그러면 사용자를 대신해 Amazon RDS 데이터베이스를 모니터링합니다.

  1. AWS Management Console에 로그인하고 https://console.aws.amazon.com/iam/에서 IAM 콘솔을 엽니다.

  2. 정책을 선택한 후 검색 상자에 database를 입력하고 Enter를 누릅니다.

  3. DatabaseAdministrator 정책의 라디오 버튼과 작업, 연결을 차례로 선택합니다.

  4. 엔터티 목록에서 Alice를 선택한 후 정책 연결을 선택합니다. 이제 Alice가 AWS 데이터베이스를 관리할 수 있습니다. 하지만 Alice가 이 데이터베이스를 모니터링하도록 허용하려면 서비스 역할을 구성해야 합니다.

  5. IAM 콘솔의 탐색 창에서 역할을 선택하고 역할 생성을 선택합니다.

  6. AWS 서비스 역할 유형을 선택한 후 Amazon RDS를 선택합니다.

  7. 확장 모니터링을 위한 Amazon RDS 역할(Amazon RDS Role for Enhanced Monitoring) 사용 사례를 선택합니다.

  8. Amazon RDS는 역할에 대한 권한을 정의합니다. 계속하려면 Next: Review(다음: 검토)를 선택합니다.

  9. 역할 이름은 현재 Alice가 적용하는 DatabaseAdministrator 정책에 지정된 것 중 하나여야 합니다. 그중 하나는 rds-monitoring-role입니다. Role name(역할 이름)에 이를 입력합니다.

  10. (선택 사항) Role description(역할 설명)에 새 역할에 대한 설명을 입력합니다.

  11. 세부 정보를 검토한 후 역할 생성을 선택합니다.

  12. 이제 Alice는 Amazon RDS 콘솔의 모니터링 섹션에서 RDS 확장 모니터링(RDS Enhanced Monitoring)을 활성화할 수 있습니다. 예를 들어, DB 인스턴스 또는 읽기 전용 복제본을 생성하거나 DB 인스턴스를 수정할 때 이렇게 합니다. Enable Enhanced Monitoring(확장 모니터링 활성화)를 Yes(예)로 설정하면서 Monitoring Role(역할 모니터링) 상자에 생성한 역할 이름(rds-monitoring-role)을 입력해야 합니다.

예시 2: 사용자를 네트워크 관리자로 구성(콘솔)

이 예시는 IAM 사용자 Jorge를 네트워크 관리자로 구성하는 데 필요한 단계를 보여줍니다. 해당 섹션에서 테이블의 정보를 사용하여 Jorge가 VPC로 들어오고 나가는 IP 트래픽을 모니터링하도록 허용합니다. 또한 Jorge가 CloudWatch Logs의 로그에서 해당 정보를 캡처하도록 허용합니다. AWS 네트워크 리소스를 구성할 수 있도록 Jorge의 IAM 사용자에게 NetworkAdministrator 정책을 연결합니다. 또한 이 정책 덕분에 흐름 로그를 작성할 때 Jorge가 flow-logs*(으)로 시작하는 역할을 Amazon EC2로 전달하도록 설정할 수 있습니다. 예시 1과 달리 이 시나리오에서는 사전 정의된 서비스 역할 유형이 없기 때문에 몇 가지 단계를 다르게 수행해야 합니다.

  1. AWS Management Console에 로그인하고 https://console.aws.amazon.com/iam/에서 IAM 콘솔을 엽니다.

  2. 탐색 창에서 정책을 선택한 후 검색 상자에 network를 입력합니다.

  3. NetworkAdministrator 정책 옆의 라디오 버튼에 이어 작업, 연결을 차례로 선택합니다.

  4. 사용자 목록에서 Jorge 옆에 있는 확인란을 선택한 후 정책 연결(Attach policy)을 선택합니다. 이제 Jorge가 AWS 네트워크 리소스를 관리할 수 있습니다. 하지만 VPC 내 트래픽을 모니터링하도록 하려면 서비스 역할을 구성해야 합니다.

  5. 생성해야 하는 서비스 역할에 사전 정의된 관리형 정책이 없기 때문에 먼저 이 정책부터 생성해야 합니다. 탐색 창에서 정책을 선택한 다음 정책 생성을 선택합니다.

  6. 정책 편집기 섹션에서 JSON 옵션을 선택하고, 다음의 JSON 정책 문서에서 텍스트를 복사합니다. 이 텍스트를 JSON 텍스트 상자에 붙여 넣습니다.

    { "Version": "2012-10-17", "Statement": [ { "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents", "logs:DescribeLogGroups", "logs:DescribeLogStreams" ], "Effect": "Allow", "Resource": "*" } ] }
  7. 정책 검증 동안 생성된 모든 보안 경고, 오류 또는 일반 경고를 해결하고 다음을 선택합니다.

    참고

    언제든지 시각적 편집기 옵션과 JSON 편집기 옵션을 서로 전환할 수 있습니다. 그러나 변경을 적용하거나 시각적 편집기에서 다음을 선택한 경우 IAM은 시각적 편집기에 최적화되도록 정책을 재구성할 수 있습니다. 자세한 내용은 정책 재구성 단원을 참조하십시오.

  8. 검토 및 생성 페이지에서 정책 이름에 vpc-flow-logs-policy-for-service-role을 입력합니다. 이 정책에 정의된 권한을 검토하여 정책이 부여한 권한을 확인한 다음 정책 생성을 선택하여 작업을 저장합니다.

    새로운 정책이 관리형 정책 목록에 나타나며 연결 준비가 완료됩니다.

  9. IAM 콘솔의 탐색 창에서 역할을 선택하고 역할 생성을 선택합니다.

  10. AWS 서비스 역할 유형을 선택한 후 Amazon EC2를 선택합니다.

  11. Amazon EC2 사용 사례를 선택합니다.

  12. 권한 정책 연결 페이지에서 앞서 생성한 정책을 선택하고 vpc-flow-logs-policy-for-service-roleNext: Review(다음: 검토)를 차례로 선택합니다.

  13. 역할 이름은 현재 Jorge가 적용하는 NetworkAdministrator 정책에서 허용한 것이어야 합니다. flow-logs-로 시작하는 이름은 무엇이든 허용됩니다. 이 예시에서는 Role name(역할 이름)에 flow-logs-for-jorge을(를) 입력합니다.

  14. (선택 사항) Role description(역할 설명)에 새 역할에 대한 설명을 입력합니다.

  15. 세부 정보를 검토한 후 역할 생성을 선택합니다.

  16. 이제 이 시나리오에 필요한 신뢰 정책을 구성할 수 있습니다. Roles(역할) 페이지에서 flow-logs-for-jorge 역할(확인란이 아닌 이름)을 선택합니다. 새 역할의 세부 정보 페이지에서 신뢰 관계 탭을 선택한 다음 Edit trust relationship(신뢰 관계 편집)을 선택합니다.

  17. "Service" 라인을 다음과 같이 변경해 ec2.amazonaws.com의 항목을 교체합니다.

    "Service": "vpc-flow-logs.amazonaws.com"
  18. 이제 Jorge가 Amazon EC2 콘솔에서 VPC나 서브넷의 흐름 로그를 생성할 수 있습니다. 흐름 로그를 생성할 때 flow-logs-for-jorge 역할을 지정합니다. 이 역할에는 로그를 생성하고 데이터를 쓸 수 있는 권한이 있습니다.