Identity 및 Access Management에 대한 AWS Cloud9 - AWS Cloud9

AWS Cloud9 신규 고객은 더 이상 사용할 수 없습니다. 의 기존 고객은 정상적으로 서비스를 계속 이용할 AWS Cloud9 수 있습니다. 자세히 알아보기”

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

Identity 및 Access Management에 대한 AWS Cloud9

AWS Identity and Access Management (IAM) 는 관리자가 AWS 리소스에 대한 액세스를 안전하게 제어할 수 AWS service 있도록 도와줍니다. IAM관리자는 AWS Cloud9 리소스를 사용할 수 있는 인증 (로그인) 및 권한 부여 (권한 보유) 를 받을 수 있는 사용자를 제어합니다. IAM추가 비용 없이 사용할 AWS service 수 있습니다.

고객

AWS Identity and Access Management (IAM) 를 사용하는 방법은 수행하는 작업에 따라 다릅니다. AWS Cloud9

서비스 사용자 - AWS Cloud9 서비스를 사용하여 작업을 수행하는 경우 관리자가 필요한 자격 증명과 권한을 제공합니다. 더 많은 AWS Cloud9 기능을 사용하여 작업을 수행함에 따라 추가 권한이 필요할 수 있습니다. 액세스 권한 관리 방식을 이해하면 적절한 권한을 관리자에게 요청할 수 있습니다. AWS Cloud9의 기능에 액세스할 수 없는 경우 AWS Cloud9 ID 및 액세스 문제 해결을 참조하세요.

서비스 관리자 — 회사에서 AWS Cloud9 리소스를 담당하는 경우 전체 액세스 권한이 있을 수 AWS Cloud9있습니다. 서비스 사용자가 액세스해야 하는 AWS Cloud9 기능과 리소스를 결정하는 것은 여러분의 몫입니다. 그런 다음 IAM 관리자에게 서비스 사용자의 권한을 변경해 달라는 요청을 제출해야 합니다. 이 페이지의 정보를 검토하여 의 기본 개념을 IAM 이해하십시오. 회사에서 w를 사용하는 방법에 대한 자세한 내용은 IAM AWS Cloud9을 참조하십시오의 AWS Cloud9 작동 방식 IAM.

IAM관리자 — IAM 관리자인 경우 액세스 관리를 위한 정책을 작성하는 방법에 대해 자세히 알아보는 것이 좋습니다 AWS Cloud9. 에서 IAM 사용할 수 있는 AWS Cloud9 ID 기반 정책의 예를 보려면 을 참조하십시오. AWS Cloud9에 대한 자격 증명 기반 정책 예시

ID를 통한 인증

인증은 ID 자격 증명을 AWS 사용하여 로그인하는 방법입니다. IAM사용자로서 또는 역할을 위임하여 인증 (로그인 AWS) 을 받아야 합니다. AWS 계정 루트 사용자 IAM

ID 소스를 통해 제공된 자격 증명을 사용하여 페더레이션 ID로 로그인할 수 있습니다. AWS AWS IAM Identity Center (IAMID 센터) 사용자, 회사의 싱글 사인온 인증, Google 또는 Facebook 자격 증명이 페더레이션 ID의 예입니다. 페더레이션 ID로 로그인하는 경우 관리자는 이전에 역할을 사용하여 ID 페더레이션을 설정했습니다. IAM 페더레이션을 AWS 사용하여 액세스하는 경우 간접적으로 역할을 수임하는 것입니다.

사용자 유형에 따라 AWS Management Console 또는 AWS 액세스 포털에 로그인할 수 있습니다. 로그인에 대한 자세한 내용은 AWS 로그인 사용 설명서의 내 로그인 방법을 참조하십시오. AWS AWS 계정

AWS 프로그래밍 방식으로 액세스하는 경우 자격 증명을 사용하여 요청에 암호로 서명할 수 있는 소프트웨어 개발 키트 (SDKCLI) 와 명령줄 인터페이스 () 가 AWS 제공됩니다. AWS 도구를 사용하지 않는 경우 요청에 직접 서명해야 합니다. 권장 방법을 사용하여 직접 요청에 서명하는 방법에 대한 자세한 내용은 사용 IAM설명서의 AWS API요청 서명을 참조하십시오.

사용하는 인증 방법에 상관없이 추가 보안 정보를 제공해야 할 수도 있습니다. 예를 들어, 계정 보안을 강화하기 위해 다단계 인증 (MFA) 을 사용할 AWS 것을 권장합니다. 자세한 내용은 사용 설명서의 다단계 인증사용 AWS IAM Identity Center 설명서의 다단계 인증 사용 (MFA) 을 IAM 참조하십시오. AWS

AWS 계정 루트 사용자

계정을 AWS 계정만들 때는 먼저 계정의 모든 AWS services 리소스에 대한 완전한 액세스 권한을 가진 하나의 로그인 ID로 시작합니다. 이 ID를 AWS 계정 루트 사용자라고 하며, 계정을 만들 때 사용한 이메일 주소와 비밀번호로 로그인하여 액세스할 수 있습니다. 일상적인 태스크에 루트 사용자를 사용하지 않을 것을 강력히 권장합니다. 루트 사용자 보안 인증 정보를 보호하고 루트 사용자만 수행할 수 있는 태스크를 수행하는 데 사용하세요. 루트 사용자로 로그인해야 하는 작업의 전체 목록은 사용 설명서의 루트 사용자 자격 증명이 필요한 작업을 참조하십시오. IAM

페더레이션 자격 증명

가장 좋은 방법은 관리자 액세스가 필요한 사용자를 비롯한 수동 AWS services 사용자가 ID 공급자와의 페더레이션을 사용하여 임시 자격 증명을 사용하여 액세스하도록 하는 것입니다.

페더레이션 ID는 기업 사용자 디렉토리, 웹 ID 공급자, Identity Center 디렉터리의 사용자 또는 ID 소스를 통해 제공된 자격 증명을 사용하여 액세스하는 AWS services 모든 사용자를 말합니다. AWS Directory Service페더레이션 ID에 AWS 계정액세스하면 이들이 역할을 맡고 역할은 임시 자격 증명을 제공합니다.

중앙 집중식 액세스 관리를 위해 AWS IAM Identity Center(을)를 사용하는 것이 좋습니다. IAMIdentity Center에서 사용자 및 그룹을 만들거나 자체 ID 소스의 사용자 및 그룹 집합에 연결하고 동기화하여 AWS 계정 모든 사용자 및 애플리케이션에서 사용할 수 있습니다. ID 센터에 대한 자세한 내용은 IAM ID 센터란 IAM 무엇입니까? 를 참조하십시오. AWS IAM Identity Center 사용 설명서에서

IAM 사용자 및 그룹

IAM사용자란 단일 사용자 또는 애플리케이션에 대한 특정 권한을 가진 사용자 내의 ID입니다. AWS 계정 가능하면 암호 및 액세스 키와 같은 장기 자격 증명을 가진 IAM 사용자를 만드는 대신 임시 자격 증명을 사용하는 것이 좋습니다. 하지만 특정 사용 사례에서 IAM 사용자의 장기 자격 증명이 필요한 경우에는 액세스 키를 교체하는 것이 좋습니다. 자세한 내용은 사용 설명서의 장기 자격 증명이 필요한 사용 사례에 대한 정기적인 액세스 키 IAM 교체를 참조하십시오.

IAM그룹은 IAM 사용자 컬렉션을 지정하는 ID입니다. 사용자는 그룹으로 로그인할 수 없습니다. 그룹을 사용하여 여러 사용자의 권한을 한 번에 지정할 수 있습니다. 그룹을 사용하면 대규모 사용자 집합의 권한을 더 쉽게 관리할 수 있습니다. 예를 들어 이름을 지정한 IAMAdmins그룹을 만들고 해당 그룹에 IAM 리소스를 관리할 권한을 부여할 수 있습니다.

사용자는 역할과 다릅니다. 사용자는 한 사람 또는 애플리케이션과 고유하게 연결되지만, 역할은 해당 역할이 필요한 사람이라면 누구나 수임할 수 있습니다. 사용자는 영구적인 장기 보안 인증 정보를 가지고 있지만, 역할은 임시 보안 인증만 제공합니다. 자세히 알아보려면 사용 설명서의 역할 대신 IAM 사용자를 만드는 시기를 참조하십시오. IAM

IAM역할

IAM역할은 특정 권한을 AWS 계정 가진 사용자 내의 ID입니다. IAM사용자와 비슷하지만 특정인과 관련이 있는 것은 아닙니다. 역할을 AWS Management Console 전환하여 에서 일시적으로 IAM 역할을 맡을 수 있습니다. AWS CLI or AWS API 작업을 호출하거나 사용자 지정을 사용하여 역할을 수임할 수 URL 있습니다. 역할 사용 방법에 대한 자세한 내용은 사용 IAM설명서의 IAM역할 사용을 참조하십시오.

IAM임시 자격 증명이 있는 역할은 다음과 같은 상황에서 유용합니다.

  • 페더레이션 사용자 액세스 - 페더레이션 ID에 권한을 부여하려면 역할을 생성하고 해당 역할의 권한을 정의합니다. 페더레이션 ID가 인증되면 역할이 연결되고 역할에 정의된 권한이 부여됩니다. 페더레이션을 위한 역할에 대한 자세한 내용은 IAM사용 설명서의 타사 ID 제공자를 위한 역할 생성을 참조하십시오. IAMIdentity Center를 사용하는 경우 권한 집합을 구성합니다. ID가 인증된 후 액세스할 수 있는 대상을 제어하기 위해 IAM Identity Center는 권한 집합을 역할의 상관 관계와 연결합니다. IAM 권한 세트에 대한 자세한 내용은 AWS IAM Identity Center 사용 설명서권한 세트를 참조하십시오.

  • 임시 IAM 사용자 권한 - IAM 사용자 또는 역할이 역할을 맡아 특정 작업에 대해 일시적으로 다른 권한을 부여받을 수 있습니다. IAM

  • 계정 간 액세스 - IAM 역할을 사용하여 다른 계정의 사용자 (신뢰할 수 있는 사용자) 가 계정의 리소스에 액세스하도록 허용할 수 있습니다. 역할은 계정 간 액세스를 부여하는 기본적인 방법입니다. 하지만 일부 AWS services경우에는 역할을 프록시로 사용하는 대신 정책을 리소스에 직접 연결할 수 있습니다. 계정 간 액세스에 대한 역할과 리소스 기반 정책 간의 차이점을 알아보려면 사용 설명서의 교차 계정 리소스 액세스를 참조하십시오. IAM IAM

  • 서비스 간 액세스 — 일부는 다른 기능을 AWS services 사용합니다. AWS services예를 들어, 서비스를 호출하면 해당 서비스가 Amazon에서 애플리케이션을 EC2 실행하거나 Amazon S3에 객체를 저장하는 것이 일반적입니다. 서비스는 직접적으로 호출하는 보안 주체의 권한을 사용하거나, 서비스 역할을 사용하거나, 또는 서비스 연결 역할을 사용하여 이 태스크를 수행할 수 있습니다.

    • 전달 액세스 세션 (FAS) — IAM 사용자 또는 역할을 사용하여 작업을 수행하는 AWS경우 보안 주체로 간주됩니다. 일부 서비스를 사용하는 경우 다른 서비스에서 다른 작업을 시작하는 작업을 수행할 수 있습니다. FAS전화를 거는 주체의 권한을 다운스트림 서비스에 AWS service 요청하라는 요청과 결합하여 사용합니다. AWS service FAS요청은 다른 서비스 AWS services 또는 리소스와의 상호 작용이 필요한 요청을 서비스가 수신한 경우에만 이루어집니다. 이 경우 두 작업을 모두 수행할 수 있는 권한이 있어야 합니다. FAS요청 시 적용되는 정책 세부 정보는 전달 액세스 세션을 참조하십시오.

    • 서비스 역할 - 서비스 역할은 서비스가 사용자를 대신하여 작업을 수행하는 것으로 간주하는 IAM역할입니다. IAM관리자는 내부에서 IAM 서비스 역할을 만들고, 수정하고, 삭제할 수 있습니다. 자세한 내용은 사용 설명서의 역할 만들기를 참조하여 권한을 위임하십시오IAM. AWS service

    • 서비스 연결 역할 - 서비스 연결 역할은 에 연결된 서비스 역할 유형입니다. AWS service서비스는 사용자를 대신하여 작업을 수행하기 위해 역할을 수임할 수 있습니다. 서비스 연결 역할은 사용자에게 AWS 계정 표시되며 해당 서비스가 소유합니다. IAM관리자는 서비스 연결 역할에 대한 권한을 볼 수 있지만 편집할 수는 없습니다.

  • Amazon에서 실행 중인 애플리케이션 EC2 — IAM 역할을 사용하여 EC2 인스턴스에서 실행되고 AWS API 요청을 보내는 애플리케이션의 임시 자격 증명을 관리할 수 있습니다. AWS CLI EC2인스턴스 내에 액세스 키를 저장하는 것보다 이 방법이 더 좋습니다. EC2인스턴스에 AWS 역할을 할당하고 모든 애플리케이션에서 사용할 수 있게 하려면 인스턴스에 연결된 인스턴스 프로필을 만들어야 합니다. 인스턴스 프로필에는 역할이 포함되며, 이를 통해 EC2 인스턴스에서 실행 중인 프로그램이 임시 자격 증명을 얻을 수 있습니다. 자세한 내용은 사용 설명서의 IAM역할을 사용하여 Amazon EC2 인스턴스에서 실행되는 애플리케이션에 권한 부여를 IAM 참조하십시오.

