Windows 컨테이너에 gMSA 사용 - Amazon Elastic Container Service

문서의 영문과 번역 사이에 충돌이 있는 경우에는 영문 버전을 따릅니다. 번역 버전은 기계 번역을 사용하여 제공합니다.

Windows 컨테이너에 gMSA 사용

Amazon ECS 는 특수 서비스 계정 유형 그룹 관리 서비스 계정 (gMSA).

.NET 응용 프로그램과 같은 Windows 기반 네트워크 응용 프로그램은 사용자와 서비스 간의 인증 및 권한 부여 관리를 용이하게 합니다. 개발자는 일반적으로 Active Directory와 통합되고 실행되는 애플리케이션을 설계합니다. 도메인에 가입된 서버입니다. Windows 컨테이너는 도메인에 연결할 수 없으므로 gMSA로 실행되도록 Windows 컨테이너를 구성해야 합니다.

gMSA를 사용하여 실행되는 Windows 컨테이너는 호스트에 의존합니다. Amazon EC2 인스턴스 검색 Active Directory 도메인 컨트롤러의 gMSA 자격 증명을 사용하여 컨테이너 인스턴스. 자세한 내용은 을 참조하십시오. Windows 컨테이너용 gMSA 생성.

Considerations

Windows 컨테이너용 gMSA를 사용할 때는 다음 사항을 고려해야 합니다.

  • 사용 시 Amazon ECS가 최적화된 Windows Server 2016 Full AMI 컨테이너 인스턴스의 경우 컨테이너 호스트 이름은 자격 증명 사양 파일. 컨테이너의 호스트 이름을 지정하려면 hostname 컨테이너 정의 매개 변수. 자세한 내용은 참조 네트워크 설정.

Prerequisites

다음은 Windows 컨테이너용 gMSA 기능을 사용하기 위한 전제 조건입니다. Amazon ECS.

  • 활성 디렉터리를 사용하여 Amazon ECS Windows 컨테이너 인스턴스는 에 가입할 수 있습니다. Amazon ECS 는 다음을 지원합니다.

    • AWS Directory Service, 이는 AWS 관리형 Active Directory 호스트: Amazon EC2. 대상 자세한 내용은 AWS 관리형 Microsoft AD 시작하기 에서 AWS Directory Service Administration Guide.

    • 온프레미스 Active Directory의 경우 Amazon ECS 윈도우 컨테이너 인스턴스는 도메인 에 가입할 수 있습니다. 자세한 내용은 을 참조하십시오. AWS 직접 연결.

  • Active Directory의 기존 gMSA 계정입니다. 자세한 내용은 을 참조하십시오. Windows 컨테이너용 gMSA 생성.

  • 더 Amazon ECS 를 호스팅하는 Windows 컨테이너 인스턴스 Amazon ECS 작업은 도메인이어야 합니다. Active Directory 보안의 구성원이 될 수 있습니다. gMSA 계정에 액세스할 수 있는 그룹입니다.

에서 gMSA 지원 Windows 컨테이너 설정 Amazon ECS

Amazon ECS 는 전파에 사용된 gMSA 메타데이터를 포함하는 자격 증명 사양 파일을 사용합니다. Windows 컨테이너에 대한 gMSA 계정 컨텍스트. 자격 증명 사양을 생성할 수 있습니다. 파일 및 참조 dockerSecurityOptions 태스크의 필드 정의. 자격 증명 사양 파일에 암호가 없습니다.

다음은 자격 증명 사양 파일의 예입니다.

{ "CmsPlugins": [ "ActiveDirectory" ], "DomainJoinConfig": { "Sid": "S-1-5-21-2554468230-2647958158-2204241789", "MachineAccountName": "WebApp01", "Guid": "8665abd4-e947-4dd0-9a51-f8254943c90b", "DnsTreeName": "example.com", "DnsName": "example.com", "NetBiosName": "example" }, "ActiveDirectoryConfig": { "GroupManagedServiceAccounts": [ { "Name": "WebApp01", "Scope": "example.com" } ] } }

에서 자격 증명 사양 파일 참조 태스크 정의

Amazon ECS 는 에서 자격 증명 사양 파일을 참조하는 다음 방법을 지원합니다. dockerSecurityOptions 태스크 정의의 필드.

Amazon S3 버킷

자격 증명 사양을 Amazon S3 그 다음 Amazon 리소스 이름(ARN) Amazon S3 통 안에 dockerSecurityOptions 태스크 정의 의 필드.

{ "family": "", "executionRoleArn": "", "containerDefinitions": [ { "name": "", ... "dockerSecurityOptions": [ "credentialspec:arn:aws:s3:::${BucketName}/${ObjectName}" ], ... } ], ... }

또한 다음 권한을 인라인 정책으로 에 추가해야 합니다. Amazon ECS 태스크 실행 IAM 역할에 따라 사용자의 태스크에 액세스 권한을 Amazon S3 버킷.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor", "Effect": "Allow", "Action": [ "s3:Get*", "s3:List*" ], "Resource": [ "arn:aws:s3:::{bucket_name}", "arn:aws:s3:::{bucket_name}/{object}" ] } ] }

SSM 파라미터 저장소 파라미터

자격 증명 사양을 SSM 매개 변수 저장 매개 변수 및 다음 페이지의 Amazon 리소스 이름(ARN)을 SSM 파라미터 저장소 파라미터 에서 dockerSecurityOptions 태스크 정의 의 필드.

{ "family": "", "executionRoleArn": "", "containerDefinitions": [ { "name": "", ... "dockerSecurityOptions": [ "credentialspec:arn:aws:ssm:region:111122223333:parameter/parameter_name" ], ... } ], ... }

또한 다음 권한을 인라인 정책으로 에 추가해야 합니다. Amazon ECS 태스크 실행 IAM 역할에 따라 사용자의 태스크에 액세스 권한을 SSM 파라미터 저장소 파라미터.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:GetParameters" ], "Resource": [ "arn:aws:ssm:region:111122223333:parameter/parameter_name" ] } ] }

로컬 파일

로컬 파일의 자격 증명 사양 세부 정보를 사용하여 의 파일 경로를 참조하십시오. 을 dockerSecurityOptions 태스크 정의 의 필드.

{ "family": "", "executionRoleArn": "", "containerDefinitions": [ { "name": "", ... "dockerSecurityOptions": [ "credentialspec:file://CredentialSpecFile.json" ], ... } ], ... }