本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
透過 AWS IoT Core,您可以使用界面 VPC 端點,在虛擬私有雲端 (VPC) 中建立 IoT 資料端點。 https://docs.aws.amazon.com/vpc/latest/userguide/vpce-interface.html#create-interface-endpoint介面 VPC 端點採用一種 AWS 技術 AWS PrivateLink,您可以使用 AWS 私有 IP 地址來存取在 上執行的服務。如需詳細資訊,請參閱 Amazon Virtual Private Cloud。
若要將遠端網路上的 欄位中的裝置,例如公司網路連接至您的 Amazon VPC,請參閱 Network-to-Amazon VPC 連線矩陣中列出的選項。
目錄
為 AWS IoT Core 資料平面建立 VPC 端點
您可以為 AWS IoT Core 資料平面 API 建立 VPC 端點,以將裝置連接到 AWS IoT 服務和其他 AWS 服務。若要開始使用 VPC 端點,請建立介面 VPC 端點,然後選取 AWS IoT Core 做為 AWS 服務。如果您使用 CLI,請先呼叫 describe-vpc-endpoint-services,以確保您選擇特定 中存在 AWS IoT Core 的可用區域 AWS 區域。例如,在 us-east-1 中,此命令將如下所示:
aws ec2 describe-vpc-endpoint-services --service-name com.amazonaws.us-east-1.iot.data
注意
已停用自動建立 DNS 記錄的 VPC 功能。若要連接這些端點,您必須手動建立私有 DNS 記錄。如需有關私有 VPC DNS 記錄的詳細資訊,請參閱介面端點的私有 DNS。如需 AWS IoT Core VPC 限制的詳細資訊,請參閱 限制。
若要將 MQTT 用戶端連接到 VPC 端點介面:
-
您必須手動在連接到 VPC 的私有託管區域中建立 DNS 記錄。若要開始使用,請參閱建立私有託管區域。
-
在私有託管區域內,為 VPC 端點的每個彈性網路介面 IP 建立別名記錄。如果多個 VPC 端點有多個網路介面 IP,請在所有加權記錄中建立具有相同權重的加權 DNS 記錄。依描述欄位中的 VPC 端點 ID 進行篩選時,可從 DescribeNetworkInterfaces API 呼叫中取得這些 IP 地址。
請參閱以下詳細說明,以建立 Amazon VPC 介面端點和設定資料平面的私有託管區域。 AWS IoT Core
為 AWS IoT Core 登入資料提供者建立 VPC 端點
您可以建立 VPC 端點 AWS IoT Core 憑證提供者,以使用用戶端憑證型身分驗證來連接裝置,並以 AWS Signature 第 4 版格式取得臨時 AWS 憑證。若要開始使用 AWS IoT Core 登入資料提供者的 VPC 端點,請執行 create-vpc-endpoint CLI 命令來建立介面 VPC 端點,然後選取 AWS IoT Core 登入資料提供者做為 AWS 服務。為了確保您選擇特定 中存在 AWS IoT Core 的可用區域 AWS 區域,請先執行 describe-vpc-endpoint-services 命令。例如,在 us-east-1 中,此命令將如下所示:
aws ec2 describe-vpc-endpoint-services --service-name com.amazonaws.us-east-1.iot.credentials
注意
已停用自動建立 DNS 記錄的 VPC 功能。若要連接這些端點,您必須手動建立私有 DNS 記錄。如需有關私有 VPC DNS 記錄的詳細資訊,請參閱介面端點的私有 DNS。如需 AWS IoT Core VPC 限制的詳細資訊,請參閱 限制。
若要將 HTTP 用戶端連線至 VPC 端點介面:
-
您必須手動在連接到 VPC 的私有託管區域中建立 DNS 記錄。若要開始使用,請參閱建立私有託管區域。
-
在私有託管區域內,為 VPC 端點的每個彈性網路介面 IP 建立別名記錄。如果多個 VPC 端點有多個網路介面 IP,請在所有加權記錄中建立具有相同權重的加權 DNS 記錄。依描述欄位中的 VPC 端點 ID 進行篩選時,可從 DescribeNetworkInterfaces API 呼叫中取得這些 IP 地址。
請參閱以下詳細說明,以建立 Amazon VPC 介面端點並設定登入資料提供者的私有託管區域。 AWS IoT Core
建立 Amazon VPC 介面端點
您可以建立介面 VPC 端點,以連線至由 提供支援 AWS 的服務 AWS PrivateLink。使用下列程序建立連線至 AWS IoT Core 資料平面或 AWS IoT Core 憑證提供者的介面 VPC 端點。如需詳細資訊,請參閱使用介面 VPC 端點存取 AWS 服務。
注意
為 AWS IoT Core 資料平面和 AWS IoT Core 憑證提供者建立 Amazon VPC 介面端點的程序類似,但您必須進行端點特定變更,才能使連線正常運作。
使用 VPC Endpoints 主控台建立介面 VPC
-
導覽至 VPC
端點主控台,在左側選單的虛擬私有雲端下,選擇端點,然後選擇建立端點。 -
在建立端點頁面中,指定下列資訊。
-
選擇服務類別的 AWS 服務。
-
針對 Service Name (服務名稱),輸入關鍵字
iot
進行搜尋。在顯示的iot
服務清單中,選擇端點。如果您為 AWS IoT Core 資料平面建立 VPC 端點,請選擇您區域 AWS IoT Core 的資料平面 API 端點。端點的格式為
com.amazonaws.
。region
.iot.data如果您為 AWS IoT Core 登入資料提供者建立 VPC 端點,請選擇您區域的 AWS IoT Core 登入資料提供者端點。端點的格式為
com.amazonaws.
。region
.iot.credentials注意
中國區域中 AWS IoT Core 資料平面的服務名稱格式為
cn.com.amazonaws.
。中國區域不支援為 AWS IoT Core 登入資料提供者建立 VPC 端點。region
.iot.data -
針對 VPC 和 Subnets (子網路),選擇要在其中建立端點的 VPC,以及要在其中建立端點網路的可用區域 (AZ)。
-
針對 Enable DNS name (啟用 DNS 名稱),確定未選取 Enable for this endpoint (為此端點啟用)。 AWS IoT Core 資料平面和 AWS IoT Core 登入資料提供者都不支援私有 DNS 名稱。
-
針對 Security group (安全群組),選擇要與端點網路介面建立關聯的安全群組。
-
您可以選擇性地新增或移除標籤。標籤是您用來與端點建立關聯的名稱值對。
-
-
若要建立 VPC 端點,請選擇 Create endpoint (建立端點)。
建立 AWS PrivateLink 端點之後,您會在端點的詳細資訊索引標籤中看到 DNS 名稱清單。您可以使用您在本節中建立的其中一個 DNS 名稱來設定私有託管區域。
設定私有託管區域
您可以使用您在上一節中建立的其中一個 DNS 名稱來設定私有託管區域。
對於 AWS IoT Core 資料平面
DNS 名稱必須是您的網域組態名稱或IoT:Data-ATS
端點。DNS 名稱範例可以是:
。xxx
-ats.data.iot.region
.amazonaws.com
對於 AWS IoT Core 登入資料提供者
DNS 名稱必須是您的iot:CredentialProvider
端點。DNS 名稱範例可以是:
。xxxx
.credentials.iot.region
.amazonaws.com
注意
為 AWS IoT Core 資料平面和 AWS IoT Core 登入資料提供者設定私有託管區域的程序類似,但您必須進行端點特定變更,才能讓連線運作。
建立私有託管區域
使用 Route 53 主控台建立私有託管區域
-
導覽至 Route 53
Hosted zones (託管區域) 主控台,然後選擇 Create hosted zone (建立託管區域)。 -
在 Create hosted zone (建立託管區域) 頁面中,指定下列資訊。
-
針對網域名稱,輸入
iot:Data-ATS
或 端點的iot:CredentialProvider
端點地址。下列 AWS CLI 命令說明如何透過公有網路取得端點:aws iot describe-endpoint --endpoint-type iot:Data-ATS
或aws iot describe-endpoint --endpoint-type iot:CredentialProvider
。注意
如果您使用自訂網域,請參閱搭配使用自訂網域與 VPC 端點。 AWS IoT Core 登入資料提供者不支援自訂網域。
-
針對 Type (類型),選擇 Private Hosted Zone (私有託管區域)。
-
或者,您可以新增或移除要與託管區域建立關聯的標籤。
-
-
若要建立私有託管區域,請選擇 Create hosted zone (建立託管區域)。
如需詳細資訊,請參閱建立私有託管區域。
建立記錄
在建立了私有託管區域之後,您可以建立記錄,告訴 DNS 您想要流量路由至該網域的方式。
建立記錄
-
在顯示的託管區域清單,選擇您先前建立的私有託管區域,然後選擇 Create record (建立記錄)。
-
使用精靈方法來建立記錄。如果主控台呈現 Quick create (快速建立) 方法,請選擇 Switch to wizard (切換至精靈)。
-
為 Routing policy (路由政策) 選擇 Simple Routing (簡易路由),然後選擇 Next (下一步)。
-
在 Configure records (設定記錄) 頁面中,選擇 Define simple record (定義簡易記錄)。
-
在 Define simple record (定義簡易記錄) 頁面中:
-
針對記錄名稱,輸入
iot:Data-ATS
端點或iot:CredentialProvider
端點。這必須與私有託管區域名稱相同。 -
針對 Record type (紀錄類型),將值保留為
A - Routes traffic to an IPv4 address and some AWS resources
。 -
針對 Value/Route traffic to (值/路由流量至),選擇 Alias to VPC endpoint (VPC 端點的別名)。接著,選擇您的 Region (區域),然後從顯示的端點清單中選擇您先前建立的端點,如建立 Amazon VPC 介面端點所述。
-
-
選擇 Define simple record (定義簡易記錄) 來建立您的記錄。
透過 VPC AWS IoT Core 端點控制對 的存取
您可以使用 VPC 條件內容索引鍵來限制裝置存取 AWS IoT Core ,使其只能透過 VPC 端點被允許。 AWS IoT Core 支援下列 VPC 相關內容索引鍵:
注意
AWS IoT Core 不支援 VPC 端點的端點政策。
例如,以下政策授予許可,以 AWS IoT Core 使用符合物件名稱的用戶端 ID 連線至 ,並發佈至物件名稱字首的任何主題,條件是連接至具有特定 VPC 端點 ID 的 VPC 端點的裝置。此政策會拒絕與公有 IoT 資料端點的連線嘗試。
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"iot:Connect"
],
"Resource": [
"arn:aws:iot:us-east-1:123456789012:client/${iot:Connection.Thing.ThingName}"
],
"Condition": {
"StringEquals": {
"aws:SourceVpce": "vpce-1a2b3c4d"
}
}
},
{
"Effect": "Allow",
"Action": [
"iot:Publish"
],
"Resource": [
"arn:aws:iot:us-east-1:123456789012:topic/${iot:Connection.Thing.ThingName}/*"
]
}
]
}
限制
VPC 端點目前僅支援AWS IoT Core 資料端點和AWS IoT Core 登入資料提供者端點。聯邦資訊處理標準 (FIPS) 端點不支援 VPC 端點。
IoT 資料 VPC 端點的限制
本節涵蓋 IoT 資料 VPC 端點的限制。
-
MQTT 持續作用期間限制為 230 秒。保留的存留期間超過自動減少為 230 秒。
-
每個 VPC 端點支援總共 100,000 個並行連網裝置。如果您需要更多連線,請參閱 使用 擴展 VPC 端點 AWS IoT Core。
-
VPC 端點僅支援 IPv4 流量。
-
VPC 端點只會為 ATS 憑證提供服務,但自訂網域除外。
-
不支援 VPC 端點政策。
-
對於為 AWS IoT Core 資料平面建立的 VPC 端點, AWS IoT Core 不支援使用區域或區域公有 DNS 記錄。
登入資料提供者端點的限制
本節涵蓋登入資料提供者 VPC 端點的限制。
使用 擴展 VPC 端點 AWS IoT Core
AWS IoT Core 介面 VPC 端點透過單一介面端點限制為 100,000 個連線裝置。如果您的使用案例要求更多並行連線到代理程式,則我們建議使用多個 VPC 端點,並跨您的介面端點手動路由裝置。建立私有 DNS 記錄以將流量路由到 VPC 端點時,請確保建立的加權記錄數量與 VPC 端點數量一樣多,以將流量分配到多個端點。
搭配使用自訂網域與 VPC 端點
如果您想要搭配 VPC 端點使用自訂網域,您必須在私有託管區域中建立自訂網域名稱記錄,並在 Route53 中建立路由記錄。如需詳細資訊,請參閱建立私有託管區域。
注意
自訂網域僅支援 AWS IoT Core 資料端點。
的 VPC 端點可用性 AWS IoT Core
AWS IoT Core 介面 VPC 端點在所有AWS IoT Core 支援的區域中