本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 透過 Amazon VPC 交付您的產品 AWS PrivateLink
AWS Marketplace 支援 AWS PrivateLink AWS 服務 ,可讓您使用 Amazon 網路為買方提供透過您銷售產品的存取權 AWS Marketplace。下列各節概述使用 AWS PrivateLink 技術透過 Amazon Virtual Private Cloud (VPC) 端點設定和交付產品的程序。
本主題假設您具備數個 AWS 服務和 AWS Marketplace 環境的工作知識。
簡介
身為 AWS Marketplace 賣方,您可以透過 Amazon VPC 端點提供買方存取您服務的許可。此方法可讓買方使用 AWS PrivateLink技術存取 Amazon 網路的服務。如果您使用 AWS Marketplace 來建立和交付此方案,買方可以探索您的服務 AWS Marketplace。您的買方也可以在建立 VPC 端點的可用服務清單中找到您的產品。
VPC 端點是一種虛擬裝置,可讓 AWS 客戶在其 VPC 和其他 AWS 服務之間建立私有連線,而不需要透過網際網路、NAT 裝置、VPN 連線或 存取 AWS Direct Connect。您可以透過 建立端點服務 AWS Marketplace ,讓買方能夠使用此技術連線到您的服務。此連線方法對您的買方來說更安全,因為他們透過 Amazon 私有網路存取您的服務,而不是透過網際網路存取服務。
對於您要提供服務的每個區域,您可以建立或使用現有的資源來設定 VPC、設定服務執行個體、設定網路負載平衡器,以及透過建立服務端點向網路負載平衡器註冊您的服務。完成這些步驟並測試您的產品後,您會將組態資訊提供給AWS Marketplace 賣方營運
AWS 建議您提供私有 DNS 名稱,供買方在建立 VPC 端點時使用。
買方建立 VPC 端點時,可以選擇啟用私有 DNS 名稱。透過選擇此選項,買方的 VPC 服務會設定私有託管區域。如果您提供私有 DNS 名稱,買方可以在設定 VPC 端點以連線至您的服務時使用它。在買方的私有託管區域中,私有 DNS 名稱 (api.example.com) 將指向為您的端點服務建立的隨機產生的 DNS 名稱 (vpce-11111111111111111-yyyyyyyy.api.vpce.example.com) ())。買方的 EC2 執行個體會在不同的 VPCs 中呼叫相同的統一 DNS 名稱 (api.example.com)。此外,如果公有和私有 DNS 名稱相同,買方可以在從 VPC 內部或外部存取您的服務時使用相同的公有名稱。
如需透過 提供服務的協助 AWS Marketplace,您可以聯絡AWS Marketplace 賣方營運
您的產品會建立為軟體即服務 (SaaS) 產品。計量和計費與其他 AWS Marketplace SaaS 產品相同。
設定您的 產品
若要將產品設定為可透過 Amazon VPC 端點使用:
-
建立或使用現有的 Amazon VPC
。 -
為您的產品建立 (或使用現有的) Amazon EC2
執行個體。 -
使用 Amazon VPC 主控台、CLI 或支援的 SDKs來建立 VPC 端點服務。
-
確認您可以透過網路負載平衡器存取服務。
-
向 AWS Certificate Manager (ACM) 請求您方便使用的 DNS 名稱的憑證。ACM 發行憑證前,會先驗證您是否擁有或控制憑證請求中的網域名稱。
-
將易於使用的 DNS 名稱子網域委派給 AWS Marketplace 賣方營運團隊提供給您的名稱伺服器,例如 api.vpce.example.com。在您的 DNS 系統中,您必須建立名稱伺服器 (NS) 資源記錄,將此子網域指向 AWS Marketplace 賣方營運團隊提供的 Amazon Route 53 名稱伺服器,以便 DNS 名稱 (例如 vpce-0ac6c347a78c90f8.api.vpce.example.com) 可公開解析。
-
允許存取您買方 AWS 的帳戶。
注意:您可以使用支援的 SDK 或此 CLI 命令自動存取帳戶:aws vpcev2 modify-vpc-endpoint-service-permissions --service-id vpce-svc-0123456789abcdef1 --add-allowed-principals arn:aws:iam::111111111111:root arn:aws:iam::222222222222:root。
將您的產品提交至 AWS Marketplace
在將服務發佈至 的過程中 AWS Marketplace,您會與 AWS Marketplace 賣方營運團隊合作。若要提交啟用 PrivateLink 的產品:
-
將下列資訊透過電子郵件傳送給AWS Marketplace 賣方營運
團隊: -
用來建立端點的端點和 AWS 帳戶。端點類似:com.amazonaws.vpce.us-east-1.vpce-svc-0daa010345a21646
-
您服務的易用 DNS 名稱。這是 AWS Marketplace 買方用來存取您產品的 DNS 名稱。
-
您用來請求憑證 AWS 的帳戶,以及購買者用來存取 VPC 端點的私有 DNS 名稱。
AWS Marketplace 賣方營運團隊會驗證您公司的身分,以及要用於您正在註冊之服務的 DNS 名稱 (例如 api.vpce.example.com)。驗證後,DNS 名稱會覆寫預設的基本端點 DNS 名稱。
-
買方對 VPC 端點的存取
AWS Marketplace 建立 VPC 端點的買方可以在下列情況下探索您的服務:
-
您遵循本頁稍早所述的賣方程序來建立或使用現有產品。
-
買方訂閱您的服務。
-
您已將買方 AWS 的帳戶新增至允許的帳戶清單。
當買方建立 VPC 端點時,可以選擇將私有託管區域與其 VPC 建立關聯。託管區域包含服務預設私有 DNS 名稱的記錄集,該服務解析為其 VPC 中端點網路介面的私有 IP 地址。
任何買方託管的端點,包括 AWS Marketplace 服務,都可以提供許可給所有帳戶 (「*」許可)。不過,當您使用此方法時,除非您依服務名稱搜尋,否則服務不會包含在描述呼叫或主控台中。若要在描述呼叫中顯示服務,必須由服務將買方 AWS 的帳戶明確新增至允許清單。
若要存取您的服務,買方會執行下列動作:
-
探索並訂閱您的 服務 AWS Marketplace。
-
使用 AWS Command Line Interface (AWS CLI)、API 或 Amazon VPC 主控台來探索您的服務,然後建立 VPC 端點,以在其使用的子網路和 AZs 中連線至您的服務。端點在子網路中顯示為彈性網路介面。本機 IP 地址、區域和區域 DNS 名稱會指派給端點。
用戶端 DNS 名稱 | 名稱 |
---|---|
區域性 |
Vpce<0dc9a211a78c90f8>.api.vpce.example.com |
IAD2 (1a) |
us-east-1a-Vpce<0dc9a211a78c90f8>.api.vpce.example.com |
IAD2 (1b) |
us-east-1b-Vpce<0dc9a211a78c90f8>.api.vpce.example.com |
如果您提供預設私有 DNS 名稱,且買方在建立 VPC 端點時選擇啟用私有 DNS 名稱 (與私有託管區域相關聯),則買方會看到區域預設私有 DNS 名稱以連線至您的服務。
名稱 | Alias (別名) | 別名託管區域 ID | (備註) |
---|---|---|---|
api.example.com | vpce<0dc9a211a78c90f8>。https://api.vpce.example.com | Z00AABBCCDD |
IAD1 IAD2 |
附錄:檢查清單
使用以下檢查清單,確保您在提交產品給 AWS Marketplace 賣方營運團隊之前,先設定和測試產品。
產品建立檢查清單
-
建立 (或使用現有的) VPC,然後設定它。
-
在 VPC 中建立和設定網路負載平衡器。
-
透過建立 VPC 端點服務,向網路負載平衡器註冊服務。
-
將用於設定 VPC 端點 AWS 的帳戶 ID 提供給 AWS Marketplace 賣方營運團隊。
-
將預設端點服務名稱 (例如 com.amazonaws.vpce.us-east-1.vpce-svc-0bbb070044a2164) 提供給 AWS Marketplace 賣方營運團隊。
-
提供易於使用的服務 DNS 名稱 (必要),以覆寫隨機產生的服務 DNS 名稱。請求 ACM 的 SSL 憑證,用於您方便使用的服務 DNS 名稱的子網域。將這些憑證和您用來請求憑證 AWS 的帳戶 ID 提供給 AWS Marketplace 賣方營運團隊。
-
建議:提供私有 DNS 名稱。
-
建立程序來通知並允許 AWS Marketplace 買方使用 AWS PrivateLink 技術連線到您的服務。將買方 AWS 的帳戶 IDs 新增至允許的帳戶清單。
產品測試
-
確認您的服務已設定且可探索。
-
確認您的服務可透過網路負載平衡器探索。
-
確認買方可以建立 VPC 端點並存取您的服務。使用您擁有 AWS 的帳戶,而該帳戶不是您用來設定服務的帳戶。