IAM역할을 사용할지 IAM 사용자를 사용할지 알아보려면 사용 설명서의 IAM 역할 생성 시기 (사용자 대신)IAM참조하십시오.

정책을 사용한 액세스 관리

정책을 만들고 이를 AWS ID 또는 리소스에 AWS 연결하여 액세스를 제어할 수 있습니다. 정책은 ID 또는 리소스와 연결될 때 AWS 해당 권한을 정의하는 객체입니다. AWS 주도자 (사용자, 루트 사용자 또는 역할 세션) 가 요청할 때 이러한 정책을 평가합니다. 정책에서 권한은 요청이 허용되거나 거부되는 지를 결정합니다. 대부분의 정책은 JSON 문서로 AWS 저장됩니다. JSON정책 문서의 구조 및 내용에 대한 자세한 내용은 IAM사용 설명서의 JSON 정책 개요를 참조하십시오.

관리자는 AWS JSON 정책을 사용하여 누가 무엇에 액세스할 수 있는지 지정할 수 있습니다. 즉, 어떤 보안 주체가 어떤 리소스와 어떤 조건에서 작업을 수행할 수 있는지를 지정할 수 있습니다.

기본적으로, 사용자와 역할에는 어떠한 권한도 없습니다. IAM관리자는 IAM 정책을 생성하여 필요한 리소스에서 작업을 수행할 수 있는 권한을 사용자에게 부여할 수 있습니다. 그러면 관리자가 역할에 IAM 정책을 추가할 수 있으며, 사용자는 역할을 수임할 수 있습니다.

IAM정책은 작업을 수행하는 데 사용하는 방법에 관계없이 작업에 대한 권한을 정의합니다. 예를 들어, iam:GetRole 작업을 허용하는 정책이 있다고 가정합니다. 해당 정책을 사용하는 사용자는 AWS Management Console, AWS CLI, 또는 에서 역할 정보를 가져올 수 AWS API 있습니다.

보안 인증 기반 정책

ID 기반 정책은 IAM 사용자, 사용자 그룹 또는 역할과 같은 ID에 연결할 수 있는 JSON 권한 정책 문서입니다. 이러한 정책은 사용자와 역할이 어떤 리소스와 어떤 조건에서 어떤 태스크를 수행할 수 있는지를 제어합니다. ID 기반 정책을 만드는 방법을 알아보려면 사용 설명서의 IAM정책 생성을 참조하십시오. IAM

보안 인증 기반 정책은 인라인 정책 또는 관리형 정책으로 한층 더 분류할 수 있습니다. 인라인 정책은 단일 사용자, 그룹 또는 역할에 직접 포함됩니다. 관리형 정책은 내 여러 사용자, 그룹 및 역할에 연결할 수 있는 독립형 정책입니다. AWS 계정관리형 정책에는 AWS 관리형 정책과 고객 관리형 정책이 포함됩니다. 관리형 정책과 인라인 정책 중에서 선택하는 방법을 알아보려면 IAM사용 설명서의 관리형 정책과 인라인 정책 중 선택을 참조하십시오.

리소스 기반 정책

리소스 기반 정책은 리소스에 연결하는 JSON 정책 문서입니다. 리소스 기반 정책의 예로는 IAM 역할 신뢰 정책과 Amazon S3 버킷 정책이 있습니다. 리소스 기반 정책을 지원하는 서비스에서 서비스 관리자는 이러한 정책을 사용하여 특정 리소스에 대한 액세스를 통제할 수 있습니다. 정책이 연결된 리소스의 경우, 정책은 지정된 보안 주체가 해당 리소스와 어떤 조건에서 어떤 태스크를 수행할 수 있는지를 정의합니다. 리소스 기반 정책에서 보안 주체를 지정해야 합니다. 보안 주체에는 계정, 사용자, 역할, 연동 사용자 등이 포함될 수 있습니다. AWS services

리소스 기반 정책은 해당 서비스에 있는 인라인 정책입니다. 리소스 기반 IAM 정책에서는 AWS 관리형 정책을 사용할 수 없습니다.

액세스 제어 목록 () ACLs

액세스 제어 목록 (ACLs) 은 리소스에 액세스할 수 있는 권한을 가진 주체 (계정 구성원, 사용자 또는 역할) 를 제어합니다. ACLs정책 문서 형식을 사용하지 않지만 리소스 기반 정책과 JSON 비슷합니다.

지원하는 서비스의 VPC 예로는 Amazon S3와 Amazon이 ACLs 있습니다. AWS WAF자세한 내용은 Amazon 심플 스토리지 서비스 개발자 안내서의 액세스 제어 목록 (ACL) 개요를 참조하십시오. ACLs

기타 정책 타입

AWS 일반적이지 않은 추가 정책 유형을 지원합니다. 이러한 정책 타입은 더 일반적인 정책 타입에 따라 사용자에게 부여되는 최대 권한을 설정할 수 있습니다.

  • 권한 경계 - 권한 경계는 ID 기반 정책이 IAM 엔티티 (IAM사용자 또는 역할) 에 부여할 수 있는 최대 권한을 설정하는 고급 기능입니다. 개체에 대한 권한 경계를 설정할 수 있습니다. 그 결과로 얻는 권한은 개체의 보안 인증 기반 정책과 그 권한 경계의 교집합입니다. Principal 필드에서 사용자나 역할을 지정하는 리소스 기반 정책은 권한 경계를 통해 제한되지 않습니다. 이러한 정책 중 하나에 포함된 명시적 거부는 허용을 재정의합니다. 권한 경계에 대한 자세한 내용은 사용 IAM설명서의 IAM 엔티티의 권한 경계를 참조하십시오.

  • 서비스 제어 정책 (SCPs) - SCPs 조직 또는 OU (조직 구성 단위) 에 대한 최대 권한을 지정하는 JSON AWS Organizations정책입니다. AWS Organizations 기업이 소유한 여러 AWS 계정 개를 그룹화하고 중앙에서 관리하는 서비스입니다. 조직의 모든 기능을 사용하도록 설정하면 일부 또는 모든 계정에 서비스 제어 정책 (SCPs) 을 적용할 수 있습니다. 각 항목을 포함하여 구성원 계정의 엔티티에 대한 권한을 SCP AWS 계정 루트 사용자제한합니다. Organizations 및 SCPs 에 대한 자세한 내용은 AWS Organizations 사용 설명서의 SCPs작업 방식을 참조하십시오.

  • 세션 정책 - 세션 정책은 역할 또는 페더레이션 사용자에 대해 임시 세션을 프로그래밍 방식으로 생성할 때 파라미터로 전달하는 고급 정책입니다. 결과적으로 얻는 세션의 권한은 사용자 또는 역할의 보안 인증 기반 정책의 교차와 세션 정책입니다. 또한 권한을 리소스 기반 정책에서 가져올 수도 있습니다. 이러한 정책 중 하나에 포함된 명시적 거부는 허용을 재정의합니다. 자세한 내용은 IAM사용 설명서의 세션 정책을 참조하십시오.

여러 정책 타입

여러 정책 유형이 요청에 적용되는 경우, 결과 권한은 이해하기가 더 복잡합니다. 여러 정책 유형이 관련된 경우 요청을 허용할지 여부를 AWS 결정하는 방법을 알아보려면 IAM사용 설명서의 정책 평가 로직을 참조하십시오.

의 AWS Cloud9 작동 방식 IAM

액세스를 관리하는 IAM 데 사용하기 전에 사용할 수 있는 IAM 기능에 대해 알아보십시오 AWS Cloud9. AWS Cloud9

IAM함께 사용할 수 있는 기능 AWS Cloud9
IAM기능 AWS Cloud9 지원

ID 기반 정책

리소스 기반 정책

아니요

정책 작업

정책 리소스

정책 조건 키(서비스별)

ACLs

아니요

ABAC(정책의 태그)

임시 보안 인증

포워드 액세스 세션 (FAS)

서비스 역할

서비스 연결 역할

대부분의 IAM 기능과 함께 작동하는 방식 AWS Cloud9 및 기타 AWS 서비스를 개괄적으로 보려면 IAM사용 IAM 설명서에서 함께 작동하는AWS 서비스를 참조하십시오.

아이덴티티 기반 정책은 다음과 같습니다. AWS Cloud9

ID 기반 정책 지원:

ID 기반 정책은 IAM 사용자, 사용자 그룹 또는 역할과 같은 ID에 연결할 수 있는 JSON 권한 정책 문서입니다. 이러한 정책은 사용자와 역할이 어떤 리소스와 어떤 조건에서 어떤 태스크를 수행할 수 있는지를 제어합니다. ID 기반 정책을 만드는 방법을 알아보려면 사용 설명서의 IAM정책 생성을 참조하십시오. IAM

IAMID 기반 정책을 사용하면 허용 또는 거부된 작업 및 리소스는 물론 작업이 허용되거나 거부되는 조건을 지정할 수 있습니다. 보안 인증 기반 정책에서는 보안 주체가 연결된 사용자 또는 역할에 적용되므로 보안 주체를 지정할 수 없습니다. JSON정책에서 사용할 수 있는 모든 요소에 대해 알아보려면 사용 IAM설명서의 IAM JSON 정책 요소 참조를 참조하십시오.

아이덴티티 기반 정책 예시 AWS Cloud9

AWS Cloud9 ID 기반 정책의 예를 보려면 을 참조하십시오. AWS Cloud9에 대한 자격 증명 기반 정책 예시

내 리소스 기반 정책 AWS Cloud9

리소스 기반 정책 지원: 아니요

리소스 기반 정책은 리소스에 연결하는 JSON 정책 문서입니다. 리소스 기반 정책의 예로는 IAM 역할 신뢰 정책과 Amazon S3 버킷 정책이 있습니다. 리소스 기반 정책을 지원하는 서비스에서 서비스 관리자는 이러한 정책을 사용하여 특정 리소스에 대한 액세스를 통제할 수 있습니다. 정책이 연결된 리소스의 경우, 정책은 지정된 보안 주체가 해당 리소스와 어떤 조건에서 어떤 태스크를 수행할 수 있는지를 정의합니다. 리소스 기반 정책에서 보안 주체를 지정해야 합니다. 보안 주체에는 계정, 사용자, 역할, 연동 사용자 등이 포함될 수 있습니다. AWS services

계정 간 액세스를 활성화하려면 다른 계정의 전체 계정 또는 IAM 엔티티를 리소스 기반 정책의 보안 주체로 지정할 수 있습니다. 리소스 기반 정책에 크로스 계정 보안 주체를 추가하는 것은 트러스트 관계 설정의 절반밖에 되지 않는다는 것을 유념하십시오. 보안 주체와 리소스가 다른 AWS 계정경우 신뢰할 수 있는 계정의 IAM 관리자는 보안 주체 (사용자 또는 역할) 에게 리소스에 액세스할 수 있는 권한도 부여해야 합니다. 엔터티에 ID 기반 정책을 연결하여 권한을 부여합니다. 하지만 리소스 기반 정책이 동일 계정의 보안 주체에 액세스를 부여하는 경우, 추가 자격 증명 기반 정책이 필요하지 않습니다. 자세한 내용은 IAM사용 설명서의 계정 간 리소스 액세스를 참조하십시오. IAM

AWS Cloud9 리소스 기반 정책을 지원하지 않지만 및 를 통해 환경 구성원의 AWS Cloud9 환경 리소스 권한을 제어할 수는 있습니다. AWS Cloud9 AWS Cloud9 API AWS Cloud9 IDE

에 대한 정책 조치 AWS Cloud9

정책 작업 지원:

관리자는 AWS JSON 정책을 사용하여 누가 무엇에 액세스할 수 있는지 지정할 수 있습니다. 즉, 어떤 보안 주체가 어떤 리소스와 어떤 조건에서 작업을 수행할 수 있는지를 지정할 수 있습니다.

정책 Action 요소는 JSON 정책에서 액세스를 허용하거나 거부하는 데 사용할 수 있는 작업을 설명합니다. 정책 작업은 일반적으로 관련 AWS API 작업과 이름이 같습니다. 일치하는 작업이 없는 권한 전용 작업과 같은 몇 가지 예외가 있습니다. API 정책에서 여러 작업이 필요한 몇 가지 작업도 있습니다. 이러한 추가 작업을 일컬어 종속 작업이라고 합니다.

