기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
자습서: Amazon OpenSearch 서버리스의 보안 시작하기 (콘솔)
이 자습서는 Amazon OpenSearch Serverless 콘솔을 사용하여 보안 정책을 생성하고 관리하는 기본 단계를 안내합니다.
이 자습서에서는 다음 단계를 완료합니다.
이 자습서에서는 AWS Management Console을 사용하여 컬렉션을 설정하는 과정을 안내합니다. AWS CLI를 사용하는 동일한 단계는 자습서: Amazon OpenSearch 서버리스 (CLI) 에서 보안 시작하기 섹션을 참조하세요.
1단계: 권한 구성
참고
Action":"aoss:*"
또는 Action":"*"
과 같은 보다 광범위한 자격 증명 기반 정책을 이미 사용 중인 경우 이 단계를 건너뛸 수 있습니다. 하지만 프로덕션 환경에서는 최소 권한 원칙을 따르고 작업을 완료하는 데 필요한 최소 권한만 할당하는 것이 좋습니다.
이 자습서를 완료하려면 올바른 IAM 권한이 있어야 합니다. 사용자 또는 역할에는 다음과 같은 최소 권한이 포함된 연결된 자격 증명 기반 정책이 있어야 합니다.
{ "Version": "2012-10-17", "Statement": [ { "Action": [ "aoss:ListCollections", "aoss:BatchGetCollection", "aoss:CreateCollection", "aoss:CreateSecurityPolicy", "aoss:GetSecurityPolicy", "aoss:ListSecurityPolicies", "aoss:CreateAccessPolicy", "aoss:GetAccessPolicy", "aoss:ListAccessPolicies" ], "Effect": "Allow", "Resource": "*" } ] }
OpenSearch 서버리스 권한의 전체 목록은 을 참조하십시오. Amazon OpenSearch 서버리스를 위한 ID 및 액세스 관리
2단계: 암호화 정책 생성
암호화 정책은 OpenSearch 서버리스가 컬렉션을 암호화하는 데 사용할 AWS KMS 키를 지정합니다. AWS 관리형 키 또는 다른 키를 사용하여 컬렉션을 암호화할 수 있습니다. 이 자습서에서는 간소화를 위해 컬렉션을 AWS 관리형 키로 암호화합니다.
암호화 정책 생성하기
-
https://console.aws.amazon.com/aos/home
에서 아마존 OpenSearch 서비스 콘솔을 엽니다. -
왼쪽 탐색 창에서 Serverless(서버리스)를 확장하고 Encryption policies(암호화 정책)를 선택합니다.
-
Create encryption policy(암호화 정책 생성)를 선택합니다.
-
정책 이름을 books-policy로 지정합니다. 설명을 보려면 Encryption policy for books collection(책 컬렉션에 대한 암호화 정책)을 입력합니다.
-
Resources(리소스)에서 컬렉션 이름으로 지정할 books(책)를 입력합니다. 범위를 좀 더 넓히려면 별표(
books*
)를 포함하여 정책이 “books”(책)라는 단어로 시작하는 모든 컬렉션에 적용되도록 할 수 있습니다. -
Encryption(암호화)에서 Use AWS owned key를 선택한 상태로 유지합니다.
-
생성을 선택하세요.
3단계: 네트워크 정책 생성
네트워크 정책은 공용 네트워크에서 인터넷을 통해 컬렉션에 액세스할 수 있는지, 아니면 OpenSearch 서버리스 관리형 VPC 엔드포인트를 통해 액세스해야 하는지를 결정합니다. 이 자습서에서는 퍼블릭 액세스를 구성해 보겠습니다.
네트워크 정책 생성하기
-
왼쪽 탐색 창에서 Network policies(네트워크 정책)를 선택한 후 Create network policy(네트워크 정책 생성)를 선택합니다.
-
정책 이름을 books-policy(책-정책)로 지정합니다. 설명을 보려면 Network policy for books collection(책 컬렉션에 대한 네트워크 정책)을 입력합니다.
-
Rule 1(규칙 1)에서 규칙의 이름을 Public access for books collection(책 컬렉션을 위한 퍼블릭 액세스)으로 지정합니다.
-
이 자습서에서는 간소화를 위해 books(책) 컬렉션에 대한 공개 액세스를 구성해 보겠습니다. 액세스 유형으로 Public(퍼블릭)을 선택합니다.
-
대시보드에서 컬렉션에 액세스할 것입니다. OpenSearch 이렇게 하려면 대시보드와 OpenSearch 엔드포인트에 대한 네트워크 액세스를 구성해야 합니다. 그렇지 않으면 대시보드가 작동하지 않습니다.
리소스 유형에서는 OpenSearch엔드포인트 액세스와 대시보드 액세스를 모두 활성화하십시오. OpenSearch
-
두 입력 상자 모두에 Collection Name = books(컬렉션 이름 = 책)를 입력합니다. 이 설정은 단일 컬렉션(
books
)에만 적용되도록 정책의 범위를 축소합니다. 규칙은 다음과 같아야 합니다. -
생성을 선택하세요.
4단계: 데이터 액세스 정책 생성
데이터 액세스를 구성할 때까지는 컬렉션 데이터에 액세스할 수 없습니다. 데이터 액세스 정책은 1단계에서 구성한 IAM 자격 증명 기반 정책과는 별개입니다. 이를 통해 사용자는 컬렉션 내의 실제 데이터에 액세스할 수 있습니다.
이 자습서에서는 단일 사용자에게 books(책) 컬렉션의 데이터를 인덱싱하는 데 필요한 권한을 제공합니다.
데이터 액세스 정책 생성하기
-
왼쪽 탐색 창에서 Data access policies(데이터 액세스 정책)를 선택하고 Create access policy(액세스 정책 생성)를 선택합니다.
-
정책 이름을 books-policy(책-정책)로 지정합니다. 설명을 보려면 Data access policy for books collection(책 컬렉션에 대한 데이터 액세스 정책)을 입력합니다.
-
정책 정의 방법으로 JSON을 선택하고 JSON 편집기에 다음 정책을 붙여 넣습니다.
기본 ARN을 OpenSearch 대시보드에 로그인하고 데이터를 인덱싱하는 데 사용할 계정의 ARN으로 바꾸십시오.
[ { "Rules":[ { "ResourceType":"index", "Resource":[ "index/books/*" ], "Permission":[ "aoss:CreateIndex", "aoss:DescribeIndex", "aoss:ReadDocument", "aoss:WriteDocument", "aoss:UpdateIndex", "aoss:DeleteIndex" ] } ], "Principal":[ "arn:aws:iam::
123456789012
:user
/my-user
" ] } ]이 정책은 단일 사용자에게 books(책) 컬렉션에서 인덱스를 생성하고, 일부 데이터를 인덱싱하고, 검색하는 데 필요한 최소 권한을 제공합니다.
-
생성을 선택하세요.
5단계: 컬렉션 생성
이제 암호화 및 네트워크 정책을 구성했으므로 일치하는 컬렉션을 생성할 수 있으며 보안 설정이 자동으로 적용됩니다.
서버리스 컬렉션을 만들려면 OpenSearch
-
왼쪽 탐색 창에서 Collections(컬렉션)를 선택하고 Create collection(컬렉션 생성)을 선택합니다.
-
컬렉션 이름을 books(책)로 지정합니다.
-
컬렉션 유형에서 Search(검색)를 선택합니다.
-
암호화에서 OpenSearch 서버리스는 컬렉션 이름이 암호화 정책과 일치한다고 알려줍니다.
books-policy
-
네트워크 액세스 설정에서 OpenSearch 서버리스는 컬렉션 이름이 네트워크 정책과 일치한다고 알려줍니다.
books-policy
-
다음을 선택합니다.
-
데이터 액세스 정책 옵션에서 OpenSearch 서버리스는 컬렉션 이름이 데이터 액세스 정책과 일치한다고 알려줍니다.
books-policy
-
다음을 선택합니다.
-
컬렉션 구성을 검토하고 Submit(제출)을 선택합니다. 컬렉션을 초기화하는 데 보통 1분도 채 걸리지 않습니다.
6단계: 데이터 업로드 및 검색
Postman 또는 curl을 사용하여 OpenSearch 서버리스 컬렉션에 데이터를 업로드할 수 있습니다. 간결하게 설명하기 위해 이 예시에서는 대시보드 콘솔 내의 Dev Tools를 사용합니다. OpenSearch
컬렉션의 데이터를 인덱싱하고 검색하기
-
왼쪽 탐색 창에서 Collections(컬렉션)를 선택하고 books(책) 컬렉션을 선택하여 세부 정보 페이지를 엽니다.
-
컬렉션에 사용할 OpenSearch 대시보드 URL을 선택합니다. URL은
https://
형식을 취합니다.collection-id
.us-east-1.aoss.amazonaws.com/_dashboards -
데이터 액세스 정책에 지정한 보안 주체의 AWS액세스 및 비밀 키를 사용하여 OpenSearch 대시보드에 로그인합니다.
-
OpenSearch 대시보드에서 왼쪽 탐색 메뉴를 열고 Dev Tools를 선택합니다.
-
books-index라는 단일 인덱스를 생성하려면 다음 명령을 실행합니다.
PUT books-index
-
books-index라는 단일 문서를 인덱싱하려면 다음 명령을 실행합니다.
PUT books-index/_doc/1 { "title": "The Shining", "author": "Stephen King", "year": 1977 }
-
OpenSearch 대시보드에서 데이터를 검색하려면 인덱스 패턴을 하나 이상 구성해야 합니다. OpenSearch 는 이러한 패턴을 사용하여 분석하려는 인덱스를 식별합니다. Dashboards 주 메뉴를 열고 스택 관리(Stack Management)를 선택하고 인덱스 패턴(Index Patterns)을 선택한 다음 인덱스 패턴 생성(Create index pattern)을 선택합니다. 이 자습서에서는 books-index를 입력하세요.
-
다음 단계(Next step)를 선택한 후 인덱스 패턴 생성(Create index pattern)을 선택합니다. 패턴이 생성되면
author
,title
와 같은 다양한 문서 필드를 볼 수 있습니다. -
데이터 검색을 시작하려면 기본 메뉴를 다시 열고 Discover(발견)를 선택하거나 검색 API
를 사용합니다.