기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
OpenSearch UI 애플리케이션에 대한 네트워크 액세스 제어 구성 참조
다음 섹션에서는 OpenSearch UI가 지원하는 각 네트워크 액세스 제어에 대한 정책 예제를 제공합니다. 각 예제에는 이를 적용하는 AWS Command Line Interface (AWS CLI) 명령이 포함되어 있습니다. OpenSearch UI가 이러한 정책을 평가하는 방법에 대한 설명과 가장 일반적인 작업에 대한 단계별 연습은 섹션을 참조하세요OpenSearch UI 애플리케이션에 대한 네트워크 액세스 제한.
보호하려는 범위와 사용자가 연결하는 네트워크 경로를 기반으로 예제를 선택합니다.
| Scope | 컨트롤 | 로그인 페이지를 차단합니다. |
|---|---|---|
| 단일 보안 주체 | 자격 증명 기반 정책 | 아니요 |
| 단일 VPC 엔드포인트 | VPC 엔드포인트 정책 | 아니요 |
| 조직의 모든 계정 | 리소스 제어 정책(RCP) | 예 |
참고
거부하는 리소스 제어 정책만 네트워크 외부 사용자가 인증하기 전에 opensearch:ViewLoginPage 차단합니다. 자격 증명 기반 및 VPC 엔드포인트 정책은 사용자가 로그인한 후에 적용됩니다.
주제
보안 주체를 VPC 엔드포인트로 제한
다음 자격 증명 기반 정책은 요청이 지정된 인터페이스 VPC 엔드포인트를 통해 도착하지 않는 한 OpenSearch UI 애플리케이션에 대한 사용자 또는 역할 액세스를 거부합니다. 애플리케이션에 액세스하는 IAM 보안 주체에 연결합니다. 자리 표시자 값을 자체 VPC 엔드포인트 ID로 바꿉니다.
보안 주체를 VPC 엔드포인트로 제한하려면
-
다음 정책을 라는 로컬 파일에 저장합니다
policy.json.{ "Version": "2012-10-17", "Statement": [ { "Sid": "DenyOpenSearchUIAccessOutsideVpce", "Effect": "Deny", "Action": "opensearch:ApplicationAccessAll", "Resource": "arn:aws:opensearch:*:*:application/*", "Condition": { "StringNotEqualsIfExists": { "aws:SourceVpce": "vpc-endpoint-id" } } } ] } -
IAM 정책을 생성합니다.
aws iam create-policy \ --policy-nameDenyOpenSearchUIOutsideVpce\ --description "Denies OpenSearch UI access outside the approved VPC endpoint" \ --policy-document file://policy.json응답에는 정책 ARN이 포함됩니다. 다음 단계에서이 값을 기록해 둡니다.
-
애플리케이션에 액세스하는 IAM 역할 또는 사용자에 정책을 연결합니다.
aws iam attach-role-policy \ --role-nameOpenSearchUIUserRole\ --policy-arnarn:aws:iam::111122223333:policy/DenyOpenSearchUIOutsideVpce
정책이 적용되면 보안 주체는 승인된 VPC 엔드포인트 외부에서 애플리케이션에 액세스할 때 403 forbidden 응답을 받습니다. 엔드포인트를 통한 액세스는 정상적으로 작동합니다.
보안 주체를 IP 주소 범위로 제한
다음 자격 증명 기반 정책은 요청이 회사 네트워크의 퍼블릭 송신 범위와 같은 승인된 IP 주소 범위에서 시작되지 않는 한 액세스를 거부합니다. 자리 표시자 값을 CIDR 표기법의 고유한 IP 주소 범위로 바꿉니다.
보안 주체를 IP 주소 범위로 제한하려면
-
다음 정책을 라는 로컬 파일에 저장합니다
policy.json.{ "Version": "2012-10-17", "Statement": [ { "Sid": "DenyOpenSearchUIAccessOutsideCorpNetwork", "Effect": "Deny", "Action": "opensearch:ApplicationAccessAll", "Resource": "arn:aws:opensearch:*:*:application/*", "Condition": { "NotIpAddress": { "aws:SourceIp": [ "203.0.113.0/24", "198.51.100.0/24" ] } } } ] } -
IAM 정책을 생성합니다.
aws iam create-policy \ --policy-nameDenyOpenSearchUIExternalAccess\ --description "Denies OpenSearch UI access from outside corporate IP ranges" \ --policy-document file://policy.json -
애플리케이션에 액세스하는 IAM 역할 또는 사용자에 정책을 연결합니다.
aws iam attach-role-policy \ --role-nameOpenSearchUIUserRole\ --policy-arnarn:aws:iam::111122223333:policy/DenyOpenSearchUIExternalAccess
참고
요청이 VPC 엔드포인트를 통해 도착하면 aws:SourceIp이 존재하지 않습니다. 프라이빗(VPC 엔드포인트) 및 퍼블릭(IP 제한) 액세스 경로를 모두 사용하는 경우 합법적인 VPC 엔드포인트 트래픽을 실수로 거부하지 않도록 정책의 두 조건 키를 모두 고려하세요.
VPC 엔드포인트 정책을 사용한 액세스 제한
자격 증명 기반 정책은 특정 보안 주체를 관리합니다. 연결된 보안 주체에 관계없이 VPC 엔드포인트를 통해 연결할 수 있는 애플리케이션을 제어하려면 정책을 인터페이스 VPC 엔드포인트 자체에 연결합니다. 다음 엔드포인트 정책은 특정 애플리케이션에 대한 액세스만 허용합니다. 자리 표시자 값을 자체 AWS 리전, 계정 ID 및 애플리케이션 ID로 바꿉니다.
VPC 엔드포인트 정책을 사용하여 액세스를 제한하려면
-
다음 정책을 라는 로컬 파일에 저장합니다
policy.json.{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowOpenSearchUIApplication", "Effect": "Allow", "Principal": "*", "Action": "opensearch:ApplicationAccessAll", "Resource": "arn:aws:opensearch:region:account-id:application/application-id" } ] } -
인터페이스 VPC 엔드포인트에 정책을 적용합니다.
aws ec2 modify-vpc-endpoint \ --vpc-endpoint-idvpce-1a2b3c4d5e6f7g8h9\ --policy-document file://policy.json
OpenSearch UI의 VPC 엔드포인트 정책에 대한 자세한 내용은 섹션을 참조하세요VPC 엔드포인트에서 OpenSearch UI에 대한 액세스 관리.
조직 전체에서 VPC 엔드포인트 액세스 적용
자격 증명 기반 정책은 특정 보안 주체를 제한하고 VPC 엔드포인트 정책은 특정 엔드포인트를 제한합니다. 조직의 모든 계정에서 네트워크 액세스를 균일하게 적용하고 인증하기 전에 네트워크 외부 사용자를 차단하려면 AWS 조직에 리소스 제어 정책(RCP)을 연결합니다.
다음 리소스 제어 정책은 요청이 지정된 VPC 엔드포인트를 통해 도착하지 않는 한 조직의 OpenSearch UI 애플리케이션에 대한 모든 액세스를 거부합니다. 사전 인증 로그인 페이지(opensearch:ViewLoginPage)와 인증된 액세스()를 모두 거부합니다opensearch:ApplicationAccessAll. 승인된 네트워크 외부의 사용자는 로그인 페이지를 로드하거나 애플리케이션에 액세스할 수 없습니다. 자리 표시자 값을 자체 VPC 엔드포인트 ID로 바꿉니다.
조직 전체에서 VPC 엔드포인트 액세스를 적용하려면
-
다음 정책을 라는 로컬 파일에 저장합니다
policy.json.{ "Version": "2012-10-17", "Statement": [ { "Sid": "DenyOpenSearchUIAccessOutsideVpce", "Effect": "Deny", "Principal": "*", "Action": [ "opensearch:ViewLoginPage", "opensearch:ApplicationAccessAll" ], "Resource": "arn:aws:opensearch:*:*:application/*", "Condition": { "StringNotEqualsIfExists": { "aws:SourceVpce": "vpc-endpoint-id" } } } ] } -
리소스 제어 정책을 생성합니다. 조직의 관리 계정 또는 위임된 관리자 계정에서이 명령을 실행합니다.
aws organizations create-policy \ --nameDenyOpenSearchUIOutsideVpce\ --description "Denies OpenSearch UI access outside the approved VPC endpoint" \ --type RESOURCE_CONTROL_POLICY \ --content file://policy.json -
보호하려는 범위에 따라 조직 루트, 조직 단위 또는 계정에 정책을 연결합니다.
aws organizations attach-policy \ --policy-idp-example12345\ --target-id111122223333자세한 내용은 Organizations 사용 설명서의 리소스 제어 정책 연결 및 분리를 참조하세요. AWS
정책이 적용된 후에는 승인된 VPC 엔드포인트 외부의 사용자가 애플리케이션에 액세스할 수 없습니다. 애플리케이션의 인증 유형과 요청된 URL에 따라 사용자는 로그인 페이지 대신 403 forbidden 응답을 받거나 로그인으로 리디렉션된 다음 애플리케이션에 대한 액세스가 거부됩니다. VPC 엔드포인트를 통해 연결하는 경우 로그인 페이지로 이동하여 정상적으로 로그인합니다.
참고
리소스 제어 정책에 대한 변경 사항이 적용되는 데 최대 1분이 걸릴 수 있습니다. 정책을 생성, 업데이트 또는 연결한 후 즉시 테스트하는 경우에도 이전 동작을 관찰할 수 있습니다.
조직 전체에서 VPC 액세스 적용
하나의 엔드포인트에 이름을 지정하는 대신 VPC의 모든 인터페이스 VPC 엔드포인트를 승인하려면를 사용합니다aws:SourceVpc. 다음 리소스 제어 정책은 요청이 지정된 VPC를 통해 도착하지 않는 한 조직 전체의 액세스를 거부합니다. 자리 표시자 값을 자체 VPC ID로 바꿉니다.
조직 전체에서 VPC 액세스를 적용하려면
-
다음 정책을 라는 로컬 파일에 저장합니다
policy.json.{ "Version": "2012-10-17", "Statement": [ { "Sid": "DenyOpenSearchUIAccessOutsideVpc", "Effect": "Deny", "Principal": "*", "Action": [ "opensearch:ViewLoginPage", "opensearch:ApplicationAccessAll" ], "Resource": "arn:aws:opensearch:*:*:application/*", "Condition": { "StringNotEqualsIfExists": { "aws:SourceVpc": "vpc-id" } } } ] } -
리소스 제어 정책을 생성하고 연결합니다.
aws organizations create-policy \ --nameDenyOpenSearchUIOutsideVpc\ --description "Denies OpenSearch UI access outside the approved VPC" \ --type RESOURCE_CONTROL_POLICY \ --content file://policy.json aws organizations attach-policy \ --policy-idp-example12345\ --target-id111122223333
조직 전체에서 IP 주소 범위 액세스 적용
다음 리소스 제어 정책은 요청이 회사 네트워크의 퍼블릭 송신 범위와 같은 승인된 IP 주소 범위에서 시작되지 않는 한 조직 전체의 액세스를 거부합니다. 자리 표시자 값을 CIDR 표기법의 고유한 IP 주소 범위로 바꿉니다.
조직 전체에서 IP 주소 범위 액세스를 적용하려면
-
다음 정책을 라는 로컬 파일에 저장합니다
policy.json.{ "Version": "2012-10-17", "Statement": [ { "Sid": "DenyOpenSearchUIAccessOutsideCorpNetwork", "Effect": "Deny", "Principal": "*", "Action": [ "opensearch:ViewLoginPage", "opensearch:ApplicationAccessAll" ], "Resource": "arn:aws:opensearch:*:*:application/*", "Condition": { "NotIpAddress": { "aws:SourceIp": [ "203.0.113.0/24", "198.51.100.0/24" ] } } } ] } -
리소스 제어 정책을 생성하고 연결합니다.
aws organizations create-policy \ --nameDenyOpenSearchUIExternalAccess\ --description "Denies OpenSearch UI access from outside corporate IP ranges" \ --type RESOURCE_CONTROL_POLICY \ --content file://policy.json aws organizations attach-policy \ --policy-idp-example12345\ --target-id111122223333
참고
자격 증명 기반 IP 예제와 마찬가지로 aws:SourceIp는 VPC 엔드포인트를 통해 도착하는 요청에 존재하지 않습니다. 프라이빗 및 퍼블릭 액세스 경로를 모두 사용하는 경우 합법적인 VPC 엔드포인트 트래픽을 실수로 거부하지 않도록 두 조건 키를 모두 고려하세요.