연결된 작업을 수행할 수 있는 권한을 부여하기 위한 정책에 작업을 포함하십시오.

AWS Cloud9 작업 목록을 보려면 서비스 권한 부여 AWS Cloud9참조에 정의된 작업을 참조하십시오.

정책 조치는 조치 앞에 다음 접두사를 AWS Cloud9 사용합니다.

account

단일 문에서 여러 작업을 지정하려면 다음과 같이 쉼표로 구분합니다.

"Action": [ "account:action1", "account:action2" ]

AWS Cloud9 ID 기반 정책의 예를 보려면 을 참조하십시오. AWS Cloud9에 대한 자격 증명 기반 정책 예시

에 대한 정책 리소스 AWS Cloud9

정책 리소스 지원:

관리자는 AWS JSON 정책을 사용하여 누가 무엇에 액세스할 수 있는지 지정할 수 있습니다. 즉, 어떤 보안 주체가 어떤 리소스와 어떤 조건에서 작업을 수행할 수 있는지를 지정할 수 있습니다.

ResourceJSON정책 요소는 작업이 적용되는 하나 또는 여러 개의 객체를 지정합니다. 문장에는 Resource또는 NotResource요소가 반드시 추가되어야 합니다. Amazon 리소스 이름 (ARN) 을 사용하여 리소스를 지정하는 것이 가장 좋습니다. 리소스 수준 권한이라고 하는 특정 리소스 유형을 지원하는 작업에 대해 이 태스크를 수행할 수 있습니다.

작업 나열과 같이 리소스 수준 권한을 지원하지 않는 작업의 경우, 와일드카드(*)를 사용하여 해당 문이 모든 리소스에 적용됨을 나타냅니다.

"Resource": "*"

AWS Cloud9 리소스 유형 및 해당 ARNs 유형의 목록을 보려면 서비스 권한 부여 AWS Cloud9참조에 정의된 리소스를 참조하십시오. 각 리소스에 어떤 작업을 지정할 수 있는지 알아보려면 정의된 작업을 참조하십시오 AWS Cloud9. ARN

AWS Cloud9 ID 기반 정책의 예를 보려면 을 참조하십시오. AWS Cloud9에 대한 자격 증명 기반 정책 예시

에 대한 정책 조건 키 AWS Cloud9

서비스별 정책 조건 키 지원:

관리자는 AWS JSON 정책을 사용하여 누가 무엇에 액세스할 수 있는지 지정할 수 있습니다. 즉, 어떤 보안 주체가 어떤 리소스와 어떤 조건에서 작업을 수행할 수 있는지를 지정할 수 있습니다.

Condition 요소(또는 Condition 블록)를 사용하면 정책이 발효되는 조건을 지정할 수 있습니다. Condition 요소는 옵션입니다. 같거나 작음과 같은 조건 연산자를 사용하여 정책의 조건을 요청의 값과 일치시키는 조건식을 생성할 수 있습니다.

한 문에서 여러 Condition 요소를 지정하거나 단일 Condition 요소에서 여러 키를 지정하는 경우, AWS 는 논리적 AND 태스크를 사용하여 평가합니다. 단일 조건 키에 여러 값을 지정하는 경우 는 논리적 OR 연산을 사용하여 조건을 AWS 평가합니다. 명문의 권한을 부여하기 전에 모든 조건을 충족해야 합니다.

조건을 지정할 때 자리 표시자 변수를 사용할 수도 있습니다. 예를 들어 리소스에 IAM 사용자 이름이 태그가 지정된 경우에만 리소스에 대한 액세스 권한을 IAM 사용자에게 부여할 수 있습니다. 자세한 내용은 IAM사용 설명서의 IAM 정책 요소: 변수 및 태그를 참조하십시오.

AWS 글로벌 조건 키 및 서비스별 조건 키를 지원합니다. 모든 AWS 글로벌 조건 키를 보려면 IAM사용 설명서의AWS 글로벌 조건 컨텍스트 키를 참조하십시오.

AWS Cloud9 조건 키 목록을 보려면 서비스 권한 부여 AWS Cloud9참조의 조건 키를 참조하십시오. 조건 키를 사용할 수 있는 작업 및 리소스에 대해 알아보려면 작업 정의 기준을 참조하십시오 AWS Cloud9.

AWS Cloud9 ID 기반 정책의 예를 보려면 을 참조하십시오. AWS Cloud9에 대한 자격 증명 기반 정책 예시

ACLs에서 AWS Cloud9

지원ACLs: 아니요

액세스 제어 목록 (ACLs) 은 리소스에 액세스할 수 있는 권한을 가진 주체 (계정 구성원, 사용자 또는 역할) 를 제어합니다. ACLs정책 문서 형식을 사용하지 않지만 리소스 기반 정책과 JSON 비슷합니다.

ABAC... AWS Cloud9

지원 ABAC (정책의 태그):

속성 기반 액세스 제어 (ABAC) 는 속성을 기반으로 권한을 정의하는 권한 부여 전략입니다. AWS에서는 이러한 속성을 태그라고 합니다. IAM엔티티 (사용자 또는 역할) 및 여러 AWS 리소스에 태그를 첨부할 수 있습니다. 의 ABAC 첫 번째 단계는 엔티티와 리소스에 태그를 지정하는 것입니다. 그런 다음 보안 주체의 태그가 액세스하려는 리소스의 태그와 일치할 때 작업을 허용하도록 ABAC 정책을 설계합니다.

ABAC빠르게 성장하는 환경에서 유용하며 정책 관리가 복잡해지는 상황에 도움이 됩니다.

태그에 근거하여 액세스를 제어하려면 aws:ResourceTag/key-name, aws:RequestTag/key-name 또는 aws:TagKeys 조건 키를 사용하여 정책의 조건 요소에 태그 정보를 제공합니다.

서비스가 모든 리소스 유형에 대해 세 가지 조건 키를 모두 지원하는 경우, 값은 서비스에 대해 입니다. 서비스가 일부 리소스 유형에 대해서만 세 가지 조건 키를 모두 지원하는 경우, 값은 부분적입니다.

에 대한 자세한 내용은 What is ABAC? 를 참조하십시오. ABAC IAM사용 설명서에서. 설정 ABAC 단계가 포함된 자습서를 보려면 사용 IAM설명서의 속성 기반 액세스 제어 사용 (ABAC) 을 참조하십시오.

임시 자격 증명 사용: AWS Cloud9

임시 자격 증명 지원:

임시 자격 증명을 사용하여 로그인하면 작동하지 AWS services 않는 것도 있습니다. 임시 자격 증명을 사용하는 AWS services 방법을 비롯한 추가 정보는 IAM사용 설명서의 AWS services 해당 자격 증명을 참조하십시오. IAM

사용자 이름과 암호를 제외한 다른 방법을 AWS Management Console 사용하여 로그인하는 경우 임시 자격 증명을 사용하는 것입니다. 예를 들어 회사의 Single Sign-On (SSO) 링크를 AWS 사용하여 액세스하는 경우 이 프로세스에서 자동으로 임시 자격 증명을 생성합니다. 또한 콘솔에 사용자로 로그인한 다음 역할을 전환할 때 임시 보안 인증을 자동으로 생성합니다. 역할 전환에 대한 자세한 내용은 IAM사용 설명서의 역할 전환 (콘솔) 을 참조하십시오.

AWS CLI 또는 를 사용하여 임시 자격 증명을 수동으로 생성할 수 AWS API 있습니다. 그런 다음 해당 임시 자격 증명을 사용하여 액세스할 수 AWS있습니다. AWS 장기 액세스 키를 사용하는 대신 임시 자격 증명을 동적으로 생성할 것을 권장합니다. 자세한 내용은 의 임시 보안 자격 증명을 참조하십시오. IAM

포워드 액세스 세션: AWS Cloud9

순방향 액세스 세션 지원 (FAS):

에서 IAM 사용자 또는 역할을 사용하여 작업을 수행하는 AWS경우 사용자는 보안 주체로 간주됩니다. 일부 서비스를 사용하는 경우 다른 서비스에서 다른 작업을 시작하는 작업을 수행할 수 있습니다. FAS를 호출하는 주체의 권한을 다운스트림 서비스에 AWS service 요청하기 위한 요청과 결합하여 사용합니다. AWS service FAS요청은 다른 서비스 AWS services 또는 리소스와의 상호 작용이 필요한 요청을 서비스가 수신한 경우에만 이루어집니다. 이 경우 두 작업을 모두 수행할 수 있는 권한이 있어야 합니다. FAS요청 시 적용되는 정책 세부 정보는 전달 액세스 세션을 참조하십시오.

AWS Cloud9의 서비스 역할

서비스 역할 지원:

서비스 역할은 서비스가 사용자를 대신하여 작업을 수행하는 것으로 간주하는 IAM역할입니다. IAM관리자는 내부에서 IAM 서비스 역할을 생성, 수정 및 삭제할 수 있습니다. 자세한 내용은 사용 설명서의 역할 만들기를 참조하여 권한을 위임하십시오IAM. AWS service

주의

서비스 역할의 권한을 변경하면 AWS Cloud9 기능이 중단될 수 있습니다. 서비스 역할을 편집하기 위한 지침이 AWS Cloud9 제공되는 경우에만 서비스 역할을 편집하십시오.

서비스 연결 역할은 다음과 같습니다. AWS Cloud9

서비스 링크 역할 지원:

서비스 연결 역할은 에 연결된 서비스 역할 유형입니다. AWS service서비스는 사용자를 대신하여 작업을 수행하기 위해 역할을 수임할 수 있습니다. 서비스 연결 역할은 사용자에게 AWS 계정 표시되며 해당 서비스가 소유합니다. IAM관리자는 서비스 연결 역할에 대한 권한을 볼 수 있지만 편집할 수는 없습니다.

서비스 연결 역할을 만들거나 관리하는 방법에 대한 자세한 내용은 함께 작동하는 AWS 서비스를 참조하십시오. IAM 서비스 연결 역할 열에서 Yes(이)가 포함된 서비스를 테이블에서 찾습니다. 해당 서비스에 대한 서비스 연결 역할 설명서를 보려면 Yes(네) 링크를 선택합니다.

AWS Cloud9에 대한 자격 증명 기반 정책 예시

기본적으로 사용자 및 역할에는 AWS Cloud9 리소스를 생성하거나 수정할 수 있는 권한이 없습니다. 또한 AWS Management Console, AWS Command Line Interface (AWS CLI) 또는 를 사용하여 작업을 수행할 수도 없습니다. AWS API IAM관리자는 IAM 정책을 생성하여 필요한 리소스에서 작업을 수행할 수 있는 권한을 사용자에게 부여할 수 있습니다. 그러면 관리자가 역할에 IAM 정책을 추가할 수 있으며, 사용자는 역할을 수임할 수 있습니다.

이러한 예제 JSON 정책 문서를 사용하여 IAM ID 기반 정책을 만드는 방법을 알아보려면 사용 IAM설명서에서 IAM 정책 생성을 참조하십시오.

각 리소스 유형의 형식을 포함하여 AWS Cloud9에서 정의한 AWS Cloud9작업 및 리소스 유형에 ARNs 대한 자세한 내용은 서비스 권한 부여 참조의 작업, 리소스 및 조건 키를 참조하십시오.

정책 모범 사례

