

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

# Amazon OpenSearch Serverless에 대한 Identity and Access Management
<a name="security-iam-serverless"></a>

AWS Identity and Access Management (IAM)는 관리자가 AWS 리소스에 대한 액세스를 안전하게 제어하는 데 도움이 AWS 서비스 되는 입니다. IAM 관리자는 어떤 사용자가 OpenSearch Serverless 리소스를 사용할 수 있는 *인증*(로그인) 및 *권한*(권한 있음)을 받을 수 있는지 제어합니다. IAM은 추가 비용 없이 사용할 수 AWS 서비스 있는 입니다.

**Topics**
+ [OpenSearch Serverless에 대한 자격 증명 기반 정책](#security-iam-serverless-id-based-policies)
+ [OpenSearch Serverless의 정책 작업](#security-iam-serverless-id-based-policies-actions)
+ [OpenSearch Serverless에 대한 정책 리소스](#security-iam-serverless-id-based-policies-resources)
+ [Amazon OpenSearch Serverless에 사용되는 정책 조건 키](#security_iam_serverless-conditionkeys)
+ [OpenSearch Serverless를 사용한 ABAC](#security_iam_serverless-with-iam-tags)
+ [OpenSearch Serverless에서 임시 보안 인증 사용](#security_iam_serverless-tempcreds)
+ [OpenSearch Serverless에 대한 서비스 연결 역할](#security_iam_serverless-slr)
+ [기타 정책 유형](#security_iam_access-manage-other-policies)
+ [OpenSearch Serverless에 대한 자격 증명 기반 정책 예시](#security_iam_serverless_id-based-policy-examples)
+ [Amazon OpenSearch Serverless에 대한 IAM Identity Center 지원](serverless-iam-identity-center.md)

## OpenSearch Serverless에 대한 자격 증명 기반 정책
<a name="security-iam-serverless-id-based-policies"></a>

**ID 기반 정책 지원:** 예

ID 기반 정책은 IAM 사용자, 사용자 그룹 또는 역할과 같은 ID에 연결할 수 있는 JSON 권한 정책 문서입니다. 이러한 정책은 사용자 및 역할이 어떤 리소스와 어떤 조건에서 어떤 작업을 수행할 수 있는지를 제어합니다. 자격 증명 기반 정책을 생성하는 방법을 알아보려면 *IAM 사용 설명서*에서 [고객 관리형 정책으로 사용자 지정 IAM 권한 정의](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html)를 참조하세요.

IAM ID 기반 정책을 사용하면 허용되거나 거부되는 작업과 리소스뿐 아니라 작업이 허용되거나 거부되는 조건을 지정할 수 있습니다. JSON 정책에서 사용할 수 있는 모든 요소에 대해 알아보려면 *IAM 사용 설명서*의 [IAM JSON 정책 요소 참조](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html)를 참조하세요.

### OpenSearch Serverless에 대한 자격 증명 기반 정책 예시
<a name="security_iam_id-based-policy-examples"></a>

OpenSearch Serverless 자격 증명 기반 정책의 예를 보려면 [OpenSearch Serverless에 대한 자격 증명 기반 정책 예시](#security_iam_serverless_id-based-policy-examples)을(를) 참조하세요.

## OpenSearch Serverless의 정책 작업
<a name="security-iam-serverless-id-based-policies-actions"></a>

**정책 작업 지원:** 예

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

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

OpenSearch Serverless의 정책 작업은 작업 앞에 다음 접두사를 사용합니다.

```
aoss
```

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

```
"Action": [
      "aoss:{{action1}}",
      "aoss:{{action2}}"
         ]
```

와일드카드 문자(\*)를 사용하여 여러 작업을 지정할 수 있습니다. 예를 들어, `Describe`라는 단어로 시작하는 모든 작업을 지정하려면 다음 작업을 포함합니다.

```
"Action": "aoss:List*"
```

OpenSearch Serverless 자격 증명 기반 정책의 예를 보려면 [OpenSearch Serverless에 대한 자격 증명 기반 정책 예시](#security_iam_id-based-policy-examples)을(를) 참조하세요.

## OpenSearch Serverless에 대한 정책 리소스
<a name="security-iam-serverless-id-based-policies-resources"></a>

**정책 리소스 지원:** 예

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

`Resource` JSON 정책 요소는 작업이 적용되는 하나 이상의 객체를 지정합니다. 모범 사례에 따라 [Amazon 리소스 이름(ARN)](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html)을 사용하여 리소스를 지정합니다. 리소스 수준 권한을 지원하지 않는 작업의 경우, 와일드카드(\*)를 사용하여 해당 문이 모든 리소스에 적용됨을 나타냅니다.

```
"Resource": "*"
```

## Amazon OpenSearch Serverless에 사용되는 정책 조건 키
<a name="security_iam_serverless-conditionkeys"></a>

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

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

`Condition` 요소는 정의된 기준에 따라 문이 실행되는 시기를 지정합니다. 같음(equals) 또는 미만(less than)과 같은 [조건 연산자](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html)를 사용하여 정책의 조건을 요청의 값과 일치시키는 조건식을 생성할 수 있습니다. 모든 AWS 전역 조건 키를 보려면 *IAM 사용 설명서*의 [AWS 전역 조건 컨텍스트 키를](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html) 참조하세요.

ABAC(속성 기반 액세스 제어) 외에도 OpenSearch Serverless는 다음 조건 키를 지원합니다.
+ `aoss:collection`
+ `aoss:CollectionId`
+ `aoss:index`

액세스 정책 및 보안 정책에 대한 권한을 제공하는 경우에도 이러한 조건 키를 사용할 수 있습니다. 예제:

```
[
   {
      "Effect":"Allow",
      "Action":[
         "aoss:CreateAccessPolicy",
         "aoss:CreateSecurityPolicy"
      ],
      "Resource":"*",
      "Condition":{
         "StringLike":{
            "aoss:collection":"{{log}}"
         }
      }
   }
]
```

이 예시에서는 조건이 컬렉션 이름 또는 패턴과 일치하는 **규칙이 포함된 정책에 적용됩니다. 조건에는 다음과 같은 동작이 있습니다.
+ `StringEquals` - **정확한 리소스 문자열 “log”를 포함하는 규칙이 있는 정책에 적용됩니다(즉, `collection/log`).
+ `StringLike` - “log” 문자열을 **포함하는 리소스 문자열이 포함된 규칙이 있는 정책에 적용됩니다(즉, `collection/log` 또한 `collection/logs-application` 또는 `collection/applogs123`).

**참고**  
**컬렉션 조건 키는 인덱스 수준에서 적용되지 않습니다. 예를 들어 위의 정책에서 조건은 리소스 문자열 `index/logs-application/*`을 포함하는 액세스 또는 보안 정책에 적용되지 않습니다.

OpenSearch Serverless 조건 키 목록을 보려면 **서비스 승인 참조의 [Amazon OpenSearch Serverless에 대한 조건 키](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonopensearchserverless.html#amazonopensearchserverless-policy-keys)를 참조하세요. 조건 키를 사용할 수 있는 작업과 리소스에 대해 알아보려면 [Amazon OpenSearch Serverless에서 정의한 작업](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonopensearchserverless.html#amazonopensearchserverless-actions-as-permissions)을 참조하세요.

## OpenSearch Serverless를 사용한 ABAC
<a name="security_iam_serverless-with-iam-tags"></a>

**ABAC 지원(정책의 태그):** 예

속성 기반 액세스 제어(ABAC)는 태그라고 불리는 속성을 기반으로 권한을 정의하는 권한 부여 전략입니다. IAM 엔터티 및 AWS 리소스에 태그를 연결한 다음 보안 주체의 태그가 리소스의 태그와 일치할 때 작업을 허용하는 ABAC 정책을 설계할 수 있습니다.

태그에 근거하여 액세스를 제어하려면 `aws:ResourceTag/{{key-name}}`, `aws:RequestTag/{{key-name}}`또는 `aws:TagKeys`조건 키를 사용하여 정책의 [조건 요소](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html)에 태그 정보를 제공합니다.

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

ABAC에 대한 자세한 내용은 *IAM 사용 설명서*의 [ABAC 권한 부여를 통한 권한 정의](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction_attribute-based-access-control.html)를 참조하세요. ABAC 설정 단계가 포함된 자습서를 보려면 *IAM 사용 설명서*의 [속성 기반 액세스 제어(ABAC) 사용](https://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_attribute-based-access-control.html)을 참조하세요.

OpenSearch Serverless 리소스 태그 지정에 대한 자세한 내용은 [Amazon OpenSearch Serverless 컬렉션 태그 지정](tag-collection.md) 섹션을 참조하세요.

## OpenSearch Serverless에서 임시 보안 인증 사용
<a name="security_iam_serverless-tempcreds"></a>

**임시 자격 증명 지원:** 예

임시 자격 증명은 AWS 리소스에 대한 단기 액세스를 제공하며 페더레이션 또는 전환 역할을 사용할 때 자동으로 생성됩니다. 장기 액세스 키를 사용하는 대신 임시 자격 증명을 동적으로 생성하는 것이 AWS 좋습니다. 자세한 내용은 *IAM 사용 설명서*의 [IAM의 임시 보안 자격 증명](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html) 및 [IAM으로 작업하는AWS 서비스](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html) 섹션을 참조하세요.

## OpenSearch Serverless에 대한 서비스 연결 역할
<a name="security_iam_serverless-slr"></a>

**서비스 연결 역할 지원:** 예

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

OpenSearch Serverless 서비스 연결 역할 생성 및 관리에 대한 자세한 내용은 [서비스 연결 역할을 사용하여 OpenSearch Serverless 컬렉션 생성](serverless-service-linked-roles.md) 섹션을 참조하세요.

## 기타 정책 유형
<a name="security_iam_access-manage-other-policies"></a>

AWS 는 덜 일반적인 추가 정책 유형을 지원합니다. 이러한 정책 타입은 더 일반적인 정책 유형에 따라 사용자에게 부여되는 최대 권한을 설정할 수 있습니다.
+ **서비스 제어 정책(SCPs)** - SCPs는의 조직 또는 조직 단위(OU)에 대한 최대 권한을 지정하는 JSON 정책입니다 AWS Organizations. AWS Organizations 는 기업이 소유한 여러 AWS 계정을 그룹화하고 중앙에서 관리하기 위한 서비스입니다. 조직에서 모든 기능을 활성화할 경우, 서비스 제어 정책(SCP)을 임의의 또는 모든 계정에 적용할 수 있습니다. SCP는 각 계정 루트 사용자를 포함하여 멤버 AWS 계정의 엔터티에 대한 권한을 제한합니다. 조직 및 SCP에 대한 자세한 내용은 *AWS Organizations 사용 설명서*에서 [Service control policies](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scps.html)을 참조하세요.
+ **리소스 제어 정책(RCP)** - RCP는 소유한 각 리소스에 연결된 IAM 정책을 업데이트하지 않고 계정의 리소스에 대해 사용 가능한 최대 권한을 설정하는 데 사용할 수 있는 JSON 정책입니다. RCP는 멤버 계정의 리소스에 대한 권한을 제한하며 조직에 속하는지 여부에 관계없이 AWS 계정 루트 사용자를 포함한 ID에 대한 유효 권한에 영향을 줄 수 있습니다. RCP를 지원하는 AWS 서비스 목록을 포함하여 조직 및 RCPs에 대한 자세한 내용은 *AWS Organizations 사용 설명서*의 [리소스 제어 정책(RCPs)](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_rcps.html)을 참조하세요.

## OpenSearch Serverless에 대한 자격 증명 기반 정책 예시
<a name="security_iam_serverless_id-based-policy-examples"></a>

기본적으로 사용자 및 역할에는 OpenSearch Serverless 리소스를 생성하거나 수정할 수 있는 권한이 없습니다. 사용자에게 사용자가 필요한 리소스에서 작업을 수행할 권한을 부여하려면 IAM 관리자가 IAM 정책을 생성하면 됩니다.

이러한 예제 JSON 정책 문서를 사용하여 IAM ID 기반 정책을 생성하는 방법을 알아보려면 *IAM 사용 설명서*의 [IAM 정책 생성(콘솔)](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create-console.html)을 참조하세요.

각 리소스 유형에 대한 ARN의 형식을 포함하여 Amazon OpenSearch Serverless에서 정의한 작업 및 리소스 유형에 대한 자세한 내용은 **서비스 승인 참조의 [Amazon OpenSearch Serverless에 대한 작업, 리소스 및 조건 키](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonopensearchserverless.html)를 참조하세요.

**Topics**
+ [정책 모범 사례](#security_iam_serverless-policy-best-practices)
+ [콘솔에서 OpenSearch Serverless 사용](#security_iam_serverless_id-based-policy-examples-console)
+ [OpenSearch Serverless 컬렉션 관리](#security_iam_id-based-policy-examples-collection-admin)
+ [OpenSearch Serverless 컬렉션 보기](#security_iam_id-based-policy-examples-view-collections)
+ [OpenSearch API 작업 사용](#security_iam_id-based-policy-examples-data-plane)
+ [OpenSearch API 작업을 위한 ABAC](#security_iam_id-based-policy-examples-data-plane-abac)

### 정책 모범 사례
<a name="security_iam_serverless-policy-best-practices"></a>

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

ID 기반 정책에 따라 계정에서 사용자가 OpenSearch Serverless 리소스를 생성, 액세스 또는 삭제할 수 있는지 여부가 결정됩니다. 이 작업으로 인해 AWS 계정에 비용이 발생할 수 있습니다. ID 기반 정책을 생성하거나 편집할 때는 다음 지침과 권장 사항을 따르세요.
+ ** AWS 관리형 정책을 시작하고 최소 권한으로 전환 -** 사용자 및 워크로드에 권한 부여를 시작하려면 많은 일반적인 사용 사례에 대한 권한을 부여하는 *AWS 관리형 정책을* 사용합니다. 에서 사용할 수 있습니다 AWS 계정. 사용 사례에 맞는 AWS 고객 관리형 정책을 정의하여 권한을 추가로 줄이는 것이 좋습니다. 자세한 내용은 *IAM 사용 설명서*의 [AWS 관리형 정책](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies) 또는 [AWS 직무에 대한 관리형 정책](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_job-functions.html)을 참조하세요.
+ **최소 권한 적용** – IAM 정책을 사용하여 권한을 설정하는 경우, 작업을 수행하는 데 필요한 권한만 부여합니다. 이렇게 하려면 *최소 권한*으로 알려진 특정 조건에서 특정 리소스에 대해 수행할 수 있는 작업을 정의합니다. IAM을 사용하여 권한을 적용하는 방법에 대한 자세한 정보는 *IAM 사용 설명서*에 있는 [IAM의 정책 및 권한](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html)을 참조하세요.
+ **IAM 정책의 조건을 사용하여 액세스 추가 제한** – 정책에 조건을 추가하여 작업 및 리소스에 대한 액세스를 제한할 수 있습니다. 예를 들어, SSL을 사용하여 모든 요청을 전송해야 한다고 지정하는 정책 조건을 작성할 수 있습니다. AWS 서비스와 같은 특정를 통해 사용되는 경우 조건을 사용하여 서비스 작업에 대한 액세스 권한을 부여할 수도 있습니다 CloudFormation. 자세한 내용은 *IAM 사용 설명서*의 [IAM JSON 정책 요소: 조건](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html)을 참조하세요.
+ **IAM Access Analyzer를 통해 IAM 정책을 확인하여 안전하고 기능적인 권한 보장** - IAM Access Analyzer에서는 IAM 정책 언어(JSON)와 모범 사례가 정책에서 준수되도록 새로운 및 기존 정책을 확인합니다. IAM Access Analyzer는 100개 이상의 정책 확인 항목과 실행 가능한 추천을 제공하여 안전하고 기능적인 정책을 작성하도록 돕습니다. 자세한 내용은 *IAM 사용 설명서*의 [IAM Access Analyzer에서 정책 검증](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-policy-validation.html)을 참조하세요.
+ **다중 인증(MFA) 필요 -**에서 IAM 사용자 또는 루트 사용자가 필요한 시나리오가 있는 경우 추가 보안을 위해 MFA를 AWS 계정켭니다. API 작업을 직접적으로 호출할 때 MFA가 필요하면 정책에 MFA 조건을 추가합니다. 자세한 내용은 *IAM 사용 설명서*의 [MFA를 통한 보안 API 액세스](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa_configure-api-require.html)를 참조하세요.

IAM의 모범 사례에 대한 자세한 내용은 *IAM 사용 설명서*의 [IAM의 보안 모범 사례](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html)를 참조하세요.

### 콘솔에서 OpenSearch Serverless 사용
<a name="security_iam_serverless_id-based-policy-examples-console"></a>

OpenSearch Service 콘솔 내에서 OpenSearch Serverless에 액세스하려면 최소한의 권한 집합이 있어야 합니다. 이러한 권한은 AWS 계정의 OpenSearch Serverless 리소스에 대한 세부 정보를 나열하고 볼 수 있도록 허용해야 합니다. 최소 필수 권한보다 더 제한적인 ID 기반 정책을 생성하면 콘솔이 해당 정책이 있는 개체(예: IAM 역할)에 대해 의도한 대로 작동하지 않습니다.

 AWS CLI 또는 AWS API만 호출하는 사용자에게 최소 콘솔 권한을 허용할 필요는 없습니다. 그 대신 수행하려는 API 작업과 일치하는 작업에만 액세스할 수 있도록 합니다.

다음 정책은 사용자가 OpenSearch Service 콘솔 내에서 OpenSearch Serverless에 액세스할 수 있도록 허용합니다.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Resource": "*",
            "Effect": "Allow",
            "Action": [
                "aoss:ListCollections",
                "aoss:BatchGetCollection",
                "aoss:ListAccessPolicies",
                "aoss:ListSecurityConfigs",
                "aoss:ListSecurityPolicies",
                "aoss:ListTagsForResource",
                "aoss:ListVpcEndpoints",
                "aoss:GetAccessPolicy",
                "aoss:GetAccountSettings",
                "aoss:GetSecurityConfig",
                "aoss:GetSecurityPolicy"
            ]
        }
    ]
}
```

------

### OpenSearch Serverless 컬렉션 관리
<a name="security_iam_id-based-policy-examples-collection-admin"></a>

이 정책은 사용자가 Amazon OpenSearch Serverless 컬렉션을 관리할 수 있도록 하는 “컬렉션 관리자” 정책의 예시입니다. 사용자는 컬렉션을 생성하고 보고 삭제할 수 있습니다.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Resource": "arn:aws:aoss:{{us-east-1}}:{{111122223333}}:collection/*",
            "Action": [
                "aoss:CreateCollection",
                "aoss:DeleteCollection",
                "aoss:UpdateCollection"
            ],
            "Effect": "Allow"
        },
        {
            "Resource": "*",
            "Action": [
                "aoss:BatchGetCollection",
                "aoss:ListCollections",
                "aoss:CreateAccessPolicy",
                "aoss:CreateSecurityPolicy"
            ],
            "Effect": "Allow"
        }
    ]
}
```

------

### OpenSearch Serverless 컬렉션 보기
<a name="security_iam_id-based-policy-examples-view-collections"></a>

이 예시 정책을 통해 사용자는 계정의 모든 Amazon OpenSearch Serverless 컬렉션에 대한 세부 정보를 볼 수 있습니다. 사용자는 컬렉션 또는 관련 보안 정책을 수정할 수 없습니다.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Resource": "*",
            "Action": [
                "aoss:ListAccessPolicies",
                "aoss:ListCollections",
                "aoss:ListSecurityPolicies",
                "aoss:ListTagsForResource",
                "aoss:BatchGetCollection"
            ],
            "Effect": "Allow"
        }
    ]
}
```

------

### OpenSearch API 작업 사용
<a name="security_iam_id-based-policy-examples-data-plane"></a>

데이터 영역 API 작업은 OpenSearch Serverless 내 서비스에서 실시간 값을 도출하는 데 사용하는 함수로 구성됩니다. 컨트롤 플레인 API 작업은 환경을 설정하는 데 사용하는 함수로 구성됩니다.

브라우저에서 Amazon OpenSearch Serverless 데이터 영역 API와 OpenSearch Dashboards에 액세스하려면 수집 리소스에 대한 두 개의 IAM 권한을 추가해야 합니다. 이러한 권한은 `aoss:APIAccessAll` 및 `aoss:DashboardsAccessAll`입니다.

**참고**  
2023년 5월 10일부터 OpenSearch Serverless는 수집 리소스에 대해 이 두 가지 새로운 IAM 권한을 요구합니다. `aoss:APIAccessAll` 권한은 데이터 영역 액세스를 허용하고, `aoss:DashboardsAccessAll` 권한은 브라우저에서 OpenSearch Dashboards를 허용합니다. 두 개의 새 IAM 권한을 추가하지 않으면 403 오류가 발생합니다.

이 예시 정책을 통해 사용자는 계정의 지정된 컬렉션에 대한 데이터 영역 API에 액세스하고 계정의 모든 컬렉션에 대한 OpenSearch 대시보드에 액세스할 수 있습니다.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
         {
            "Effect": "Allow",
            "Action": "aoss:APIAccessAll",
            "Resource": "arn:aws:aoss:{{us-east-1}}:{{111122223333}}:collection/{{collection-id}}"
        },
        {
            "Effect": "Allow",
            "Action": "aoss:DashboardsAccessAll",
            "Resource": "arn:aws:aoss:{{us-east-1}}:{{111122223333}}:dashboards/default"
        }
    ]
}
```

------

`aoss:APIAccessAll` 및 `aoss:DashboardsAccessAll` 모두 수집 리소스에 전체 IAM 권한을 부여하는 반면, 대시보드 권한은 OpenSearch 대시보드 액세스 권한도 제공합니다. 각 권한은 독립적으로 작동하므로 `aoss:APIAccessAll`에서 명시적으로 거부해도 Dev Tools를 포함한 리소스에 대한 `aoss:DashboardsAccessAll` 액세스가 차단되지 않습니다. `aoss:DashboardsAccessAll`에서 거부하는 경우에도 마찬가지입니다. OpenSearch Serverless는 다음과 같은 전역 조건 키를 지원합니다.
+ `aws:CalledVia`
+ `aws:CalledViaAWSService`
+ `aws:CalledViaFirst`
+ `aws:CalledViaLast`
+ `aws:CurrentTime`
+ `aws:EpochTime`
+ `aws:PrincipalAccount`
+ `aws:PrincipalArn`
+ `aws:PrincipallsAWSService`
+ `aws:PrincipalOrgID`
+ `aws:PrincipalOrgPaths`
+ `aws:PrincipalType`
+ `aws:PrincipalServiceName`
+ `aws:PrincipalServiceNamesList`
+ `aws:ResourceAccount`
+ `aws:ResourceOrgID`
+ `aws:ResourceOrgPaths`
+ `aws:RequestedRegion`
+ `aws:ResourceTag`
+ `aws:SourceIp`
+ `aws:SourceVpce`
+ `aws:SourceVpc`
+ `aws:userid`
+ `aws:username`
+ `aws:VpcSourceIp`

다음은 데이터 플레인 호출에 대한 위탁자의 IAM 정책 조건 블록에 `aws:SourceIp`를 사용하는 예입니다.

```
"Condition": {
    "IpAddress": {
         "aws:SourceIp": "203.0.113.0"
    }
}
```

다음은 데이터 플레인 호출에 대한 위탁자의 IAM 정책 조건 블록에 `aws:SourceVpc`를 사용하는 예입니다.

```
"Condition": {
    "StringEquals": {
        "aws:SourceVpc": "vpc-0fdd2445d8EXAMPLE"
    }
}
```

또한 다음 OpenSearch Serverless용 키에 대한 지원이 제공됩니다.
+ `aoss:CollectionId`
+ `aoss:collection`

다음은 데이터 플레인 호출에 대한 위탁자의 IAM 정책 조건 블록에 `aoss:collection`를 사용하는 예입니다.

```
"Condition": {
    "StringLike": {
         "aoss:collection": "log-*"
    }
}
```

### OpenSearch API 작업을 위한 ABAC
<a name="security_iam_id-based-policy-examples-data-plane-abac"></a>

ID 기반 정책은 태그를 사용하여 Amazon OpenSearch Serverless 데이터 플레인 API에 대한 액세스를 제어할 수 있게 합니다. 다음은 컬렉션에 `team:devops` 태그가 있는 경우 연결된 위탁자가 데이터 플레인 API에 액세스하도록 허용하는 정책의 예입니다.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "aoss:APIAccessAll",
            "Resource": "arn:aws:aoss:{{us-east-1}}:{{111122223333}}:collection/{{collection-id}}",
            "Condition": {
                "StringEquals": {
                    "aws:ResourceTag/team": "devops"
                }
            }
        }
    ]
}
```

------

다음은 컬렉션에 `environment:production` 태그가 있는 경우 연결된 위탁자의 데이터 플레인 API 및 Dashboards 액세스를 거부하는 정책의 예입니다.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Deny",
            "Action": [
                "aoss:APIAccessAll",
                "aoss:DashboardsAccessAll"
            ],
            "Resource": "arn:aws:aoss:{{us-east-1}}:{{111122223333}}:collection/{{collection-id}}"
        }
    ]
}
```

------

Amazon OpenSearch Serverless는 데이터 플레인 API의 `RequestTag` 및 `TagKeys` 전역 조건 키를 지원하지 않습니다.