View a markdown version of this page

在沙盒中測試AWS Partner Central Benefits API - AWS Partner Central

AWS 合作夥伴中心 API 參考已重組。如需支援的 API 操作的詳細資訊,請參閱 AWS 合作夥伴中心 API 參考

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

在沙盒中測試AWS Partner Central Benefits API

如何使用沙盒

若要使用沙盒,請完成下列步驟:

  1. 建立 IAM 角色:

    在與您的AWS Partner Central 帳戶AWS 帳戶連結的 中建立 IAM 角色。

  2. 指派政策:

    將下列政策指派給 IAM 角色。如需更多資訊,請參閱《新增和移除 IAM 身分許可》。

    { "Version": "2012-10-17", "Statement": [{ "Sid": "BenefitsManagement", "Effect": "Allow", "Action": [ "partnercentral:ListBenefits", "partnercentral:GetBenefit", "partnercentral:CreateBenefitApplication", "partnercentral:AmendBenefitApplication", "partnercentral:UpdateBenefitApplication", "partnercentral:SubmitBenefitApplication", "partnercentral:GetBenefitApplication", "partnercentral:CancelBenefitApplication", "partnercentral:RecallBenefitApplication", "partnercentral:ListBenefitApplications", "partnercentral:AssociateBenefitApplicationResource", "partnercentral:DisasssociateBenefitApplicationResource", "partnercentral:ListBenefitAllocations", "partnercentral:GetBenefitAllocation", "partnercentral:TagResource", "partnercentral:UntagResource", "partnercentral:ListTagsForResource" ], "Resource": "*", "Condition": { "StringEquals": { "partnercentral:Catalog": [ "Sandbox" ] } } }, { "Sid": "AWSPartnerOpportunityAccess", "Effect": "Allow", "Action": [ "partnercentral:GetAwsOpportunitySummary", "partnercentral:GetOpportunity", "partnercentral:ListOpportunities" ], "Resource": "*", "Condition": { "StringEquals": { "partnercentral:Catalog": [ "Sandbox" ] } } }, { "Sid": "ListingAWSMarketplaceEntities", "Effect": "Allow", "Action": [ "aws-marketplace:ListEntities" ], "Resource": "*" }, { "Sid": "AWSMarketplaceOffersAccess", "Effect": "Allow", "Action": [ "aws-marketplace:DescribeEntity" ], "Resource": [ "arn:aws:aws-marketplace:::AWSMarketplace/Offer/*" ] }, { "Sid": "S3PutObjectAccess", "Effect": "Allow", "Action": [ "s3:PutObject" ], "Resource": ["arn:aws:s3:::aws-partner-central-marketplace-ephemeral-writeonly-files/*"] }, { "Sid": "TaggingAccess", "Effect": "Allow", "Action": [ "partnercentral:TagResource", "partnercentral:UntagResource", "partnercentral:ListTagsForResource" ], "Resource": [ "arn:aws:partnercentral:us-east-1:*:catalog/Sandbox/benefit-application/*", "arn:aws:partnercentral:us-east-1:*:catalog/Sandbox/benefit-allocation/*" ], "Condition": { "StringEquals": { "partnercentral:Catalog": [ "Sandbox" ] } } } ] }
  3. 使用 IAM 角色登入資料:

    在您的解決方案中使用此 IAM 角色的登入資料 (私密金鑰和存取金鑰) 來執行 API 動作。

測試AWS動作

在測試階段,通常需要模擬AWS動作。此模擬可讓合作夥伴徹底測試其與AWS服務整合的完整end-to-end流程。每個請求都包含目錄參數,可決定資料環境。

模擬利益應用程式的建立

若要模擬利益應用程式的建立,請在 CreateBenefitApplication動作的承載中,將 包含在承載"catalog": "Sandbox"中。

例如:

{ "Catalog": "Sandbox", "ClientToken": "String", "BenefitIdentifier": "String", "FulfillmentTypes": ["String"], "BenefitApplicationDetails": JsonDocument, "Name": "String", "Description": "String", "Tags": [ { "Key": "string", "Value": "string" } ], "PartnerContacts": [ { "BusinessTitle": "string", "Email": "string", "FirstName": "string", "LastName": "string", "Phone": "string" } ], "FileDetails": [ { "FileURI": "String", "BusinessUseCase": "String" } ], "AssociatedResources": [ { "ResourceType": "BENEFIT_ALLOCATION | OPPORTUNITY", "ResourceArn": "ARN" } ] }

其他測試備註

  1. 若要測試其他動作,請在承載"catalog": "Sandbox"中設定 。

  2. 沙盒目錄和 AWS 目錄中的效益 IDs 不同。使用 進行 GetBenefit API 呼叫"catalog": "Sandbox",以在沙盒中取得利益識別符。

  3. 沙盒目錄和 AWS 目錄中的效益分配不同。

  4. 若要移至生產環境,請將目錄值從 Sandbox變更為 AWS

在沙盒環境中測試事件

合作夥伴可以取用沙盒環境的事件,以協助測試事件型實作。AWS 帳戶使用規則在相同的 中設定 EventBridge,透過在事件詳細資訊catalog: Sandbox中指定 來接聽沙盒事件。如需詳細資訊,請參閱AWS Partner Central Benefits API 的通知

範例事件規則:

{ "source": ["aws.partnercentral-benefits"], "detail": { "catalog": ["Sandbox"] } }

指定catalog為 的事件規則Sandbox只會比對來自沙盒的事件,這些事件是由您在沙盒環境中執行的動作所產生。