ID 기반 정책은 누군가가 사용자 계정에서 AWS Cloud9 리소스를 생성, 액세스 또는 삭제할 수 있는지 여부를 결정합니다. 이 작업으로 인해 AWS 계정에 비용이 발생할 수 있습니다. ID 기반 정책을 생성하거나 편집할 때는 다음 지침과 권장 사항을 따릅니다.

  • AWS 관리형 정책으로 시작하여 최소 권한 권한으로 이동 — 사용자와 워크로드에 권한을 부여하려면 여러 일반적인 사용 사례에 권한을 부여하는 AWS 관리형 정책을 사용하세요. 에서 사용할 수 있습니다. AWS 계정사용 사례에 맞는 AWS 고객 관리형 정책을 정의하여 권한을 더 줄이는 것이 좋습니다. 자세한 내용은 IAM사용 설명서의 AWS 관리형 정책 또는 작업 기능에 대한AWS 관리형 정책을 참조하십시오.

  • 최소 권한 적용 — IAM 정책으로 권한을 설정하는 경우 작업 수행에 필요한 권한만 부여하십시오. 이렇게 하려면 최소 권한으로 알려진 특정 조건에서 특정 리소스에 대해 수행할 수 있는 작업을 정의합니다. 를 사용하여 권한을 IAM 적용하는 방법에 대한 자세한 내용은 사용 설명서의 정책 및 권한을 참조하십시오. IAM IAM

  • IAM정책의 조건을 사용하여 액세스를 추가로 제한 - 정책에 조건을 추가하여 작업 및 리소스에 대한 액세스를 제한할 수 있습니다. 예를 들어, 를 사용하여 모든 요청을 전송하도록 지정하는 정책 조건을 작성할 수 SSL 있습니다. 예를 AWS service들어 특정 작업을 통해 서비스 작업을 사용하는 경우 조건을 사용하여 서비스 작업에 대한 액세스 권한을 부여할 수도 AWS CloudFormation있습니다. 자세한 내용은 IAM사용 설명서의 IAMJSON정책 요소: 조건을 참조하십시오.

  • IAMAccess Analyzer를 사용하여 IAM 정책을 검증하여 안전하고 기능적인 권한을 보장합니다. IAM Access Analyzer는 새 정책과 기존 정책을 검증하여 정책이 IAM 정책 언어 (JSON) 및 IAM 모범 사례를 준수하는지 확인합니다. IAMAccess Analyzer는 안전하고 기능적인 정책을 작성하는 데 도움이 되는 100개 이상의 정책 검사와 실행 가능한 권장 사항을 제공합니다. 자세한 내용은 사용 설명서의 IAMAccess Analyzer 정책 검증을 참조하십시오. IAM

  • 다단계 인증 필요 (MFA) - 사용자 또는 루트 IAM 사용자가 필요한 시나리오가 있는 경우 보안을 강화하려면 이 기능을 MFA 켜십시오. AWS 계정 API작업 호출 MFA 시기를 요구하려면 정책에 MFA 조건을 추가하세요. 자세한 내용은 IAM사용 설명서의 MFA -보호된 API 액세스 구성을 참조하십시오.

의 모범 사례에 IAM 대한 자세한 내용은 IAM사용 설명서의 보안 모범 사례를 참조하십시오. IAM

AWS Cloud9 콘솔 사용

AWS Cloud9 콘솔에 액세스하려면 최소 권한 집합이 있어야 합니다. 이러한 권한을 통해 내 AWS Cloud9 리소스의 세부 정보를 나열하고 볼 수 있어야 AWS 계정합니다. 최소 필수 권한보다 더 제한적인 자격 증명 기반 정책을 만들면 콘솔이 해당 정책에 연결된 엔터티(사용자 또는 역할)에 대해 의도대로 작동하지 않습니다.

AWS CLI 또는 에만 전화를 거는 사용자에게 최소 콘솔 권한을 허용할 필요는 AWS API 없습니다. 대신 수행하려는 작업과 일치하는 API 작업에만 액세스를 허용하세요.

사용자와 역할이 AWS Cloud9 콘솔을 계속 사용할 수 있도록 하려면 AWS Cloud9 ConsoleAccess 또는 ReadOnly AWS 관리형 정책도 엔티티에 연결하세요. 자세한 내용은 사용 설명서의 IAM사용자에게 권한 추가를 참조하십시오.

사용자가 자신의 고유한 권한을 볼 수 있도록 허용

이 예제에서는 IAM 사용자가 자신의 사용자 ID에 연결된 인라인 및 관리형 정책을 볼 수 있도록 허용하는 정책을 만드는 방법을 보여줍니다. 이 정책에는 콘솔에서 또는 OR를 사용하여 프로그래밍 방식으로 이 작업을 완료할 수 있는 AWS CLI 권한이 포함됩니다. AWS API

{ "Version": "2012-10-17", "Statement": [ { "Sid": "ViewOwnUserInfo", "Effect": "Allow", "Action": [ "iam:GetUserPolicy", "iam:ListGroupsForUser", "iam:ListAttachedUserPolicies", "iam:ListUserPolicies", "iam:GetUser" ], "Resource": ["arn:aws:iam::*:user/${aws:username}"] }, { "Sid": "NavigateInConsole", "Effect": "Allow", "Action": [ "iam:GetGroupPolicy", "iam:GetPolicyVersion", "iam:GetPolicy", "iam:ListAttachedGroupPolicies", "iam:ListGroupPolicies", "iam:ListPolicyVersions", "iam:ListPolicies", "iam:ListUsers" ], "Resource": "*" } ] }

AWS Cloud9 ID 및 액세스 문제 해결

다음 정보를 사용하면 및 를 사용할 때 발생할 수 있는 일반적인 문제를 AWS Cloud9 진단하고 해결하는 데 도움이 IAM 됩니다.

다음과 같은 작업을 수행할 권한이 없습니다. AWS Cloud9

작업을 수행할 수 있는 권한이 없다는 오류가 수신되면 작업을 수행할 수 있도록 정책을 업데이트해야 합니다.

다음 예제 오류는 mateojackson IAM 사용자가 콘솔을 사용하여 가상 my-example-widget 리소스에 대한 세부 정보를 보려고 하지만 가상 권한이 없는 경우 발생합니다. awes:GetWidget

User: arn:aws:iam::123456789012:user/mateojackson is not authorized to perform: awes:GetWidget on resource: my-example-widget

이 경우 awes:GetWidget작업을 사용하여 my-example-widget리소스에 액세스할 수 있도록 mateojackson사용자 정책을 업데이트해야 합니다.

도움이 필요하면 관리자에게 문의하세요. AWS 관리자는 로그인 자격 증명을 제공한 사람입니다.

저는 IAM을 수행할 권한이 없습니다. PassRole

iam:PassRole 작업을 수행할 수 있는 권한이 없다는 오류가 수신되면 AWS Cloud9에 역할을 전달할 수 있도록 정책을 업데이트해야 합니다.

일부 AWS services 서비스에서는 새 서비스 역할 또는 서비스 연결 역할을 생성하는 대신 기존 역할을 해당 서비스에 전달할 수 있습니다. 이렇게 하려면 사용자가 서비스에 역할을 전달할 수 있는 권한을 가지고 있어야 합니다.

다음 예제 오류는 라는 IAM 사용자가 콘솔을 사용하여 에서 작업을 marymajor 수행하려고 할 때 발생합니다. AWS Cloud9하지만 작업을 수행하려면 서비스 역할이 부여한 권한이 서비스에 있어야 합니다. Mary는 서비스에 역할을 전달할 수 있는 권한을 가지고 있지 않습니다.

User: arn:aws:iam::123456789012:user/marymajor is not authorized to perform: iam:PassRole

이 경우, Mary가 iam:PassRole 작업을 수행할 수 있도록 Mary의 정책을 업데이트해야 합니다.

도움이 필요한 경우 AWS 관리자에게 문의하세요. 관리자는 로그인 자격 증명을 제공한 사람입니다.

외부 사용자가 내 AWS Cloud9 리소스에 액세스할 수 있도록 AWS 계정 허용하고 싶습니다.

다른 계정의 사용자 또는 조직 외부의 사람이 리소스에 액세스할 때 사용할 수 있는 역할을 생성할 수 있습니다. 역할을 수임할 신뢰할 수 있는 사람을 지정할 수 있습니다. 리소스 기반 정책 또는 액세스 제어 목록 (ACLs) 을 지원하는 서비스의 경우 이러한 정책을 사용하여 사용자에게 리소스에 대한 액세스 권한을 부여할 수 있습니다.

자세히 알아보려면 다음을 참조하십시오.

리소스 및 AWS Cloud9 운영 관련 작업 IAM 방식

AWS Identity and Access Management AWS Cloud9 개발 환경 AWS services 및 기타 리소스 모두에서 작업할 수 있는 권한을 관리하는 데 사용됩니다.

AWS Cloud9 리소스 및 운영

AWS Cloud9에서는 기본 리소스가 AWS Cloud9 개발 환경입니다. 정책에서는 Amazon 리소스 이름 (ARN) 을 사용하여 정책이 적용되는 리소스를 식별합니다. 다음 표에는 환경이 나와 ARNs 있습니다. 자세한 내용은 의 Amazon 리소스 이름 (ARNs) 및 AWS 서비스 네임스페이스를 참조하십시오. Amazon Web Services 일반 참조

리소스 유형 ARN형식

환경

arn:aws:cloud9:REGION_ID:ACCOUNT_ID:environment:ENVIRONMENT_ID

지정한 AWS 리전에서 지정한 계정이 소유한 모든 환경

arn:aws:cloud9:REGION_ID:ACCOUNT_ID:environment:*

지정한 리전 내에 지정된 계정이 소유한 모든 환경

arn:aws:cloud9:REGION_ID:ACCOUNT_ID:*

모든 AWS Cloud9 리소스 (계정 및 지역 무관)

arn:aws:cloud9:*

예를 들어 다음과 같이 Amazon 리소스 이름 (ARN) 을 사용하여 명령문에 특정 환경을 표시할 수 있습니다.

"Resource": "arn:aws:cloud9:us-east-2:123456789012:environment:70d899206236474f9590d93b7c41dfEX"

모든 리소스를 지정하려면 Resource 요소에 와일드카드 문자(*)를 사용합니다.

"Resource": "*"

명령문 하나에 여러 리소스를 지정하려면 Amazon 리소스 이름 (ARNs) 을 쉼표로 구분하십시오.

"Resource": [ "arn:aws:cloud9:us-east-2:123456789012:environment:70d899206236474f9590d93b7c41dfEX", "arn:aws:cloud9:us-east-2:123456789012:environment:81e900317347585a0601e04c8d52eaEX" ]

AWS Cloud9 AWS Cloud9 리소스로 작업하기 위한 일련의 작업을 제공합니다. 목록은 단원을 참조하세요AWS Cloud9 권한 참조

리소스 소유권 이해

누가 리소스를 만들었든 상관없이 계정에서 생성된 리소스는 계정을 소유합니다. AWS 계정

다음 사용 사례 및 시나리오를 고려합니다.

  • 의 루트 계정 자격 증명을 사용하여 AWS Cloud9 개발 환경을 만든다고 AWS 계정 가정해 보겠습니다. 이것은 가능하긴 하지만 권장되지는 않습니다. 이 경우 환경의 소유자는 사용자 AWS 계정 소유자입니다.

  • 에서 IAM 사용자를 만들고 해당 사용자에게 환경을 만들 수 AWS 계정 있는 권한을 부여한다고 가정해 보겠습니다. 그러면 사용자가 환경을 생성할 수 있습니다. 하지만 사용자가 속한 사용자 소유주는 여전히 환경을 소유하고 있습니다. AWS 계정

  • 환경을 만들 수 있는 권한이 AWS 계정 있는 IAM 역할을 사용자 내에 생성한다고 가정해 보겠습니다. 그러면 이 역할을 수임할 수 있는 자는 누구나 환경을 생성할 수 있습니다. 이 역할이 속한 AWS 계정가 환경을 소유합니다.

참고

하나 이상의 AWS Cloud9 환경 ARN 소유자인 사용자 계정을 삭제하면 이러한 환경은 소유자가 없게 됩니다. 이 시나리오의 AWS Cloud9 SDK 해결 방법은 를 사용하여 CreateEnvironmentMembership 작업과 EnvironmentMember 데이터 유형을 사용하여 읽기 및 쓰기 권한이 있는 다른 IAM 사용자를 추가하는 것입니다. 이 IAM 사용자를 추가한 후에는 환경 파일을 새 AWS Cloud9 환경에 복사하고 이 소유자를 소유자로 설정할 수 있습니다. ARN 이 작업에 대한 자세한 내용은 참조 안내서를 참조하십시오 CreateEnvironmentMembership. 이 데이터 유형에 대한 자세한 내용은 AWS Cloud9 API참조 안내서를 참조하십시오 EnvironmentMember.

리소스 액세스 관리

권한 정책은 누가 어떤 리소스에 액세스 할 수 있는지를 나타냅니다.

참고

이 섹션에서는 IAM in의 AWS Cloud9사용에 대해 설명합니다. IAM서비스에 대한 자세한 정보는 제공하지 않습니다. 전체 IAM 설명서는 IAM 무엇입니까를 참조하십시오. IAM사용 설명서에서. IAM정책 구문 및 설명에 대한 자세한 내용은 IAM사용 설명서의 IAMJSON정책 참조를 참조하십시오.

ID에 연결된 정책을 IAM ID 기반 정책 (또는 IAM정책) 이라고 합니다. 리소스에 연결된 정책을 리소스 기반 정책이라고 합니다. AWS Cloud9 ID 기반 정책과 리소스 기반 정책을 모두 지원합니다.

다음 각 API 작업에는 이러한 작업을 호출하려는 IAM ID에 IAM 정책만 첨부하면 됩니다. API

  • CreateEnvironmentEC2

  • DescribeEnvironments

