

AWS Marketplace API 참조가 재구성되었습니다. 지원되는 API 작업에 대한 자세한 내용은 [AWS Marketplace API 참조](https://docs.aws.amazon.com/marketplace/latest/APIReference/Welcome.html)를 참조하세요.

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

# AWS Marketplace 계약 API에 대한 액세스 제어
<a name="agreement-api-access-control"></a>

계약 서비스를 AWS Marketplace 사용하여의 계약을 관리하려면 AWS Identity and Access Management (IAM) 정책 및 역할이 설정되어 있는지 확인해야 합니다. 사용자가 작업을 수행할 수 있도록 허용하려면 다음 정책/권한이 있어야 합니다.
+ `CreateAgreementRequest` - 사용자에게 새 계약을 생성하거나 기존 계약을 업데이트하기 위한 새 요청을 시작할 수 있는 권한을 부여합니다.
+ `AcceptAgreementRequest` - 사용자에게 이전에 생성한 요청을 수락하여 계약을 구체화할 수 있는 권한을 부여합니다. 참고: 계약 요청을 수락하는 동안 사용자가 구매 주문을 제공하는 경우 작업을 수행할 수 있는 `UpdatePurchaseOrders` 권한도 있어야 합니다.
+ `GetAgreementEntitlements` - 사용자에게 계약의 권한을 나열할 수 있는 권한을 부여합니다.
+ `CancelAgreement` - 사용자에게 참여 중인 활성 계약을 취소할 수 있는 권한을 부여합니다.
+ `ListAgreementCharges` - 사용자에게 계약에 대한 요금을 나열할 수 있는 권한을 부여합니다.
+ `UpdatePurchaseOrders` - 사용자에게 계약 요금에 대한 구매 주문을 업데이트할 수 있는 권한을 부여합니다.
+ `SendAgreementCancellationRequest` - 사용자에게 취소 요청을 보낼 수 있는 권한을 부여합니다.
+ `AcceptAgreementCancellationRequest` - 수락자로 참여하는 계약에 대해 판매자가 시작한 취소 요청을 수락할 수 있는 권한을 사용자에게 부여합니다. 참고: 취소 요청을 승인하면 계약이 취소되므로 사용자에게 `CancelAgreement` 권한도 필요합니다.
+ `RejectAgreementCancellationRequest` - 수락자로 참여하는 계약에 대해 판매자가 시작한 취소 요청을 거부할 수 있는 권한을 사용자에게 부여합니다.
+ `SendAgreementPaymentRequest` - 사용자에게 결제 요청을 보낼 수 있는 권한을 부여합니다.
+ `AcceptAgreementPaymentRequest` - 사용자가 수락자로 참여하는 계약에 대해 판매자가 시작한 결제 요청을 수락할 수 있는 권한을 부여합니다.
+ `RejectAgreementPaymentRequest` - 수락자로 참여하는 계약에 대해 판매자가 시작한 결제 요청을 거부할 수 있는 권한을 사용자에게 부여합니다.
+ `GetAgreementCancellationRequest` - 수락자로 참여하는 계약의 특정 취소 요청에 대한 세부 정보를 검색할 수 있는 권한을 사용자에게 부여합니다.
+ `ListAgreementCancellationRequests` - 수락자로 참여하는 계약에 대한 취소 요청을 나열할 수 있는 권한을 사용자에게 부여합니다.
+ `GetAgreementPaymentRequest` - 수락자로 참여하는 계약의 특정 결제 요청에 대한 세부 정보를 검색할 수 있는 권한을 사용자에게 부여합니다.
+ `ListAgreementPaymentRequests` - 수락자로 참여하는 계약에 대한 결제 요청을 나열할 수 있는 권한을 사용자에게 부여합니다.
+ `DescribeAgreement` - 사용자에게 계약에 대한 자세한 메타데이터를 가져올 수 있는 권한을 부여합니다.
+ `GetAgreementTerms` - 사용자에게 계약 조건에 대한 세부 정보를 얻을 수 있는 권한을 부여합니다.
+ `SearchAgreements` - 사용자에게 모든 계약을 검색할 수 있는 권한을 부여합니다.

**참고**  
이러한 권한에 대한 자세한 내용은 판매자 안내서의 [AWS Marketplace 판매자에 대한 정책 및 권한](https://docs.aws.amazon.com/marketplace/latest/userguide/detailed-management-portal-permissions.html)*AWS Marketplace 과 구매자 안내서*의 [AWS Marketplace 구독에 대한 액세스 제어를 참조하세요](https://docs.aws.amazon.com/marketplace/latest/buyerguide/buyer-iam-users-groups-policies.html). *AWS Marketplace * 

## AWS 관리형 정책을 사용하여 작업 허용
<a name="agreement-aws-managed-policies"></a>

AWS Marketplace 는 페르소나별 관리형 정책을 정의합니다. 기본적으로 지정된 역할에 대한 정책의 범위를 좁히는 IAM 자격 증명에 관리형 정책을 사용할 수 있습니다. 관리형 정책을 사용하면 Marketplace에서 새 기능을 사용할 수 있게 되면 모범 사례를 따르고 정책 업데이트를 받을 수 있습니다.

이러한 권한에 대한 자세한 내용은 판매자 안내서의 [AWS Marketplace 판매자를 위한 정책 및 권한](https://docs.aws.amazon.com/marketplace/latest/userguide/detailed-management-portal-permissions.html)*AWS Marketplace 과 구매자 안내서*의 [AWS Marketplace 구독에 대한 액세스 제어를 참조하세요](https://docs.aws.amazon.com/marketplace/latest/buyerguide/buyer-iam-users-groups-policies.html). *AWS Marketplace * 

여기에 설명된 AWS 관리형 정책의 권한으로 제한되지 않습니다. IAM을 이용하여 사용자 지정 권한이 있는 정책을 생성한 다음, 해당 정책을 IAM 역할에 추가할 수 있습니다. 자세한 정보는 *IAM 사용 설명서*에서 [IAM 정책 관리](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage.html) 및 [IAM ID 권한 추가 및 제거](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html)를 참조하세요.

## 고객 관리형 정책을 사용하여 작업 허용
<a name="agreement-customer-managed-policies"></a>

고객 관리형 정책을 정의하여 계약 서비스 APIs. 효과, 작업 및 지원되는 조건을 혼합하여 정책을 사용자 지정할 수 있습니다.

제품 구독 관리를 위한 AWS Marketplace 계약 API에 액세스하려면 다음 정책을 생성하여 액세스를 허용할 수 있습니다.

```
{
  "Version": "2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "aws-marketplace:CreateAgreementRequest",
        "aws-marketplace:AcceptAgreementRequest"
      ],
      "Resource": "*",
      "Condition": {
        "ForAllValues:StringEquals": {
          "aws-marketplace:AgreementType": ["PurchaseAgreement"]
        }
      }
    },
    {
      "Effect": "Allow",
      "Action": [
        "aws-marketplace:CancelAgreement",
        "aws-marketplace:GetAgreementEntitlements",
        "aws-marketplace:UpdatePurchaseOrders",
        "aws-marketplace:ListAgreementCharges"
      ],
      "Resource": "*",
      "Condition": {
        "ForAllValues:StringEquals": {
          "aws-marketplace:AgreementType": ["PurchaseAgreement"]
        }
      }
    },
    {
      "Effect": "Allow",
      "Action": [
        "aws-marketplace:AcceptAgreementCancellationRequest",
        "aws-marketplace:RejectAgreementCancellationRequest",
        "aws-marketplace:GetAgreementCancellationRequest",
        "aws-marketplace:ListAgreementCancellationRequests",
        "aws-marketplace:CancelAgreement"
      ],
      "Resource": "*",
      "Condition": {
        "ForAllValues:StringEquals": {
          "aws-marketplace:AgreementType": ["PurchaseAgreement"]
        }
      }
    },
    {
      "Effect": "Allow",
      "Action": [
        "aws-marketplace:AcceptAgreementPaymentRequest",
        "aws-marketplace:RejectAgreementPaymentRequest",
        "aws-marketplace:GetAgreementPaymentRequest",
        "aws-marketplace:ListAgreementPaymentRequests"
      ],
      "Resource": "*",
      "Condition": {
        "ForAllValues:StringEquals": {
          "aws-marketplace:AgreementType": ["PurchaseAgreement"]
        }
      }
    },
    {
      "Effect": "Allow",
      "Action": [
        "aws-marketplace:DescribeAgreement",
        "aws-marketplace:SearchAgreements",
        "aws-marketplace:GetAgreementTerms"
      ],
      "Resource": "*",
      "Condition": {
        "ForAllValues:StringEquals": {
          "aws-marketplace:AgreementType": ["PurchaseAgreement"]
        },
        "StringEquals": {
          "aws-marketplace:PartyType": "Acceptor"
        }
      }
    }
  ]
}
```

## 서비스 정의 조건 키를 사용하여 정책 사용자 지정
<a name="agreement-condition-keys"></a>

### AgreementType 조건 키 사용
<a name="agreement-condition-agreementtype"></a>

아래 문은 `PurchaseAgreement` 계약 유형에 대해서만 `UpdatePurchaseOrders` 작업에 대한 액세스를 제한합니다.

```
{
  "Effect": "Allow",
  "Action": [
    "aws-marketplace:UpdatePurchaseOrders"
  ],
  "Resource": "*",
  "Condition": {
    "ForAllValues:StringEquals": {
      "aws-marketplace:AgreementType": ["PurchaseAgreement"]
    }
  }
}
```

### ProductId 조건 키 사용
<a name="agreement-condition-productid"></a>

문 아래는 `CreateAgreementRequest` 및에 대한 액세스를 지정된 AWS Marketplace 제품 ID`AcceptAgreementRequest`로만 제한합니다. Bedrock 기본 모델로 제한하는 등 사전 승인된 제품 ID만 생성할 수 있도록이 문을 포함할 수 있습니다.

```
{
  "Effect": "Allow",
  "Action": [
    "aws-marketplace:CreateAgreementRequest",
    "aws-marketplace:AcceptAgreementRequest"
  ],
  "Resource": "*",
  "Condition": {
    "ForAnyValue:StringEquals": {
      "aws-marketplace:ProductId": [
        "model-product-id-1",
        "model-product-id-2"
      ]
    }
  }
}
```

### PartyType 조건 키 사용
<a name="agreement-condition-partytype"></a>

아래 문은 사용자가 계약의 제안자인 경우 계약의 세부 정보를 읽을 수 있는 액세스 권한을 부여합니다.

```
{
  "Effect": "Allow",
  "Action": [
    "aws-marketplace:DescribeAgreement"
  ],
  "Resource": "*",
  "Condition": {
    "StringEquals": {
      "aws-marketplace:PartyType": "Proposer"
    }
  }
}
```