다음 API 작업에는 리소스 기반 정책이 필요합니다. IAM정책은 필수는 아니지만 이러한 API 작업을 호출하려는 IAM ID에 IAM 정책이 연결되어 있으면 정책을 AWS Cloud9 사용합니다. 리소스 기반 정책을 원하는 AWS Cloud9 리소스에 적용해야 합니다.

  • CreateEnvironmentMembership

  • DeleteEnvironment

  • DeleteEnvironmentMembership

  • DescribeEnvironmentMemberships

  • DescribeEnvironmentStatus

  • UpdateEnvironment

  • UpdateEnvironmentMembership

각 API 작업의 기능에 대한 자세한 내용은 참조를 참조하십시오.AWS Cloud9 API

리소스 기반 정책을 리소스에 직접 연결할 수는 없습니다. AWS Cloud9 대신 환경 AWS Cloud9 구성원을 추가, 수정, 업데이트 또는 삭제할 때 적절한 리소스 기반 정책을 AWS Cloud9 리소스에 연결합니다.

사용자에게 AWS Cloud9 리소스에서 작업을 수행할 수 있는 권한을 부여하려면 사용자가 IAM 속한 그룹에 권한 정책을 연결합니다. AWS Cloud9 가능하면 AWS 관리형 (사전 정의된) 정책을 연결하는 것이 좋습니다. AWS 관리형 정책에는 일반적인 사용 시나리오 및 사용자 유형 (예: 전체 환경 관리, 환경 사용자, 환경에 대한 읽기 전용 액세스 권한만 있는 사용자) 에 대해 미리 정의된 액세스 권한 집합이 포함되어 있습니다. 에 대한 AWS 관리형 정책 목록은 을 AWS Cloud9참조하십시오. AWS 관리형 정책은 다음과 같습니다. AWS Cloud9

세부적인 사용 시나리오와 고유의 사용자 유형이 필요한 경우 고유의 고객 관리형 정책을 생성하여 연결할 수 있습니다. AWS Cloud9에 대한 추가 설정 옵션(팀 및 엔터프라이즈)에 대한 고객 관리형 정책 생성 AWS Cloud9 단원을 참조하세요.

IAM정책 (AWS 관리 또는 고객 관리) 을 IAM ID에 연결하려면 IAM사용 설명서의 IAM 정책 연결 (콘솔) 을 참조하십시오.

작업에 대한 API 세션 권한

OR를 사용하여 역할 AWS CLI 또는 AWS API 연동 사용자를 위한 임시 세션을 프로그래밍 방식으로 생성하는 경우 세션 정책을 매개 변수로 전달하여 역할 세션의 범위를 확장할 수 있습니다. 즉, 세션의 실질적인 권한은 사용자 또는 역할의 자격 증명 기반 정책의 교집합과 세션 정책입니다.

세션 중에 리소스에 액세스하라는 요청이 전달될 때 세션 정책에 적용 가능한 Deny 문이 없는데 적용 가능한 Allow 문도 없는 경우 정책 평가의 결과는 묵시적 거부입니다. (자세한 내용은 IAM사용 설명서의 계정 내 요청 허용 또는 거부 여부 결정을 참조하십시오.)

하지만 리소스 기반 정책 (위 참조) 이 필요한 AWS Cloud9 API 작업의 경우 리소스 정책에 지정된 경우 호출하는 IAM Principal 엔티티에 권한이 부여됩니다. 이 명시적 권한은 세션 정책의 암시적 거부보다 우선하므로 세션이 작업을 성공적으로 호출할 수 있습니다. AWS Cloud9 API

AWS 관리형 정책은 다음과 같습니다. AWS Cloud9

AWS 관리형 정책은 에서 생성하고 관리하는 독립형 정책입니다. AWS AWS 관리형 정책은 많은 일반 사용 사례에 대한 권한을 제공하도록 설계되었으므로 사용자, 그룹 및 역할에 권한을 할당하기 시작할 수 있습니다.

AWS 관리형 정책은 모든 AWS 고객이 사용할 수 있으므로 특정 사용 사례에 대해 최소 권한 권한을 부여하지 않을 수도 있다는 점에 유의하세요. 사용 사례에 고유한 고객 관리형 정책을 정의하여 권한을 줄이는 것이 좋습니다.

관리형 정책에 정의된 권한은 변경할 수 없습니다. AWS AWS 관리형 정책에 정의된 권한을 업데이트하는 경우 AWS 해당 업데이트는 정책이 연결된 모든 주체 ID (사용자, 그룹, 역할) 에 영향을 미칩니다. AWS 새 정책이 시작되거나 기존 서비스에 새 AWS service API 작업을 사용할 수 있게 되면 AWS 관리형 정책을 업데이트할 가능성이 가장 높습니다.

자세한 내용은 IAM사용 설명서의 AWS 관리형 정책을 참조하십시오.

AWS 관리형 정책: AWSCloud9Administrator

AWSCloud9Administrator정책을 IAM ID에 연결할 수 있습니다.

이 정책은 다음을 제공합니다.administrative 관리자에게 액세스 권한을 제공하는 권한 AWS Cloud9.

권한 세부 정보

이 정책에는 다음 권한이 포함되어 있습니다.

  • AWS Cloud9 — 해당 AWS Cloud9 권한의 모든 작업 AWS 계정.

  • Amazon EC2 — 여러 Amazon VPC 및 해당 리소스의 서브넷 리소스에 대한 정보를 가져옵니다. AWS 계정

  • IAM— 해당 IAM 사용자의 정보를 얻고 AWS 계정필요에 따라 AWS Cloud9 서비스 연결 역할을 생성합니다. AWS 계정

  • Systems Manager - 사용자가 전화를 걸어 StartSession 세션 관리자 세션의 인스턴스에 대한 연결을 시작할 수 있도록 허용합니다. 이 권한은 Systems Manager를 통해 해당 EC2 인스턴스와 통신하는 환경을 여는 사용자에게 필요합니다. 자세한 내용은 AWS Systems Manager를 사용하여 수신하지 않는 EC2 인스턴스에 액세스 단원을 참조하세요.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "cloud9:*", "iam:GetUser", "iam:ListUsers", "ec2:DescribeVpcs", "ec2:DescribeSubnets", "ec2:DescribeInstanceTypeOfferings", "ec2:DescribeRouteTables" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "iam:CreateServiceLinkedRole" ], "Resource": "*", "Condition": { "StringLike": { "iam:AWSServiceName": "cloud9.amazonaws.com" } } }, { "Effect": "Allow", "Action": [ "ssm:StartSession", "ssm:GetConnectionStatus" ], "Resource": "arn:aws:ec2:*:*:instance/*", "Condition": { "StringLike": { "ssm:resourceTag/aws:cloud9:environment": "*" }, "StringEquals": { "aws:CalledViaFirst": "cloud9.amazonaws.com" } } }, { "Effect": "Allow", "Action": [ "ssm:StartSession" ], "Resource": [ "arn:aws:ssm:*:*:document/*" ] } ] }

AWS 관리형 정책: AWSCloud9User

AWSCloud9User정책을 IAM ID에 연결할 수 있습니다.

이 정책은 다음을 제공합니다.user AWS Cloud9 개발 환경을 만들고 소유한 환경을 관리할 수 있는 권한을 제공합니다.

권한 세부 정보

이 정책에는 다음 권한이 포함되어 있습니다.

  • AWS Cloud9 — 해당 환경에 대한 정보를 생성 및 가져오고 해당 환경에 대한 사용자 설정을 가져오고 변경합니다.

  • Amazon EC2 — 여러 Amazon VPC 및 해당 리소스의 서브넷 리소스에 대한 정보를 가져옵니다. AWS 계정

  • IAM— 해당 IAM 사용자의 정보를 얻고 AWS 계정필요에 따라 AWS Cloud9 서비스 연결 역할을 생성합니다. AWS 계정

  • Systems Manager - 사용자가 전화를 걸어 StartSession 세션 관리자 세션의 인스턴스에 대한 연결을 시작할 수 있도록 허용합니다. 이 권한은 Systems Manager를 통해 해당 EC2 인스턴스와 통신하는 환경을 여는 사용자에게 필요합니다. 자세한 내용은 AWS Systems Manager를 사용하여 수신하지 않는 EC2 인스턴스에 액세스 단원을 참조하세요.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "cloud9:UpdateUserSettings", "cloud9:GetUserSettings", "iam:GetUser", "iam:ListUsers", "ec2:DescribeVpcs", "ec2:DescribeSubnets", "ec2:DescribeInstanceTypeOfferings", "ec2:DescribeRouteTables" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "cloud9:CreateEnvironmentEC2", "cloud9:CreateEnvironmentSSH" ], "Resource": "*", "Condition": { "Null": { "cloud9:OwnerArn": "true" } } }, { "Effect": "Allow", "Action": [ "cloud9:GetUserPublicKey" ], "Resource": "*", "Condition": { "Null": { "cloud9:UserArn": "true" } } }, { "Effect": "Allow", "Action": [ "cloud9:DescribeEnvironmentMemberships" ], "Resource": [ "*" ], "Condition": { "Null": { "cloud9:UserArn": "true", "cloud9:EnvironmentId": "true" } } }, { "Effect": "Allow", "Action": [ "iam:CreateServiceLinkedRole" ], "Resource": "*", "Condition": { "StringLike": { "iam:AWSServiceName": "cloud9.amazonaws.com" } } }, { "Effect": "Allow", "Action": [ "ssm:StartSession", "ssm:GetConnectionStatus" ], "Resource": "arn:aws:ec2:*:*:instance/*", "Condition": { "StringLike": { "ssm:resourceTag/aws:cloud9:environment": "*" }, "StringEquals": { "aws:CalledViaFirst": "cloud9.amazonaws.com" } } }, { "Effect": "Allow", "Action": [ "ssm:StartSession" ], "Resource": [ "arn:aws:ssm:*:*:document/*" ] } ] }

AWS 관리형 정책: AWSCloud9EnvironmentMember

AWSCloud9EnvironmentMember정책을 IAM ID에 연결할 수 있습니다.

이 정책은 다음을 제공합니다.membership AWS Cloud9 공유 환경에 참여할 수 있는 기능을 제공하는 권한.

권한 세부 정보

이 정책에는 다음 권한이 포함되어 있습니다.

  • AWS Cloud9 — 해당 환경에 대한 정보를 얻고 해당 환경에 대한 사용자 설정을 가져오고 변경할 수 있습니다.

  • IAM— 소속 IAM 사용자에 대한 정보를 얻고 AWS 계정 필요에 따라 AWS Cloud9 서비스 연결 역할을 생성합니다. AWS 계정

  • Systems Manager - 사용자가 전화를 걸어 StartSession 세션 관리자 세션의 인스턴스에 대한 연결을 시작할 수 있도록 허용합니다. 이 권한은 Systems Manager를 통해 해당 EC2 인스턴스와 통신하는 환경을 여는 사용자에게 필요합니다. 자세한 내용은 AWS Systems Manager를 사용하여 수신하지 않는 EC2 인스턴스에 액세스 단원을 참조하세요.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "cloud9:GetUserSettings", "cloud9:UpdateUserSettings", "iam:GetUser", "iam:ListUsers" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "cloud9:DescribeEnvironmentMemberships" ], "Resource": [ "*" ], "Condition": { "Null": { "cloud9:UserArn": "true", "cloud9:EnvironmentId": "true" } } }, { "Effect": "Allow", "Action": [ "ssm:StartSession", "ssm:GetConnectionStatus" ], "Resource": "arn:aws:ec2:*:*:instance/*", "Condition": { "StringLike": { "ssm:resourceTag/aws:cloud9:environment": "*" }, "StringEquals": { "aws:CalledViaFirst": "cloud9.amazonaws.com" } } }, { "Effect": "Allow", "Action": [ "ssm:StartSession" ], "Resource": [ "arn:aws:ssm:*:*:document/*" ] } ] }

AWS 관리형 정책: AWSCloud9ServiceRolePolicy

서비스 연결 역할은 이 정책을 AWSServiceRoleForAWSCloud9사용하여 AWS Cloud9 환경이 Amazon EC2 및 AWS CloudFormation 리소스와 상호 작용하도록 허용합니다.

권한 세부 정보

는 AWSServiceRoleForAWSCloud 9명에게 개발 환경을 만들고 실행하는 데 필요한 AWS services (Amazon EC2 및 AWS CloudFormation) 과 상호 작용할 수 있도록 AWS Cloud9 하는 데 필요한 권한을 AWSCloud9ServiceRolePolicy부여합니다.

AWS Cloud9 서비스 연결 역할의 권한을 정의하며 해당 역할만 AWS Cloud9 수임할 수 있습니다. 정의된 권한에는 신뢰 정책과 권한 정책이 포함되며 이 권한 정책은 다른 IAM 엔티티에 연결할 수 없습니다.

서비스 연결 역할을 AWS Cloud9 사용하는 방법에 대한 자세한 내용은 을 참조하십시오. AWS Cloud9에 서비스 연결 역할 사용

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:RunInstances", "ec2:CreateSecurityGroup", "ec2:DescribeVpcs", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups", "ec2:DescribeInstances", "ec2:DescribeInstanceStatus", "cloudformation:CreateStack", "cloudformation:DescribeStacks", "cloudformation:DescribeStackEvents", "cloudformation:DescribeStackResources" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ec2:TerminateInstances", "ec2:DeleteSecurityGroup", "ec2:AuthorizeSecurityGroupIngress" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "cloudformation:DeleteStack" ], "Resource": "arn:aws:cloudformation:*:*:stack/aws-cloud9-*" }, { "Effect": "Allow", "Action": [ "ec2:CreateTags" ], "Resource": [ "arn:aws:ec2:*:*:instance/*", "arn:aws:ec2:*:*:security-group/*" ], "Condition": { "StringLike": { "aws:RequestTag/Name": "aws-cloud9-*" } } }, { "Effect": "Allow", "Action": [ "ec2:StartInstances", "ec2:StopInstances" ], "Resource": "*", "Condition": { "StringLike": { "ec2:ResourceTag/aws:cloudformation:stack-name": "aws-cloud9-*" } } }, { "Effect": "Allow", "Action": [ "ec2:StartInstances", "ec2:StopInstances" ], "Resource": [ "arn:aws:license-manager:*:*:license-configuration:*" ] }, { "Effect": "Allow", "Action": [ "iam:ListInstanceProfiles", "iam:GetInstanceProfile" ], "Resource": [ "arn:aws:iam::*:instance-profile/cloud9/*" ] }, { "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": [ "arn:aws:iam::*:role/service-role/AWSCloud9SSMAccessRole" ], "Condition": { "StringLike": { "iam:PassedToService": "ec2.amazonaws.com" } } } ] }

AWS Cloud9 관리형 정책 업데이트 AWS

이 서비스가 이러한 변경 사항을 추적하기 시작한 AWS Cloud9 이후의 AWS 관리형 정책 업데이트에 대한 세부 정보를 볼 수 있습니다. 이 페이지의 변경 사항에 대한 자동 알림을 받으려면 AWS Cloud9 문서 기록 페이지에서 RSS 피드를 구독하십시오.

변경 사항 설명 날짜

AWSCloud9AdministratorAWSCloud9EnvironmentMember정책에 새 작업이 추가되었습니다. AWSCloud9User

ssm:GetConnectionStatus작업이 AWSCloud9UserAWSCloud9AdministratorAWSCloud9EnvironmentMember정책에 추가되었습니다. 이 작업을 수행하면 사용자에게 SSM 연결 상태를 확인할 수 있는 권한이 부여됩니다. cloud9:ValidateEnvironmentNameAPI는 더 이상 사용되지 않으므로 AWSCloud9User정책에서 제거되었습니다.

2023년 10월 12일

APIAWSCloud9User및 정책에 추가되었습니다. AWSCloud9Administrator

AWSCloud9User및 API 정책에 두 개의 새로운 AWSCloud9Administrator정책이 추가되었습니다. 이 API 두 가지는 ec2:DescribeInstanceTypeOfferingsec2:DescribeRouteTables 입니다. 이들의 목적은 기본 서브넷이 API AWS Cloud9 환경을 만들 때 고객이 선택한 인스턴스 유형을 지원하는지 AWS Cloud9 검증할 수 있도록 하는 것입니다.

2023년 8월 2일

로 업데이트 AWSCloud9ServiceRolePolicy

AWSCloud9ServiceRolePolicyLicense Manager 라이선스 구성으로 관리되는 Amazon EC2 인스턴스를 시작하고 중지할 수 있도록 AWS Cloud9 업데이트되었습니다.

2022년 1월 12일

AWS Cloud9 변경 내용 추적 시작

AWS Cloud9 AWS 관리형 정책의 변경 사항 추적을 시작했습니다.

2021년 3월 15일

에 대한 고객 관리형 정책 생성 AWS Cloud9

액세스 제어 요구 사항을 충족하는 AWS 관리형 정책이 없는 경우 자체 고객 관리형 정책을 생성하여 첨부할 수 있습니다.

고객 관리형 정책을 만들려면 IAM사용 설명서의 IAM정책 만들기 (콘솔) 를 참조하십시오.

정책 요소 지정: 효과, 보안 주체, 작업 및 리소스

서비스는 각 AWS Cloud9 리소스에 대해 일련의 API 작업을 정의합니다. 이러한 API 작업에 대한 권한을 부여하려면 정책에서 지정할 수 있는 작업 집합을 AWS Cloud9 정의합니다.

다음은 기본 정책 요소입니다.

  • Effect - 사용자가 작업을 요청하는 경우 효과(허용 또는 거부)를 지정합니다. 명시적으로 리소스에 대한 액세스 권한을 부여(허용)하지 않는 경우, 액세스는 묵시적으로 거부됩니다. 리소스에 대한 액세스를 명시적으로 거부할 수도 있습니다. 다른 정책에서 액세스 권한을 부여하더라도 사용자가 해당 리소스에 액세스할 수 없도록 하려고 할 때 이러한 작업을 수행할 수 있습니다.

  • Principal— ID 기반 정책 (정책) 에서는 IAM 정책이 연결된 사용자가 암시적 보안 주체입니다. 리소스 기반 정책의 경우 사용자, 계정, 서비스 또는 권한의 수신자인 기타 엔터티를 지정합니다.

  • Resource— Amazon 리소스 이름 (ARN) 을 사용하여 정책이 적용되는 리소스를 식별합니다.

  • Action - 작업 키워드를 사용하여 허용 또는 거부할 리소스 작업을 식별합니다. 예를 들어, cloud9:CreateEnvironmentEC2 권한은 사용자에게 CreateEnvironmentEC2 작업 수행 권한을 제공합니다.

IAM정책 구문 및 설명에 대한 자세한 내용은 IAM사용 설명서의 IAMJSON정책 참조를 참조하십시오.

모든 AWS Cloud9 API 작업과 해당 작업이 적용되는 리소스를 보여주는 표는 를 참조하십시오AWS Cloud9 권한 참조.

고객 관리형 정책 예

이 단원에서는 AWS Cloud9 작업에 대한 권한을 부여하는 정책의 예를 볼 수 있습니다. 다음 예제 IAM 정책을 수정하여 ID에 대한 AWS Cloud9 액세스를 허용하거나 명시적으로 거부할 수 있습니다. IAM

고객 관리형 정책을 생성하거나 IAM ID에 연결하려면 사용 설명서의 IAM정책 생성 (콘솔)IAM정책 연결 (콘솔) 을 참조하십시오. IAM

참고

다음 예에서는 미국 동부 (오하이오) 지역 (us-east-2), 가상 AWS 계정 ID (123456789012) 및 가상 AWS Cloud9 개발 환경 ID () 를 사용합니다. 81e900317347585a0601e04c8d52eaEX

환경에 대한 정보 가져오기

엔티티에 첨부된 다음 예제 IAM 정책 설명을 사용하면 해당 IAM 엔티티가 자신의 계정에 있는 모든 환경에 대한 정보를 얻을 수 있습니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "cloud9:DescribeEnvironments", "Resource": "*" } ] }
참고

이전 액세스 권한은 AWS 관리형 정책 AWSCloud9AdministratorAWSCloud9User 에 이미 포함되어 있습니다.

환경 만들기 EC2

IAM엔티티에 첨부된 다음 예제 IAM 정책 설명을 사용하면 해당 엔티티가 자신의 계정에 AWS Cloud9 EC2 개발 환경을 만들 수 있습니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "cloud9:CreateEnvironmentEC2", "Resource": "*" } ] }
참고

이전 액세스 권한은 AWS 관리형 정책 AWSCloud9AdministratorAWSCloud9User 에 이미 포함되어 있습니다.

특정 Amazon EC2 인스턴스 유형으로 EC2 환경 생성

IAM엔티티에 첨부된 다음 예제 IAM 정책 설명을 사용하면 해당 엔티티가 자신의 계정에 AWS Cloud9 EC2 개발 환경을 만들 수 있습니다. 하지만 EC2 환경에서는 지정된 클래스의 Amazon EC2 인스턴스 유형만 사용할 수 있습니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "cloud9:CreateEnvironmentEC2", "Resource": "*", "Condition": { "StringLike": { "cloud9:InstanceType": "t3.*" } } } ] }
참고

AWS 관리형 정책 AWSCloud9Administrator 또는 AWSCloud9User 이 IAM 엔티티에 이미 연결되어 있는 경우 해당 AWS 관리형 정책은 이전 정책 설명의 동작보다 IAM 우선합니다. 이는 이러한 AWS 관리형 정책이 더 관대하기 때문입니다.

특정 Amazon VPC 서브넷에 EC2 환경 생성

엔티티에 첨부된 다음 예제 IAM 정책 설명을 사용하면 해당 IAM 엔티티가 자신의 계정에 AWS Cloud9 EC2 개발 환경을 만들 수 있습니다. 하지만 EC2 환경에서는 지정된 Amazon VPC 서브넷만 사용할 수 있습니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "cloud9:CreateEnvironmentEC2", "Resource": "*", "Condition": { "StringLike": { "cloud9:SubnetId": [ "subnet-12345678", "subnet-23456789" ] } } } ] }
참고

AWS 관리형 정책 AWSCloud9Administrator 또는 AWSCloud9User 이 IAM 엔티티에 이미 연결되어 있는 경우 해당 AWS 관리형 정책은 이전 정책 설명의 동작보다 IAM 우선합니다. 이는 이러한 AWS 관리형 정책이 더 관대하기 때문입니다.

특정 EC2 환경 이름을 사용하여 환경을 만드십시오.

엔티티에 첨부된 다음 예제 IAM 정책 설명을 통해 해당 IAM 엔티티는 해당 엔티티가 자신의 계정에 AWS Cloud9 EC2 개발 환경을 만들 수 있습니다. 하지만 EC2 환경에서는 지정된 이름만 사용할 수 있습니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "cloud9:CreateEnvironmentEC2", "Resource": "*", "Condition": { "StringEquals": { "cloud9:EnvironmentName": "my-demo-environment" } } } ] }
참고

AWS 관리형 정책 AWSCloud9Administrator 또는 AWSCloud9User 이 IAM 엔티티에 이미 연결되어 있는 경우 해당 AWS 관리형 정책은 이전 정책 설명의 동작보다 IAM 우선합니다. 이는 이러한 AWS 관리형 정책이 더 관대하기 때문입니다.

환경 SSH 생성만 가능

IAM엔티티에 첨부된 다음 예제 IAM 정책 설명을 사용하면 해당 엔티티가 자신의 계정에 AWS Cloud9 SSH 개발 환경을 만들 수 있습니다. 하지만 엔티티는 AWS Cloud9 EC2 개발 환경을 만들 수 없습니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "cloud9:CreateEnvironmentSSH", "Resource": "*" }, { "Effect": "Deny", "Action": "cloud9:CreateEnvironmentEC2", "Resource": "*" } ] }

환경 업데이트 또는 환경 업데이트 금지

IAM엔티티에 첨부된 다음 예제 IAM 정책 설명을 사용하면 해당 엔티티가 계정의 모든 AWS Cloud9 개발 환경에 대한 정보를 변경할 수 있습니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "cloud9:UpdateEnvironment", "Resource": "*" } ] }
참고

이전 액세스 권한은 이미 AWS 관리형 정책에 AWSCloud9Administrator 포함되어 있습니다.

엔티티에 첨부된 다음 예제 IAM 정책 설명은 IAM 해당 엔티티가 지정된 Amazon Resource Name () ARN 을 사용하는 환경에 대한 정보를 변경하는 것을 명시적으로 금지합니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "cloud9:UpdateEnvironment", "Resource": "arn:aws:cloud9:us-east-2:123456789012:environment:81e900317347585a0601e04c8d52eaEX" } ] }

환경 멤버 목록 가져오기

IAM엔티티에 첨부된 다음 예제 IAM 정책 설명을 사용하면 해당 엔티티가 계정 내 모든 환경의 구성원 목록을 가져올 수 있습니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "cloud9:DescribeEnvironmentMemberships", "Resource": "*" } ] }
참고

이전 액세스 권한은 이미 AWS 관리형 정책에 AWSCloud9Administrator 포함되어 있습니다. 또한 이전 액세스 권한은 관리형 정책의 해당 액세스 권한보다 더 관대합니다. AWS AWSCloud9User

특정 사용자만 환경 공유

엔티티에 첨부된 다음 예제 IAM 정책 설명을 사용하면 해당 IAM 엔티티가 자신의 계정에 있는 모든 환경을 지정된 사용자와만 공유할 수 있습니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "cloud9:CreateEnvironmentMembership" ], "Resource": "*", "Condition": { "StringEquals": { "cloud9:UserArn": "arn:aws:iam::123456789012:user/MyDemoUser" } } } ] }
참고

AWS 관리형 정책 AWSCloud9Administrator 또는 AWSCloud9User 이 IAM 엔티티에 이미 연결되어 있는 경우 이러한 AWS 관리형 정책은 이전 IAM 정책 설명의 동작을 재정의합니다. 이는 이러한 AWS 관리형 정책이 더 관대하기 때문입니다.

환경 공유 금지

엔티티에 첨부된 다음 예제 IAM 정책 설명은 해당 IAM 엔티티가 계정의 어떤 환경도 공유하지 못하도록 합니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": [ "cloud9:CreateEnvironmentMembership", "cloud9:UpdateEnvironmentMembership" ], "Resource": "*" } ] }

환경 멤버의 설정 변경 또는 변경 금지

IAM엔티티에 첨부된 다음 예제 IAM 정책 설명을 사용하면 해당 엔티티가 계정의 모든 환경에서 구성원의 설정을 변경할 수 있습니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "cloud9:UpdateEnvironmentMembership", "Resource": "*" } ] }
참고

이전 액세스 권한은 이미 AWS 관리형 정책에 AWSCloud9Administrator 포함되어 있습니다.

엔티티에 첨부된 다음 예제 IAM 정책 설명은 해당 IAM 엔티티가 지정된 Amazon Resource Name () ARN 을 사용하는 환경에서 구성원의 설정을 변경하는 것을 명시적으로 금지합니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "cloud9:UpdateEnvironmentMembership", "Resource": "arn:aws:cloud9:us-east-2:123456789012:environment:81e900317347585a0601e04c8d52eaEX" } ] }

환경 멤버 제거 또는 제거 금지

IAM엔티티에 첨부된 다음 예제 IAM 정책 설명을 사용하면 해당 엔티티가 계정의 모든 환경에서 구성원을 제거할 수 있습니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "cloud9:DeleteEnvironmentMembership", "Resource": "*" } ] }
참고

이전 액세스 권한은 이미 AWS 관리형 정책에 AWSCloud9Administrator 포함되어 있습니다.

엔티티에 첨부된 다음 예제 IAM 정책 설명은 IAM 해당 엔티티가 지정된 Amazon Resource Name () ARN 을 가진 구성원을 환경에서 제거하는 것을 명시적으로 금지합니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "cloud9:DeleteEnvironmentMembership", "Resource": "arn:aws:cloud9:us-east-2:123456789012:environment:81e900317347585a0601e04c8d52eaEX" } ] }

환경 삭제 또는 삭제 금지

엔티티에 첨부된 다음 예제 IAM 정책 설명은 해당 IAM 엔티티가 자신의 계정에서 모든 환경을 삭제할 수 있도록 허용합니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "cloud9:DeleteEnvironment", "Resource": "*" } ] }
참고

이전 액세스 권한은 이미 AWS 관리형 정책에 AWSCloud9Administrator 포함되어 있습니다.

엔티티에 첨부된 다음 예제 IAM 정책 설명은 IAM 해당 엔티티가 지정된 Amazon Resource Name () ARN 을 가진 환경을 삭제하는 것을 명시적으로 금지합니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "cloud9:DeleteEnvironment", "Resource": "arn:aws:cloud9:us-east-2:123456789012:environment:81e900317347585a0601e04c8d52eaEX" } ] }

환경 생성을 위한 SSM 사용자 지정 IAM 정책

AWSCloud9Administrator또는 AWSCloud9User 정책이 연결된 SSM 환경을 만들 때 현재 권한 문제가 발생합니다. 다음 예제 IAM 정책 설명을 IAM 엔티티에 연결하면 사용자가 AWS 관리형 정책 AWSCloud9Administrator 또는 중 하나를 연결하여 사용할 수 AWSCloud9User 있습니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "cloud9:UpdateUserSettings", "cloud9:GetUserSettings", "iam:GetUser", "iam:ListUsers", "iam:ListRoles", "ec2:DescribeVpcs", "ec2:DescribeSubnets", "ec2:DescribeRouteTables" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "cloud9:CreateEnvironmentEC2", "cloud9:CreateEnvironmentSSH" ], "Resource": "*", "Condition": { "Null": { "cloud9:OwnerArn": "true" } } }, { "Effect": "Allow", "Action": [ "cloud9:GetUserPublicKey" ], "Resource": "*", "Condition": { "Null": { "cloud9:UserArn": "true" } } }, { "Effect": "Allow", "Action": [ "cloud9:DescribeEnvironmentMemberships" ], "Resource": [ "*" ], "Condition": { "Null": { "cloud9:UserArn": "true", "cloud9:EnvironmentId": "true" } } }, { "Effect": "Allow", "Action": [ "iam:CreateServiceLinkedRole" ], "Resource": "*", "Condition": { "StringLike": { "iam:AWSServiceName": "cloud9.amazonaws.com" } } }, { "Effect": "Allow", "Action": "ssm:StartSession", "Resource": "arn:aws:ec2:*:*:instance/*", "Condition": { "StringLike": { "ssm:resourceTag/aws:cloud9:environment": "*" }, "StringEquals": { "aws:CalledViaFirst": "cloud9.amazonaws.com" } } }, { "Effect": "Allow", "Action": [ "ssm:StartSession" ], "Resource": [ "arn:aws:ssm:*:*:document/*" ] }, { "Effect": "Allow", "Action": ["iam:ListInstanceProfilesForRole", "iam:CreateRole"], "Resource": ["arn:aws:iam::*:role/service-role/AWSCloud9SSMAccessRole"] }, { "Effect": "Allow", "Action": ["iam:AttachRolePolicy"], "Resource": ["arn:aws:iam::*:role/service-role/AWSCloud9SSMAccessRole"], "Condition": { "StringEquals": { "iam:PolicyARN": "arn:aws:iam::aws:policy/AWSCloud9SSMInstanceProfile" } } }, { "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::*:role/service-role/AWSCloud9SSMAccessRole", "Condition": { "StringEquals": { "iam:PassedToService": "ec2.amazonaws.com" } } }, { "Effect": "Allow", "Action": [ "iam:CreateInstanceProfile", "iam:AddRoleToInstanceProfile" ], "Resource": [ "arn:aws:iam::*:instance-profile/cloud9/AWSCloud9SSMInstanceProfile" ] } ] }

AWS Cloud9 권한 참조

AWS Cloud9 정책에서 AWS 광범위한 조건 키를 사용하여 조건을 표현할 수 있습니다. 목록은 IAM사용 설명서의 IAMJSON정책 요소: 조건을 참조하십시오.

정책의 Action 필드에 작업을 지정합니다. 작업을 지정하려면 cloud9: 접두사 뒤에 API 작업 이름을 입력합니다 (예:"Action": "cloud9:DescribeEnvironments"). 문장 하나에 여러 작업을 지정하려면 쉼표로 구분합니다(예: "Action": [ "cloud9:UpdateEnvironment", "cloud9:DeleteEnvironment" ]).

와일드카드 문자 사용

와일드카드 문자 (*) 를 포함하거나 포함하지 않는 를 정책 필드의 Resource 리소스 값으로 지정합니다. ARN 와일드카드를 사용하여 여러 작업 또는 리소스를 지정할 수 있습니다. 예를 들어, cloud9:* 는 모든 AWS Cloud9 작업을 지정하고 로 Describe 시작하는 모든 AWS Cloud9 작업을 cloud9:Describe* 지정합니다.

다음 예제를 사용하면 IAM 엔티티가 해당 계정의 모든 환경에 대한 환경 및 환경 멤버십에 대한 정보를 가져올 수 있습니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "cloud9:Describe*" ], "Resource": "*" } ] }
참고

위의 액세스 권한은 이미 관리형 정책에 포함되어 있습니다. AWS AWSCloud9Administrator 또한 이전 액세스 권한은 관리형 정책의 동등한 액세스 권한보다 더 관대합니다. AWS AWSCloud9User

AWS Cloud9 API작업 및 작업에 필요한 권한

참고

ID에 첨부하기 위한 액세스 제어 및 쓰기 권한 정책 (IAMID 기반 정책) 을 설정할 때 아래 표를 참조로 사용할 수 있습니다.

Public API operations표에는 SDKs 및 를 사용하는 고객이 호출할 수 있는 API 작업이 나열되어 있습니다. AWS Command Line Interface

고객 코드 또는 에서 직접 호출할 수 없는 API 작업을 Permission-only API operations 나열합니다 AWS Command Line Interface. 하지만 콘솔을 사용하여 작업을 수행할 때 AWS Cloud9 호출되는 이러한 작업에 대한 권한은 IAM 사용자에게 필요합니다.

퍼블릭 API 오퍼레이션
AWS Cloud9 운영 필수 권한 (API조치) Resource

CreateEnvironmentEC2

cloud9:CreateEnvironmentEC2

AWS Cloud9 EC2개발 환경을 만드는 데 필요합니다.

*

CreateEnvironmentMembership

cloud9:CreateEnvironmentMembership

환경에 멤버를 추가하는 데 필요합니다.

arn:aws:cloud9:REGION_ID:ACCOUNT_ID:environment:ENVIRONMENT_ID

DeleteEnvironment

cloud9:DeleteEnvironment

환경을 삭제하는 데 필요합니다.

arn:aws:cloud9:REGION_ID:ACCOUNT_ID:environment:ENVIRONMENT_ID

DeleteEnvironmentMembership

cloud9:DeleteEnvironmentMembership

환경에서 멤버를 제거하는 데 필요합니다.

arn:aws:cloud9:REGION_ID:ACCOUNT_ID:environment:ENVIRONMENT_ID

DescribeEnvironmentMemberships

cloud9:DescribeEnvironmentMemberships

환경에서 멤버 목록을 가져오는 데 필요합니다.

*

DescribeEnvironments

cloud9:DescribeEnvironments

환경에 대한 정보를 가져오는 데 필요합니다.

arn:aws:cloud9:REGION_ID:ACCOUNT_ID:environment:ENVIRONMENT_ID

DescribeEnvironmentStatus

cloud9:DescribeEnvironmentStatus

환경의 상태에 대한 정보를 가져오는 데 필요합니다.

arn:aws:cloud9:REGION_ID:ACCOUNT_ID:environment:ENVIRONMENT_ID

UpdateEnvironment

cloud9:UpdateEnvironment

환경에 대한 설정을 업데이트하는 데 필요합니다.

arn:aws:cloud9:REGION_ID:ACCOUNT_ID:environment:ENVIRONMENT_ID

UpdateEnvironmentMembership

cloud9:UpdateEnvironmentMembership

환경의 멤버에 대한 설정을 업데이트하는 데 필요합니다.

arn:aws:cloud9:REGION_ID:ACCOUNT_ID:environment:ENVIRONMENT_ID

권한 전용 작업 API
AWS Cloud9 오퍼레이션 설명 콘솔 문서

ActivateEC2Remote

cloud9:ActivateEC2Remote

AWS Cloud9 IDE연결된 Amazon EC2 인스턴스를 시작합니다.

AWS Cloud9에서 환경 열기

CreateEnvironmentSSH

cloud9:CreateEnvironmentSSH

AWS Cloud9 SSH개발 환경을 만듭니다.

SSH 환경 생성

CreateEnvironmentToken

cloud9:CreateEnvironmentToken

AWS Cloud9 IDE와 사용자 환경 간의 연결을 허용하는 인증 토큰을 만듭니다.

EC2 환경 생성

DescribeEC2Remote

cloud9:DescribeEC2Remote

호스트, 사용자, 포트를 포함하여 EC2 개발 환경으로의 연결에 대한 세부 정보를 가져옵니다.

EC2 환경 생성

DescribeSSHRemote

cloud9:DescribeSSHRemote

호스트, 사용자, 포트를 포함한 SSH 개발 환경 연결에 대한 세부 정보를 가져옵니다.

SSH 환경 생성

GetEnvironmentConfig

cloud9:GetEnvironmentConfig

를 초기화하는 데 사용되는 구성 정보를 가져옵니다. AWS Cloud9 IDE

AWS Cloud9 통합 개발 환경(IDE) 작업

GetEnvironmentSettings

cloud9:GetEnvironmentSettings

지정된 개발 환경의 AWS Cloud9 IDE 설정을 가져옵니다.

AWS Cloud9 통합 개발 환경(IDE) 작업

GetMembershipSettings

cloud9:GetMembershipSettings

지정된 환경 구성원의 AWS Cloud9 IDE 설정을 가져옵니다.

AWS Cloud9의 공유 환경 작업

GetUserPublicKey

cloud9:GetUserPublicKey

에서 SSH 개발 환경에 연결하는 AWS Cloud9 데 사용하는 사용자의 공개 SSH 키를 가져옵니다.

SSH 환경 생성

GetUserSettings

cloud9:GetUserSettings

지정된 사용자의 AWS Cloud9 IDE 설정을 가져옵니다.

AWS Cloud9 통합 개발 환경(IDE) 작업

ModifyTemporaryCredentialsOnEnvironmentEC2

cloud9:ModifyTemporaryCredentialsOnEnvironmentEC2

AWS Cloud9 통합 개발 환경에서 사용되는 Amazon EC2 인스턴스에 AWS 관리형 임시 자격 증명을 설정합니다 (IDE).

AWS 관리형 임시 자격 증명

UpdateEnvironmentSettings

cloud9:UpdateEnvironmentSettings

지정된 개발 환경의 AWS Cloud9 IDE 설정을 업데이트합니다.

AWS Cloud9 통합 개발 환경(IDE) 작업

UpdateMembershipSettings

cloud9:UpdateMembershipSettings

지정된 환경 구성원의 AWS Cloud9 IDE 설정을 업데이트합니다.

AWS Cloud9의 공유 환경 작업

UpdateSSHRemote

cloud9:UpdateSSHRemote

호스트, 사용자, 포트를 비롯한 SSH 개발 환경 연결에 대한 세부 정보를 업데이트합니다.

SSH 환경 생성

UpdateUserSettings

cloud9:UpdateUserSettings

지정된 사용자의 AWS Cloud9 IDE 설정을 업데이트합니다.

AWS Cloud9 통합 개발 환경(IDE) 작업

GetMigrationExperiences

cloud9:GetMigrationExperiences

AWS Cloud9 사용자에게 에서 AWS Cloud9 로 마이그레이션 경험을 얻을 수 있는 권한을 CodeCatalyst 부여합니다.

AWS 관리형 임시 자격 증명

AWS 관리형 임시 자격 증명이 지원하는 작업 목록을 찾고 있다면 다음으로 건너뛰세요. AWS 관리형 임시 자격 증명이 지원하는 작업

AWS Cloud9 EC2개발 환경의 경우 환경에서 임시 AWS Cloud9 AWS 액세스 자격 증명을 사용할 수 있도록 합니다. 이러한 자격 증명을 AWS 관리형 임시 자격 증명이라고 합니다. 이 기능에는 다음과 같은 이점이 있습니다.

  • AWS 엔티티 (예: IAM 사용자) 의 영구 AWS 액세스 자격 증명을 환경 어디에도 저장할 필요가 없습니다. 따라서 사용자가 모르게 승인 없이 환경 멤버가 해당 자격 증명에 액세스할 수 없습니다.

  • 환경에 연결되는 Amazon EC2 인스턴스에 인스턴스 프로필을 수동으로 설정, 관리 또는 연결할 필요가 없습니다. 인스턴스 프로파일은 임시 AWS 액세스 자격 증명을 관리하는 또 다른 접근 방식입니다.

  • AWS Cloud9 임시 자격 증명을 지속적으로 갱신하므로 단일 자격 증명 세트를 제한된 기간 동안만 사용할 수 있습니다. 이는 AWS 보안 모범 사례입니다. 자세한 내용은 AWS 관리형 임시 자격 증명 생성 및 업데이트 단원을 참조하십시오.

  • AWS Cloud9 임시 자격 증명을 사용하여 환경의 AWS 작업 및 리소스에 액세스하는 방법을 추가로 제한합니다. 이는 AWS 보안 모범 사례이기도 합니다.

중요

현재 환경의 EC2 인스턴스가 프라이빗 서브넷에서 시작되는 경우 AWS 관리형 임시 자격 증명을 사용하여 EC2 환경이 AWS 엔티티 (예: IAM 사용자) 를 대신하여 AWS 서비스에 액세스하도록 허용할 수 없습니다.

프라이빗 서브넷으로 EC2 인스턴스를 시작할 수 있는 시기에 대한 자세한 내용은 을 참조하십시오. 에 대한 서브넷을 생성하십시오. AWS Cloud9

참고

AWS 관리형 임시 자격 증명을 사용할 때는 인라인 정책 대신 AWS 관리형 정책을 사용하는 것이 좋습니다.

EC2환경이 AWS 엔티티 (예: IAM 사용자) 를 AWS service 대신하여 액세스를 시도할 때마다 AWS 관리형 임시 자격 증명이 작동하는 방식은 다음과 같습니다.

  1. AWS Cloud9 호출 AWS 엔티티 (예: IAM 사용자) 가 요청된 리소스에 대해 요청된 작업을 수행할 권한이 있는지 확인합니다 AWS. 권한이 없거나 명시적으로 거부되면 요청이 실패합니다.

  2. AWS Cloud9 AWS 관리되는 임시 자격 증명을 검사하여 해당 권한이 요청된 리소스에 대해 요청된 작업을 허용하는지 확인합니다 AWS. 권한이 없거나 명시적으로 거부되면 요청이 실패합니다. 임시 자격 증명 지원을 AWS 관리하는 권한 목록은 을 참조하십시오AWS 관리형 임시 자격 증명이 지원하는 작업.

  • AWS 엔티티와 AWS 관리형 임시 자격 증명이 모두 요청된 리소스에 대해 요청된 작업을 허용하면 요청이 성공합니다.

  • AWS 엔티티 또는 AWS 관리형 임시 자격 증명이 요청된 리소스에 대해 요청된 작업을 명시적으로 거부하거나 명시적으로 허용하지 않는 경우 요청은 실패합니다. 즉, 호출 AWS 엔티티에 올바른 권한이 있더라도 명시적으로 AWS Cloud9 허용하지 않으면 요청이 실패합니다. 마찬가지로 특정 리소스에 대해 특정 작업을 수행하도록 AWS Cloud9 허용하는 경우 AWS 엔티티에서 명시적으로 허용하지 않으면 요청이 실패합니다.

환경 소유자는 다음과 같이 언제든지 해당 EC2 환경에 대한 AWS 관리형 임시 자격 증명을 켜거나 끌 수 있습니다.

  1. 환경을 연 상태에서 메뉴 표시줄의 기본 설정을 선택합니다AWS Cloud9. AWS Cloud9 IDE

  2. 기본 설정 탭의 탐색 창에서 AWS 설정, 자격 증명을 선택합니다.

  3. AWS 관리형 임시 자격 증명를 사용하여 AWS 관리형 임시 자격 증명을 켜거나 끕니다.

참고

AWS Cloud9 API작업을 UpdateEnvironment호출하고 managedCredentialsAction 매개 변수에 값을 할당하여 AWS 관리형 임시 자격 증명을 켜거나 끌 수도 있습니다. AWS SDKs및 와 같은 표준 AWS 도구를 사용하여 이 API 작업을 요청할 수 있습니다. AWS CLI

AWS 관리형 임시 자격 증명을 끄면 요청한 AWS 엔티티에 관계없이 환경에서 아무 자격 증명에도 AWS services액세스할 수 없습니다. 하지만 환경에 대한 AWS 관리형 임시 자격 증명을 활성화할 수 없거나 활성화하고 싶지 않은데 AWS services액세스하려면 환경이 여전히 필요하다고 가정해 보겠습니다. 다음과 같은 대안을 고려하세요.

위의 대안은 환경에서 AWS 관리되는 임시 자격 증명을 통해 허용되거나 거부되는 모든 권한보다 우선합니다. EC2

AWS 관리형 임시 자격 증명이 지원하는 작업

AWS Cloud9 EC2개발 환경의 경우 AWS 관리형 임시 자격 증명은 호출자의 모든 AWS 리소스에 대한 모든 AWS 작업을 AWS 계정허용하지만 다음과 같은 제한이 있습니다.

  • 의 AWS Cloud9경우 다음 작업만 허용됩니다.

    • cloud9:CreateEnvironmentEC2

    • cloud9:CreateEnvironmentSSH

    • cloud9:DescribeEnvironmentMemberships

    • cloud9:DescribeEnvironments

    • cloud9:DescribeEnvironmentStatus

    • cloud9:UpdateEnvironment

  • 의 IAM 경우 다음 작업만 허용됩니다.

    • iam:AttachRolePolicy

    • iam:ChangePassword

    • iam:CreatePolicy

    • iam:CreatePolicyVersion

    • iam:CreateRole

    • iam:CreateServiceLinkedRole

    • iam:DeletePolicy

    • iam:DeletePolicyVersion

    • iam:DeleteRole

    • iam:DeleteRolePolicy

    • iam:DeleteSSHPublicKey

    • iam:DetachRolePolicy

    • iam:GetInstanceProfile

    • iam:GetPolicy

    • iam:GetPolicyVersion

    • iam:GetRole

    • iam:GetRolePolicy

    • iam:GetSSHPublicKey

    • iam:GetUser

    • iam:List*

    • iam:PassRole

    • iam:PutRolePolicy

    • iam:SetDefaultPolicyVersion

    • iam:UpdateAssumeRolePolicy

    • iam:UpdateRoleDescription

    • iam:UpdateSSHPublicKey

    • iam:UploadSSHPublicKey

  • 역할과 상호 작용하는 모든 IAM 작업은 로 시작하는 역할 이름에만 허용됩니다Cloud9-. 하지만 iam:PassRole은 모든 역할 이름에 작동합니다.

  • AWS Security Token Service (AWS STS) 의 경우 다음 작업만 허용됩니다.

    • sts:GetCallerIdentity

    • sts:DecodeAuthorizationMessage

  • 지원되는 모든 AWS 작업은 환경의 IP 주소로 제한됩니다. 이는 AWS 보안 모범 사례입니다.

액세스할 EC2 환경이 필요한 작업 또는 리소스를 AWS Cloud9 지원하지 않는 경우 또는 특정 EC2 환경에서 AWS 관리형 임시 자격 증명이 꺼져 있는데 다시 켤 수 없는 경우에는 다음 대안을 고려해 보십시오.

위의 대안은 환경에서 AWS 관리되는 임시 자격 증명을 통해 허용되거나 거부되는 모든 권한보다 우선합니다. EC2

AWS 관리형 임시 자격 증명 생성 및 업데이트

AWS Cloud9 EC2개발 환경의 경우 환경을 처음 열 때 AWS 관리형 임시 자격 증명이 생성됩니다.

AWS 관리형 임시 자격 증명은 다음 조건 중 하나에서 업데이트됩니다.

  • 특정 기간이 경과할 때마다. 현재, 이 값은 5분입니다.

  • 웹 브라우저 탭을 다시 로드할 때마다 해당 환경에 IDE 대한 정보가 표시됩니다.

  • 환경에 대한 ~/.aws/credentials 파일에 나열된 타임스탬프에 도달할 때.

  • AWS managed temporary credentials(관리형 임시 자격 증명) 설정이 꺼져 있는 경우 다시 켤 때마다. (이 설정을 보거나 변경하려면 의 IDE 메뉴 막대에서 환경설정을 선택하십시오AWS Cloud9. 기본 설정 탭의 탐색 창에서 AWS 설정, 자격 증명을 선택합니다.

  • 보안을 위해 AWS 관리형 임시 자격 증명은 15분 후에 자동으로 만료됩니다. 자격 증명을 새로 고치려면 환경 소유자가 를 통해 AWS Cloud9 환경에 연결되어 있어야 합니다. IDE 환경 소유자의 역할에 대한 자세한 내용은 AWS 관리형 임시 자격 증명에 대한 액세스 제어 섹션을 참조하세요.

AWS 관리형 임시 자격 증명에 대한 액세스 제어

AWS 관리되는 임시 자격 증명이 있는 공동 작업자는 다른 사람과 상호 작용하는 AWS Cloud9 데 사용할 수 있습니다. AWS services신뢰할 수 있는 공동 작업자만 AWS 관리형 임시 자격 증명을 사용하도록 하기 위해, 환경 소유자가 아닌 다른 사람이 새 멤버를 추가한 경우 이러한 자격 증명을 사용할 수 없습니다. 자격 증명은 ~/.aws/credentials 파일을 삭제하면 사용 중지됩니다.

중요

AWS 또한 관리형 임시 자격 증명은 15분마다 자동으로 만료됩니다. 공동 작업자가 자격 증명을 계속 사용할 수 있도록 자격 증명을 새로 고치려면 환경 소유자가 를 통해 환경에 연결되어 있어야 합니다. AWS Cloud9 IDE

환경 소유자만 AWS 관리형 임시 자격 증명을 다시 활성화하여 다른 구성원과 공유할 수 있습니다. 환경 소유자가 를 열면 AWS 관리형 임시 자격 증명이 비활성화되었는지 확인하는 대화 상자가 나타납니다. IDE 환경 소유자는 모든 멤버에 대해 자격 증명을 다시 사용하도록 설정하거나 모든 멤버에 대해 자격 증명을 사용 중지할 수 있습니다.

주의

보안 모범 사례를 준수하려면 환경에 마지막으로 추가된 사용자의 ID가 확실하지 않은 경우 관리형 임시 자격 증명을 사용하지 않도록 설정합니다. 읽기/쓰기 권한이 있는 멤버 목록은 [협업(Collaborate)] 창에서 확인할 수 있습니다.