Microsoft.Devices IotHubs 2023-06-30
Bicep リソース定義
IotHubs リソースの種類は、次をターゲットとする操作でデプロイできます。
- リソース グループ - リソース グループのデプロイ コマンドに関するページを参照してください
各 API バージョンの変更されたプロパティの一覧については、「 変更ログ」を参照してください。
リソース形式
Microsoft.Devices/IotHubs リソースを作成するには、次の Bicep をテンプレートに追加します。
resource symbolicname 'Microsoft.Devices/IotHubs@2023-06-30' = {
name: 'string'
location: 'string'
tags: {
tagName1: 'tagValue1'
tagName2: 'tagValue2'
}
sku: {
capacity: int
name: 'string'
}
etag: 'string'
identity: {
type: 'string'
userAssignedIdentities: {
{customized property}: {}
}
}
properties: {
allowedFqdnList: [
'string'
]
authorizationPolicies: [
{
keyName: 'string'
primaryKey: 'string'
rights: 'string'
secondaryKey: 'string'
keyName: 'string'
primaryKey: 'string'
rights: 'string'
secondaryKey: 'string'
}
]
cloudToDevice: {
defaultTtlAsIso8601: 'string'
feedback: {
lockDurationAsIso8601: 'string'
maxDeliveryCount: int
ttlAsIso8601: 'string'
}
maxDeliveryCount: int
}
comments: 'string'
disableDeviceSAS: bool
disableLocalAuth: bool
disableModuleSAS: bool
enableDataResidency: bool
enableFileUploadNotifications: bool
eventHubEndpoints: {
{customized property}: {
partitionCount: int
retentionTimeInDays: int
}
}
features: 'string'
ipFilterRules: [
{
action: 'string'
filterName: 'string'
ipMask: 'string'
}
]
messagingEndpoints: {
{customized property}: {
lockDurationAsIso8601: 'string'
maxDeliveryCount: int
ttlAsIso8601: 'string'
}
}
minTlsVersion: 'string'
networkRuleSets: {
applyToBuiltInEventHubEndpoint: bool
defaultAction: 'string'
ipRules: [
{
action: 'Allow'
filterName: 'string'
ipMask: 'string'
}
]
}
privateEndpointConnections: [
{
properties: {
privateEndpoint: {}
privateLinkServiceConnectionState: {
actionsRequired: 'string'
description: 'string'
status: 'string'
}
}
}
]
publicNetworkAccess: 'string'
restrictOutboundNetworkAccess: bool
routing: {
endpoints: {
cosmosDBSqlContainers: [
{
authenticationType: 'string'
containerName: 'string'
databaseName: 'string'
endpointUri: 'string'
identity: {
userAssignedIdentity: 'string'
}
name: 'string'
partitionKeyName: 'string'
partitionKeyTemplate: 'string'
primaryKey: 'string'
resourceGroup: 'string'
secondaryKey: 'string'
subscriptionId: 'string'
}
]
eventHubs: [
{
authenticationType: 'string'
connectionString: 'string'
endpointUri: 'string'
entityPath: 'string'
id: 'string'
identity: {
userAssignedIdentity: 'string'
}
name: 'string'
resourceGroup: 'string'
subscriptionId: 'string'
}
]
serviceBusQueues: [
{
authenticationType: 'string'
connectionString: 'string'
endpointUri: 'string'
entityPath: 'string'
id: 'string'
identity: {
userAssignedIdentity: 'string'
}
name: 'string'
resourceGroup: 'string'
subscriptionId: 'string'
}
]
serviceBusTopics: [
{
authenticationType: 'string'
connectionString: 'string'
endpointUri: 'string'
entityPath: 'string'
id: 'string'
identity: {
userAssignedIdentity: 'string'
}
name: 'string'
resourceGroup: 'string'
subscriptionId: 'string'
}
]
storageContainers: [
{
authenticationType: 'string'
batchFrequencyInSeconds: int
connectionString: 'string'
containerName: 'string'
encoding: 'string'
endpointUri: 'string'
fileNameFormat: 'string'
id: 'string'
identity: {
userAssignedIdentity: 'string'
}
maxChunkSizeInBytes: int
name: 'string'
resourceGroup: 'string'
subscriptionId: 'string'
}
]
}
enrichments: [
{
endpointNames: [
'string'
]
key: 'string'
value: 'string'
}
]
fallbackRoute: {
condition: 'string'
endpointNames: [
'string'
]
isEnabled: bool
name: 'string'
source: 'string'
}
routes: [
{
condition: 'string'
endpointNames: [
'string'
]
isEnabled: bool
name: 'string'
source: 'string'
}
]
}
storageEndpoints: {
{customized property}: {
authenticationType: 'string'
connectionString: 'string'
containerName: 'string'
identity: {
userAssignedIdentity: 'string'
}
sasTtlAsIso8601: 'string'
}
}
}
}
プロパティ値
IotHubs
名前 | 説明 | 値 |
---|---|---|
name | リソース名 | string (必須) 文字数制限: 3 から 50 有効な文字: 英数字とハイフン。 末尾をハイフンにすることはできません。 リソース名は、Azure 全体で一意である必要があります。 |
location | リソースの場所。 | string (必須) |
tags | リソース タグ。 | タグ名と値のディクショナリ。 「テンプレートのタグ」を参照してください |
sku | IotHub SKU 情報 | IotHubSkuInfo (必須) |
etag | Etag フィールドは必須 ではありません 。 応答本文で指定する場合は、通常の ETag 規則に従ってヘッダーとしても指定する必要があります。 | string |
identity | IotHub のマネージド ID。 | ArmIdentity |
properties | IotHub プロパティ | IotHubProperties |
ArmIdentity
名前 | 説明 | 値 |
---|---|---|
type | リソースに使用される ID の種類。 種類 "SystemAssigned、UserAssigned" には、暗黙的に作成された ID とユーザー割り当て ID のセットの両方が含まれます。 型 'None' は、サービスから ID を削除します。 | 'None' 'SystemAssigned' 'SystemAssigned, UserAssigned' 'UserAssigned' |
userAssignedIdentities | {ArmUserIdentity} の辞書 | ArmIdentityUserAssignedIdentities |
ArmIdentityUserAssignedIdentities
名前 | 説明 | 値 |
---|---|---|
{カスタマイズされたプロパティ} | ArmUserIdentity |
ArmUserIdentity
このオブジェクトには、デプロイ中に設定するプロパティは含まれません。 すべてのプロパティは ReadOnly です。
IotHubProperties
名前 | 説明 | 値 |
---|---|---|
allowedFqdnList | Iot Hub からのエグレスで許可される FQDN (完全修飾ドメイン名) の一覧。 | string[] |
authorizationPolicies | IoT ハブへの接続をセキュリティで保護するために使用できる共有アクセス ポリシー。 | SharedAccessSignatureAuthorizationRule[] |
cloudToDevice | IoT ハブのクラウドからデバイスへのメッセージング プロパティ。 | CloudToDeviceProperties |
comments | IoT ハブのコメント。 | string |
disableDeviceSAS | true の場合、すべてのデバイス (Edge デバイスを含むがモジュールを除く) スコープ SAS キーは認証に使用できません。 | [bool] |
disableLocalAuth | true の場合、IoT ハブ スコープの SAS キーを持つ SAS トークンは認証に使用できません。 | [bool] |
disableModuleSAS | true の場合、モジュール スコープのすべての SAS キーを認証に使用できません。 | [bool] |
enableDataResidency | このプロパティを true に設定すると、データ所在地が有効になり、ディザスター リカバリーが無効になります。 | [bool] |
enableFileUploadNotifications | True の場合、ファイルのアップロード通知が有効になります。 | [bool] |
eventHubEndpoints | Event Hub 互換エンドポイントのプロパティ。 このディクショナリに使用できるキーはイベントのみです。 このキーは、IoT ハブの作成または更新呼び出しを行う際にディクショナリに存在する必要があります。 | IotHubPropertiesEventHubEndpoints |
features | IoT ハブで有効になっている機能。 | 'DeviceManagement' 'None' |
ipFilterRules | IP フィルター規則。 | IpFilterRule[] |
messagingEndpoints | ファイル アップロード通知キューのメッセージング エンドポイント プロパティ。 | IotHubPropertiesMessagingEndpoints |
minTlsVersion | このハブでサポートする TLS の最小バージョンを指定します。 1.2 未満の TLS バージョンを使用するクライアントを拒否するには、"1.2" に設定できます。 | string |
networkRuleSets | IotHub のネットワーク ルール セットのプロパティ | NetworkRuleSetProperties |
privateEndpointConnections | この IotHub で作成されたプライベート エンドポイント接続 | PrivateEndpointConnection[] |
publicNetworkAccess | パブリック ネットワークからの要求が許可されるかどうか | 'Disabled' 'Enabled' |
restrictOutboundNetworkAccess | true の場合、IotHub からのエグレスは、allowedFqdnList 経由で構成されている許可された FQDN のみに制限されます。 | [bool] |
ルーティング | IoT ハブのルーティング関連のプロパティ。 参照: /azure/iot-hub/iot-hub-devguide-messaging | RoutingProperties |
storageEndpoints | ファイルをアップロードできる Azure Storage エンドポイントの一覧。 現在、構成できる Azure Storage アカウントは 1 つだけで、そのキーを$defaultにする必要があります。 複数のストレージ アカウントを指定すると、エラーがスローされます。 enableFileUploadNotifications プロパティが True に設定されている場合、このプロパティの値を指定しないと、エラーがスローされます。 | IotHubPropertiesStorageEndpoints |
SharedAccessSignatureAuthorizationRule
名前 | 説明 | 値 |
---|---|---|
keyName | 共有アクセス ポリシーの名前。 | string (必須) |
primaryKey | 主キー。 | string |
権限 | 共有アクセス ポリシーに割り当てられたアクセス許可。 | 'DeviceConnect' 'RegistryRead' 'RegistryRead, DeviceConnect' 'RegistryRead, RegistryWrite' 'RegistryRead, RegistryWrite, DeviceConnect' 'RegistryRead, RegistryWrite, ServiceConnect' 'RegistryRead, RegistryWrite, ServiceConnect, DeviceConnect' 'RegistryRead, ServiceConnect' 'RegistryRead, ServiceConnect, DeviceConnect' 'RegistryWrite' 'RegistryWrite,DeviceConnect' 'RegistryWrite, ServiceConnect' 'RegistryWrite, ServiceConnect, DeviceConnect' 'ServiceConnect' 'ServiceConnect, DeviceConnect' (必須) |
secondaryKey | セカンダリ キー。 | string |
keyName | 共有アクセス ポリシーの名前。 | string (必須) |
primaryKey | 主キー。 | string |
権限 | 共有アクセス ポリシーに割り当てられたアクセス許可。 | 'DeviceConnect' 'RegistryRead' 'RegistryRead, DeviceConnect' 'RegistryRead, RegistryWrite' 'RegistryRead, RegistryWrite, DeviceConnect' 'RegistryRead, RegistryWrite, ServiceConnect' 'RegistryRead, RegistryWrite, ServiceConnect, DeviceConnect' 'RegistryRead, ServiceConnect' 'RegistryRead, ServiceConnect, DeviceConnect' 'RegistryWrite' 'RegistryWrite,DeviceConnect' 'RegistryWrite, ServiceConnect' 'RegistryWrite, ServiceConnect, DeviceConnect' 'ServiceConnect' 'ServiceConnect, DeviceConnect' (必須) |
secondaryKey | セカンダリ キー。 | string |
CloudToDeviceProperties
名前 | 説明 | 値 |
---|---|---|
defaultTtlAsIso8601 | デバイス キュー内の cloud-to-device メッセージの既定の有効期間。 参照: /azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages。 | string |
feedback | クラウドからデバイスへのメッセージのフィードバック キューのプロパティ。 | FeedbackProperties |
maxDeliveryCount | デバイス キュー内の cloud-to-device メッセージの最大配信数。 参照: /azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages。 | INT 制約: 最小値 = 1 最大値 = 100 |
FeedbackProperties
名前 | 説明 | 値 |
---|---|---|
lockDurationAsIso8601 | フィードバック キューのロック期間。 参照: /azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages。 | string |
maxDeliveryCount | IoT ハブがフィードバック キューにメッセージを配信しようとした回数。 参照: /azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages。 | INT 制約: 最小値 = 1 最大値 = 100 |
ttlAsIso8601 | IoT ハブによって有効期限が切れる前にメッセージを使用できる期間。 参照: /azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages。 | string |
IotHubPropertiesEventHubEndpoints
名前 | 説明 | 値 |
---|---|---|
{カスタマイズされたプロパティ} | EventHubProperties |
EventHubProperties
名前 | 説明 | 値 |
---|---|---|
partitionCount | Event Hub 互換エンドポイントでデバイスからクラウドへのメッセージを受信するためのパーティションの数。 「/azure/iot-hub/iot-hub-devguide-messaging#device-to-cloud-messages」を参照してください。 | INT |
retentionTimeInDays | デバイスからクラウドへのメッセージの保持時間 (日数)。 参照: /azure/iot-hub/iot-hub-devguide-messaging#device-to-cloud-messages | INT |
IpFilterRule
名前 | 説明 | 値 |
---|---|---|
action | このルールによってキャプチャされた要求に対して必要なアクション。 | 'Accept' 'Reject' (必須) |
filterName | IP フィルター規則の名前。 | string (必須) |
ipMask | ルールの CIDR 表記の IP アドレス範囲を含む文字列。 | string (必須) |
IotHubPropertiesMessagingEndpoints
名前 | 説明 | 値 |
---|---|---|
{カスタマイズされたプロパティ} | MessagingEndpointProperties |
MessagingEndpointProperties
名前 | 説明 | 値 |
---|---|---|
lockDurationAsIso8601 | ロック期間。 「/azure/iot-hub/iot-hub-devguide-file-upload」を参照してください。 | string |
maxDeliveryCount | IoT ハブがメッセージの配信を試行する回数。 「/azure/iot-hub/iot-hub-devguide-file-upload」を参照してください。 | INT 制約: 最小値 = 1 最大値 = 100 |
ttlAsIso8601 | IoT ハブによって有効期限が切れる前にメッセージを使用できる期間。 「/azure/iot-hub/iot-hub-devguide-file-upload」を参照してください。 | string |
NetworkRuleSetProperties
名前 | 説明 | 値 |
---|---|---|
applyToBuiltInEventHubEndpoint | True の場合、ネットワーク ルール セットは IotHub の BuiltIn EventHub EndPoint にも適用されます | bool (必須) |
defaultAction | ネットワーク ルール セットの既定のアクション | 'Allow' 'Deny' |
ipRules | IP ルールの一覧 | NetworkRuleSetIpRule[] (必須) |
NetworkRuleSetIpRule
名前 | 説明 | 値 |
---|---|---|
action | IP フィルター アクション | 'Allow' |
filterName | IP フィルター規則の名前。 | string (必須) |
ipMask | ルールの CIDR 表記の IP アドレス範囲を含む文字列。 | string (必須) |
PrivateEndpointConnection
名前 | 説明 | 値 |
---|---|---|
properties | プライベート エンドポイント接続のプロパティ | PrivateEndpointConnectionProperties (必須) |
PrivateEndpointConnectionProperties
名前 | 説明 | 値 |
---|---|---|
privateEndpoint | プライベート エンドポイント接続のプライベート エンドポイント プロパティ | PrivateEndpoint |
privateLinkServiceConnectionState | プライベート エンドポイント接続の現在の状態 | PrivateLinkServiceConnectionState (必須) |
PrivateEndpoint
このオブジェクトには、デプロイ中に設定するプロパティは含まれません。 すべてのプロパティは ReadOnly です。
PrivateLinkServiceConnectionState
名前 | 説明 | 値 |
---|---|---|
actionsRequired | プライベート エンドポイント接続に必要なアクション | string |
description | プライベート エンドポイント接続の現在の状態の説明 | string (必須) |
status | プライベート エンドポイント接続の状態 | '承認済み' 'Disconnected' '保留中' 'Rejected' (必須) |
RoutingProperties
名前 | 説明 | 値 |
---|---|---|
エンドポイント | IoT ハブがルーティング規則に基づいてメッセージをルーティングするカスタム エンドポイントに関連するプロパティ。 有料ハブのすべてのエンドポイントの種類で最大 10 個のカスタム エンドポイントが許可され、無料ハブのすべてのエンドポイントの種類で許可されるカスタム エンドポイントは 1 つだけです。 | RoutingEndpoints |
エンリッチメント | IoT ハブが組み込みエンドポイントとカスタム エンドポイントに配信するメッセージに適用されるユーザー指定のエンリッチメントの一覧。 https://aka.ms/telemetryoneventgrid を参照 |
EnrichmentProperties[] |
fallbackRoute | [ルート] セクションで指定された条件が満たされない場合にフォールバック ルートとして使用されるルートのプロパティ。 これは省略可能なパラメーターです。 このプロパティがテンプレートに存在しない場合、フォールバック ルートは既定で無効になります。 | FallbackRouteProperties |
ルート | IoT ハブが組み込みエンドポイントとカスタム エンドポイントにメッセージをルーティングするために使用するユーザー指定のルーティング規則の一覧。 有料ハブでは最大 100 個のルーティング規則が許可され、無料ハブでは最大 5 つのルーティング規則が許可されます。 | RouteProperties[] |
RoutingEndpoints
名前 | 説明 | 値 |
---|---|---|
cosmosDBSqlContainers | ルーティング規則に基づいて、IoT ハブがメッセージをルーティングする Cosmos DB コンテナー エンドポイントの一覧。 | RoutingCosmosDBSqlApiProperties[] |
eventHubs | ルーティング規則に基づいて、IoT ハブがメッセージをルーティングする Event Hubs エンドポイントの一覧。 この一覧には、組み込みの Event Hubs エンドポイントは含まれません。 | RoutingEventHubProperties[] |
serviceBusQueues | ルーティング規則に基づいて、IoT ハブがメッセージをルーティングする Service Bus キュー エンドポイントの一覧。 | RoutingServiceBusQueueEndpointProperties[] |
serviceBusTopics | ルーティング規則に基づいて、IoT ハブがメッセージをルーティングする Service Bus トピック エンドポイントの一覧。 | RoutingServiceBusTopicEndpointProperties[] |
storageContainers | IoT ハブがルーティング規則に基づいてメッセージをルーティングするストレージ コンテナー エンドポイントの一覧。 | RoutingStorageContainerProperties[] |
RoutingCosmosDBSqlApiProperties
名前 | 説明 | 値 |
---|---|---|
authenticationType | Cosmos DB SQL コンテナー エンドポイントに対する認証に使用されるメソッド | 'identityBased' 'keyBased' |
containerName | cosmos DB データベース内の cosmos DB SQL コンテナーの名前。 | string (必須) |
databaseName | Cosmos DB アカウント内の Cosmos DB データベースの名前。 | string (必須) |
endpointUri | Cosmos DB アカウントの URL。 プロトコルを含める必要があります https:// |
string (必須) |
identity | Cosmos DB コンテナー エンドポイントのルーティングのマネージド ID プロパティ。 | ManagedIdentity |
name | このエンドポイントを識別する名前。 名前には英数字、ピリオド、アンダースコア、ハイフンのみを含めることができます。最大長は 64 文字です。 予約されている名前は、イベント、fileNotifications、$defaultです。 エンドポイント名は、エンドポイントの種類間で一意である必要があります。 | string (必須) 制約: Pattern = ^[A-Za-z0-9-._]{1,64}$ |
partitionKeyName | この cosmos DB SQL コンテナーに関連付けられているパーティション キーの名前 (存在する場合)。 これは省略可能なパラメーターです。 | string |
partitionKeyTemplate | この cosmos DB SQL コンテナーで使用する合成パーティション キー値を生成するためのテンプレート。 テンプレートには、{iothub}、{deviceid}、{DD}、{MM}、{YYYY} のいずれかのプレースホルダーが含まれている必要があります。 プレースホルダーは 1 つでも 1 回だけ指定できますが、順序とプレースホルダー以外のコンポーネントは任意です。 このパラメーターは、PartitionKeyName が指定されている場合にのみ必要です。 | string |
primaryKey | Cosmos DB アカウントの主キー。 | string 制約: 機密性の高い値。 セキュリティで保護されたパラメーターとしてを渡します。 |
resourceGroup | Cosmos DB アカウントのリソース グループの名前。 | string |
secondaryKey | Cosmos DB アカウントのセカンダリ キー。 | string 制約: 機密性の高い値。 セキュリティで保護されたパラメーターとしてを渡します。 |
subscriptionId | Cosmos DB アカウントのサブスクリプション識別子。 | string |
ManagedIdentity
名前 | 説明 | 値 |
---|---|---|
userAssignedIdentity | ユーザー割り当て ID。 | string |
RoutingEventHubProperties
名前 | 説明 | 値 |
---|---|---|
authenticationType | イベント ハブ エンドポイントに対する認証に使用されるメソッド | 'identityBased' 'keyBased' |
connectionString | イベント ハブ エンドポイントの接続文字列。 | string |
endpointUri | イベント ハブ エンドポイントの URL。 プロトコル sb:// を含める必要があります | string |
entityPath | イベント ハブ名前空間のイベント ハブ名 | string |
id | イベント ハブ エンドポイントの ID | string |
identity | ルーティング イベント ハブ エンドポイントのマネージド ID プロパティ。 | ManagedIdentity |
name | このエンドポイントを識別する名前。 名前には英数字、ピリオド、アンダースコア、ハイフンのみを含めることができます。最大長は 64 文字です。 予約されている名前は、イベント、fileNotifications、$defaultです。 エンドポイント名は、エンドポイントの種類間で一意である必要があります。 | string (必須) 制約: Pattern = ^[A-Za-z0-9-._]{1,64}$ |
resourceGroup | イベント ハブ エンドポイントのリソース グループの名前。 | string |
subscriptionId | イベント ハブ エンドポイントのサブスクリプション識別子。 | string |
RoutingServiceBusQueueEndpointProperties
名前 | 説明 | 値 |
---|---|---|
authenticationType | Service Bus キュー エンドポイントに対する認証に使用されるメソッド | 'identityBased' 'keyBased' |
connectionString | Service Bus キュー エンドポイントの接続文字列。 | string |
endpointUri | Service Bus キュー エンドポイントの URL。 プロトコル sb:// を含める必要があります | string |
entityPath | Service Bus 名前空間のキュー名 | string |
id | Service Bus キュー エンドポイントの ID | string |
identity | ルーティング サービス バス キュー エンドポイントのマネージド ID プロパティ。 | ManagedIdentity |
name | このエンドポイントを識別する名前。 名前には英数字、ピリオド、アンダースコア、ハイフンのみを含めることができます。最大長は 64 文字です。 次の名前が予約されています: events、fileNotifications、$default。 エンドポイント名は、エンドポイントの種類間で一意である必要があります。 この名前は、実際のキュー名と同じである必要はありません。 | string (必須) 制約: Pattern = ^[A-Za-z0-9-._]{1,64}$ |
resourceGroup | Service Bus キュー エンドポイントのリソース グループの名前。 | string |
subscriptionId | Service Bus キュー エンドポイントのサブスクリプション識別子。 | string |
RoutingServiceBusTopicEndpointProperties
名前 | 説明 | 値 |
---|---|---|
authenticationType | Service Bus トピック エンドポイントに対する認証に使用されるメソッド | 'identityBased' 'keyBased' |
connectionString | Service Bus トピック エンドポイントの接続文字列。 | string |
endpointUri | Service Bus トピック エンドポイントの URL。 プロトコル sb:// を含める必要があります | string |
entityPath | Service Bus トピックのキュー名 | string |
id | Service Bus トピック エンドポイントの ID | string |
identity | ルーティング サービス バス トピック エンドポイントのマネージド ID プロパティ。 | ManagedIdentity |
name | このエンドポイントを識別する名前。 名前には英数字、ピリオド、アンダースコア、ハイフンのみを含めることができます。最大長は 64 文字です。 次の名前が予約されています: events、fileNotifications、$default。 エンドポイント名は、エンドポイントの種類間で一意である必要があります。 名前は、実際のトピック名と同じである必要はありません。 | string (必須) 制約: Pattern = ^[A-Za-z0-9-._]{1,64}$ |
resourceGroup | Service Bus トピック エンドポイントのリソース グループの名前。 | string |
subscriptionId | Service Bus トピック エンドポイントのサブスクリプション識別子。 | string |
RoutingStorageContainerProperties
名前 | 説明 | 値 |
---|---|---|
authenticationType | ストレージ エンドポイントに対する認証に使用されるメソッド | 'identityBased' 'keyBased' |
batchFrequencyInSeconds | BLOB がストレージに書き込まれる時間間隔。 値は 60 ~ 720 秒にする必要があります。 既定値は 300 秒です。 | INT 制約: 最小値 = 60 最大値 = 720 |
connectionString | ストレージ アカウントの接続文字列。 | string |
containerName | ストレージ アカウント内のストレージ コンテナーの名前。 | string (必須) |
encoding | メッセージを BLOB にシリアル化するために使用されるエンコード。 サポートされている値は、"avro"、"avrodeflate"、および "JSON" です。 既定値は "avro" です。 | 'Avro' 'AvroDeflate' 'JSON' |
endpointUri | ストレージ エンドポイントの URL。 プロトコルを含める必要があります https:// |
string |
fileNameFormat | BLOB のファイル名の形式。 既定の形式は {iothub}/{partition}/{YYYY}/{MM}/{DD}/{HH}/{mm} です。 すべてのパラメーターは必須ですが、順序を変更できます。 | string |
id | ストレージ コンテナー エンドポイントの ID | string |
identity | ルーティング ストレージ エンドポイントのマネージド ID プロパティ。 | ManagedIdentity |
maxChunkSizeInBytes | ストレージに書き込まれる各 BLOB の最大バイト数。 値は、10485760(10 MB) から 524288000(500 MB) の間である必要があります。 既定値は 314572800(300 MB) です。 | INT 制約: 最小値 = 10485760 最大値 = 524288000 |
name | このエンドポイントを識別する名前。 名前には英数字、ピリオド、アンダースコア、ハイフンのみを含めることができます。最大長は 64 文字です。 予約されている名前は、イベント、fileNotifications、$defaultです。 エンドポイント名は、エンドポイントの種類間で一意である必要があります。 | string (必須) 制約: Pattern = ^[A-Za-z0-9-._]{1,64}$ |
resourceGroup | ストレージ アカウントのリソース グループの名前。 | string |
subscriptionId | ストレージ アカウントのサブスクリプション識別子。 | string |
EnrichmentProperties
名前 | 説明 | 値 |
---|---|---|
endpointNames | エンリッチメントがメッセージに適用されるエンドポイントの一覧。 | string[] (必須) 制約: 最小長 = 1 |
key | エンリッチメント プロパティのキーまたは名前。 | string (必須) |
value | エンリッチメント プロパティの値。 | string (必須) |
FallbackRouteProperties
名前 | 説明 | 値 |
---|---|---|
condition | フォールバック ルートを適用するために評価される条件。 条件が指定されていない場合、既定では true と評価されます。 文法については、「/azure/iot-hub/iot-hub-devguide-query-language」を参照してください。 | string |
endpointNames | 条件を満たすメッセージのルーティング先となるエンドポイントの一覧。 現在、許可されているエンドポイントは 1 つだけです。 | string[] (必須) 制約: 最小長 = 1 最大長 = 1 |
isEnabled | フォールバック ルートを有効にするかどうかを指定するために使用します。 | bool (必須) |
name | ルートの名前。 名前には、英数字、ピリオド、アンダースコア、ハイフンのみを含めることができます。最大長は 64 文字で、一意である必要があります。 | string |
source | ルーティング規則を適用するソース。 たとえば、DeviceMessages | 'DeviceConnectionStateEvents' 'DeviceJobLifecycleEvents' 'DeviceLifecycleEvents' 'DeviceMessages' 'Invalid' 'TwinChangeEvents' (必須) |
RouteProperties
名前 | 説明 | 値 |
---|---|---|
condition | ルーティング規則を適用するために評価される条件。 条件が指定されていない場合、既定では true と評価されます。 文法については、/azure/iot-hub/iot-hub-devguide-query-language を参照してください。 | string |
endpointNames | 条件を満たすメッセージがルーティングされるエンドポイントの一覧。 現在、許可されているエンドポイントは 1 つだけです。 | string[] (必須) 制約: 最小長 = 1 最大長 = 1 |
isEnabled | ルートを有効にするかどうかを指定するために使用します。 | bool (必須) |
name | ルートの名前。 名前には、英数字、ピリオド、アンダースコア、ハイフンのみを含めることができます。最大長は 64 文字で、一意である必要があります。 | string (必須) 制約: Pattern = ^[A-Za-z0-9-._]{1,64}$ |
source | ルーティング規則を適用するソース (DeviceMessages など)。 | 'DeviceConnectionStateEvents' 'DeviceJobLifecycleEvents' 'DeviceLifecycleEvents' 'DeviceMessages' 'Invalid' 'TwinChangeEvents' (必須) |
IotHubPropertiesStorageEndpoints
名前 | 説明 | 値 |
---|---|---|
{カスタマイズされたプロパティ} | StorageEndpointProperties |
StorageEndpointProperties
名前 | 説明 | 値 |
---|---|---|
authenticationType | ストレージ アカウントへの接続に使用される認証の種類を指定します。 | 'identityBased' 'keyBased' |
connectionString | ファイルがアップロードされる Azure Storage アカウントの接続文字列。 | string (必須) |
containerName | ファイルをアップロードするルート コンテナーの名前。 コンテナーは存在する必要はありませんが、指定された connectionString を使用して作成できる必要があります。 | string (必須) |
identity | ファイルアップロード用のストレージ エンドポイントのマネージド ID プロパティ。 | ManagedIdentity |
sasTtlAsIso8601 | ファイルアップロードのIoT Hubによって生成された SAS URI が有効な期間。 参照: /azure/iot-hub/iot-hub-devguide-file-upload#file-upload-notification-configuration-options。 | string |
IotHubSkuInfo
名前 | 説明 | 値 |
---|---|---|
capacity | プロビジョニングされたIoT Hubユニットの数。 参照: /azure/azure-subscription-service-limits#iot-hub-limits。 | INT |
name | SKU の名前。 | 'B1' 'B2' 'B3' 'F1' 'S1' 'S2' 'S3' (必須) |
クイック スタート テンプレート
次のクイックスタート テンプレートでは、このリソースの種類をデプロイします。
Template | 説明 |
---|---|
IOT ハブと Ubuntu エッジ シミュレーターを作成する |
このテンプレートは、IOT ハブと仮想マシンの Ubuntu エッジ シミュレーターを作成します。 |
ARM テンプレートを使用してIoT Hubを作成し、メッセージをルーティングして表示する |
このテンプレートを使用して、IoT Hubとストレージ アカウントをデプロイします。 アプリを実行して、ストレージにルーティングされたハブにメッセージを送信し、結果を表示します。 |
IoT Hub Device Provisioning Service を作成する |
このテンプレートを使用すると、IoT ハブと IoT Hub Device Provisioning Service を作成し、2 つのサービスをリンクできます。 |
IoT Hubとデバイスをクラウド コンシューマー グループに作成する |
このテンプレートを使用すると、デバイスを含むIoT Hub インスタンスをクラウドにデプロイし、クラウドからデバイス メッセージング構成に、デバイスをクラウド コンシューマー グループにデプロイできます。 |
IoT Hub アカウント、インスタンス、IoT Hubの Device Update を作成する |
このテンプレートは、アカウントと、インスタンスをリンクするインスタンスとハブを作成します。 必要なアクセス ポリシー、ルート、コンシューマー グループを使用してハブを構成します。 |
Azure IoT Hubを含む MedTech サービスをデプロイする |
MedTech サービスは、複数のデバイスからデバイス データを取り込み、デバイス データを FHIR 監視に変換し、Azure Health Data Services FHIR サービスに保持するように設計された Azure Health Data Services の 1 つです。 |
IoT Hubを使用して従量課金制 (PAYG) 環境を作成する |
このテンプレートを使用すると、IoT Hubからのイベントを使用するように構成された従量課金制 (PAYG) Time Series Insights 環境をデプロイできます。 |
ARM テンプレート リソース定義
IotHubs リソースの種類は、次をターゲットとする操作でデプロイできます。
- リソース グループ - リソース グループのデプロイ コマンドを参照してください
各 API バージョンの変更されたプロパティの一覧については、「 変更ログ」を参照してください。
リソース形式
Microsoft.Devices/IotHubs リソースを作成するには、次の JSON をテンプレートに追加します。
{
"type": "Microsoft.Devices/IotHubs",
"apiVersion": "2023-06-30",
"name": "string",
"location": "string",
"tags": {
"tagName1": "tagValue1",
"tagName2": "tagValue2"
},
"sku": {
"capacity": "int",
"name": "string"
},
"etag": "string",
"identity": {
"type": "string",
"userAssignedIdentities": {
"{customized property}": {}
}
},
"properties": {
"allowedFqdnList": [ "string" ],
"authorizationPolicies": [
{
"keyName": "string",
"primaryKey": "string",
"rights": "string",
"secondaryKey": "string",
"keyName": "string",
"primaryKey": "string",
"rights": "string",
"secondaryKey": "string"
}
],
"cloudToDevice": {
"defaultTtlAsIso8601": "string",
"feedback": {
"lockDurationAsIso8601": "string",
"maxDeliveryCount": "int",
"ttlAsIso8601": "string"
},
"maxDeliveryCount": "int"
},
"comments": "string",
"disableDeviceSAS": "bool",
"disableLocalAuth": "bool",
"disableModuleSAS": "bool",
"enableDataResidency": "bool",
"enableFileUploadNotifications": "bool",
"eventHubEndpoints": {
"{customized property}": {
"partitionCount": "int",
"retentionTimeInDays": "int"
}
},
"features": "string",
"ipFilterRules": [
{
"action": "string",
"filterName": "string",
"ipMask": "string"
}
],
"messagingEndpoints": {
"{customized property}": {
"lockDurationAsIso8601": "string",
"maxDeliveryCount": "int",
"ttlAsIso8601": "string"
}
},
"minTlsVersion": "string",
"networkRuleSets": {
"applyToBuiltInEventHubEndpoint": "bool",
"defaultAction": "string",
"ipRules": [
{
"action": "Allow",
"filterName": "string",
"ipMask": "string"
}
]
},
"privateEndpointConnections": [
{
"properties": {
"privateEndpoint": {},
"privateLinkServiceConnectionState": {
"actionsRequired": "string",
"description": "string",
"status": "string"
}
}
}
],
"publicNetworkAccess": "string",
"restrictOutboundNetworkAccess": "bool",
"routing": {
"endpoints": {
"cosmosDBSqlContainers": [
{
"authenticationType": "string",
"containerName": "string",
"databaseName": "string",
"endpointUri": "string",
"identity": {
"userAssignedIdentity": "string"
},
"name": "string",
"partitionKeyName": "string",
"partitionKeyTemplate": "string",
"primaryKey": "string",
"resourceGroup": "string",
"secondaryKey": "string",
"subscriptionId": "string"
}
],
"eventHubs": [
{
"authenticationType": "string",
"connectionString": "string",
"endpointUri": "string",
"entityPath": "string",
"id": "string",
"identity": {
"userAssignedIdentity": "string"
},
"name": "string",
"resourceGroup": "string",
"subscriptionId": "string"
}
],
"serviceBusQueues": [
{
"authenticationType": "string",
"connectionString": "string",
"endpointUri": "string",
"entityPath": "string",
"id": "string",
"identity": {
"userAssignedIdentity": "string"
},
"name": "string",
"resourceGroup": "string",
"subscriptionId": "string"
}
],
"serviceBusTopics": [
{
"authenticationType": "string",
"connectionString": "string",
"endpointUri": "string",
"entityPath": "string",
"id": "string",
"identity": {
"userAssignedIdentity": "string"
},
"name": "string",
"resourceGroup": "string",
"subscriptionId": "string"
}
],
"storageContainers": [
{
"authenticationType": "string",
"batchFrequencyInSeconds": "int",
"connectionString": "string",
"containerName": "string",
"encoding": "string",
"endpointUri": "string",
"fileNameFormat": "string",
"id": "string",
"identity": {
"userAssignedIdentity": "string"
},
"maxChunkSizeInBytes": "int",
"name": "string",
"resourceGroup": "string",
"subscriptionId": "string"
}
]
},
"enrichments": [
{
"endpointNames": [ "string" ],
"key": "string",
"value": "string"
}
],
"fallbackRoute": {
"condition": "string",
"endpointNames": [ "string" ],
"isEnabled": "bool",
"name": "string",
"source": "string"
},
"routes": [
{
"condition": "string",
"endpointNames": [ "string" ],
"isEnabled": "bool",
"name": "string",
"source": "string"
}
]
},
"storageEndpoints": {
"{customized property}": {
"authenticationType": "string",
"connectionString": "string",
"containerName": "string",
"identity": {
"userAssignedIdentity": "string"
},
"sasTtlAsIso8601": "string"
}
}
}
}
プロパティ値
IotHubs
名前 | 説明 | 値 |
---|---|---|
type | リソースの種類 | 'Microsoft.Devices/IotHubs' |
apiVersion | リソース API のバージョン | '2023-06-30' |
name | リソース名 | string (必須) 文字制限: 3 から 50 有効な文字: 英数字とハイフン。 末尾をハイフンにすることはできません。 リソース名は、Azure 全体で一意である必要があります。 |
location | リソースの場所。 | string (必須) |
tags | リソース タグ。 | タグの名前と値のディクショナリ。 「テンプレート内のタグ」を参照してください |
sku | IotHub SKU 情報 | IotHubSkuInfo (必須) |
etag | Etag フィールドは必須 ではありません 。 応答本文で指定する場合は、通常の ETag 規則に従ってヘッダーとしても指定する必要があります。 | string |
identity | IotHub のマネージド ID。 | ArmIdentity |
properties | IotHub プロパティ | IotHubProperties |
ArmIdentity
名前 | 説明 | 値 |
---|---|---|
type | リソースに使用される ID の種類。 種類 "SystemAssigned、UserAssigned" には、暗黙的に作成された ID とユーザー割り当て ID のセットの両方が含まれます。 型 'None' は、サービスからすべての ID を削除します。 | 'None' 'SystemAssigned' 'SystemAssigned、UserAssigned' 'UserAssigned' |
userAssignedIdentities | {ArmUserIdentity} の辞書 | ArmIdentityUserAssignedIdentities |
ArmIdentityUserAssignedIdentities
名前 | 説明 | 値 |
---|---|---|
{カスタマイズされたプロパティ} | ArmUserIdentity |
ArmUserIdentity
このオブジェクトには、デプロイ中に設定するプロパティは含まれません。 すべてのプロパティは ReadOnly です。
IotHubProperties
名前 | 説明 | 値 |
---|---|---|
allowedFqdnList | Iot Hub からのエグレスで許可される FQDN (完全修飾ドメイン名) の一覧。 | string[] |
authorizationPolicies | IoT ハブへの接続をセキュリティで保護するために使用できる共有アクセス ポリシー。 | SharedAccessSignatureAuthorizationRule[] |
cloudToDevice | IoT ハブのクラウドからデバイスへのメッセージング プロパティ。 | CloudToDeviceProperties |
comments | IoT ハブのコメント。 | string |
disableDeviceSAS | true の場合、すべてのデバイス (Edge デバイスを含むが、モジュールを除く) スコープの SAS キーは認証に使用できません。 | [bool] |
disableLocalAuth | true の場合、IoT ハブ スコープの SAS キーを持つ SAS トークンを認証に使用できません。 | [bool] |
disableModuleSAS | true の場合、モジュール スコープのすべての SAS キーを認証に使用できません。 | [bool] |
enableDataResidency | このプロパティを true に設定すると、データ所在地が有効になり、ディザスター リカバリーが無効になります。 | [bool] |
enableFileUploadNotifications | True の場合、ファイルのアップロード通知が有効になります。 | [bool] |
eventHubEndpoints | Event Hub 互換エンドポイントのプロパティ。 このディクショナリに使用できるキーはイベントのみです。 このキーは、IoT ハブの作成または更新呼び出しを行う際にディクショナリに存在する必要があります。 | IotHubPropertiesEventHubEndpoints |
features | IoT ハブで有効になっている機能。 | 'DeviceManagement' 'None' |
ipFilterRules | IP フィルター規則。 | IpFilterRule[] |
messagingEndpoints | ファイル アップロード通知キューのメッセージング エンドポイント プロパティ。 | IotHubPropertiesMessagingEndpoints |
minTlsVersion | このハブでサポートする TLS の最小バージョンを指定します。 1.2 未満の TLS バージョンを使用するクライアントを拒否するには、"1.2" に設定できます。 | string |
networkRuleSets | IotHub のネットワーク ルール セットのプロパティ | NetworkRuleSetProperties |
privateEndpointConnections | この IotHub で作成されたプライベート エンドポイント接続 | PrivateEndpointConnection[] |
publicNetworkAccess | パブリック ネットワークからの要求が許可されるかどうか | 'Disabled' 'Enabled' |
restrictOutboundNetworkAccess | true の場合、IotHub からのエグレスは、allowedFqdnList 経由で構成されている許可された FQDN のみに制限されます。 | [bool] |
ルーティング | IoT ハブのルーティング関連のプロパティ。 参照: /azure/iot-hub/iot-hub-devguide-messaging | RoutingProperties |
storageEndpoints | ファイルをアップロードできる Azure Storage エンドポイントの一覧。 現在、構成できる Azure Storage アカウントは 1 つだけで、そのキーを$defaultにする必要があります。 複数のストレージ アカウントを指定すると、エラーがスローされます。 enableFileUploadNotifications プロパティが True に設定されている場合、このプロパティの値を指定しないと、エラーがスローされます。 | IotHubPropertiesStorageEndpoints |
SharedAccessSignatureAuthorizationRule
名前 | 説明 | 値 |
---|---|---|
keyName | 共有アクセス ポリシーの名前。 | string (必須) |
primaryKey | 主キー。 | string |
権限 | 共有アクセス ポリシーに割り当てられたアクセス許可。 | 'DeviceConnect' 'RegistryRead' 'RegistryRead, DeviceConnect' 'RegistryRead, RegistryWrite' 'RegistryRead, RegistryWrite, DeviceConnect' 'RegistryRead, RegistryWrite, ServiceConnect' 'RegistryRead, RegistryWrite, ServiceConnect, DeviceConnect' 'RegistryRead, ServiceConnect' 'RegistryRead, ServiceConnect, DeviceConnect' 'RegistryWrite' 'RegistryWrite,DeviceConnect' 'RegistryWrite, ServiceConnect' 'RegistryWrite, ServiceConnect, DeviceConnect' 'ServiceConnect' 'ServiceConnect, DeviceConnect' (必須) |
secondaryKey | セカンダリ キー。 | string |
keyName | 共有アクセス ポリシーの名前。 | string (必須) |
primaryKey | 主キー。 | string |
権限 | 共有アクセス ポリシーに割り当てられたアクセス許可。 | 'DeviceConnect' 'RegistryRead' 'RegistryRead, DeviceConnect' 'RegistryRead, RegistryWrite' 'RegistryRead, RegistryWrite, DeviceConnect' 'RegistryRead, RegistryWrite, ServiceConnect' 'RegistryRead, RegistryWrite, ServiceConnect, DeviceConnect' 'RegistryRead, ServiceConnect' 'RegistryRead, ServiceConnect, DeviceConnect' 'RegistryWrite' 'RegistryWrite,DeviceConnect' 'RegistryWrite, ServiceConnect' 'RegistryWrite, ServiceConnect, DeviceConnect' 'ServiceConnect' 'ServiceConnect, DeviceConnect' (必須) |
secondaryKey | セカンダリ キー。 | string |
CloudToDeviceProperties
名前 | 説明 | 値 |
---|---|---|
defaultTtlAsIso8601 | デバイス キュー内のクラウドからデバイスへのメッセージの既定の有効期間。 「/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages」を参照してください。 | string |
feedback | cloud-to-device メッセージのフィードバック キューのプロパティ。 | FeedbackProperties |
maxDeliveryCount | デバイス キュー内のクラウドからデバイスへのメッセージの最大配信数。 「/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages」を参照してください。 | INT 制約: 最小値 = 1 最大値 = 100 |
FeedbackProperties
名前 | 説明 | 値 |
---|---|---|
lockDurationAsIso8601 | フィードバック キューのロック期間。 「/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages」を参照してください。 | string |
maxDeliveryCount | IoT ハブがフィードバック キューでメッセージの配信を試みる回数。 「/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages」を参照してください。 | INT 制約: 最小値 = 1 最大値 = 100 |
ttlAsIso8601 | メッセージが IoT ハブによって期限切れになるまでにメッセージを使用できる期間。 「/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages」を参照してください。 | string |
IotHubPropertiesEventHubEndpoints
名前 | 説明 | 値 |
---|---|---|
{カスタマイズされたプロパティ} | EventHubProperties |
EventHubProperties
名前 | 説明 | 値 |
---|---|---|
partitionCount | Event Hub 互換エンドポイントでデバイスからクラウドへのメッセージを受信するためのパーティションの数。 「/azure/iot-hub/iot-hub-devguide-messaging#device-to-cloud-messages」を参照してください。 | INT |
retentionTimeInDays | デバイスからクラウドへのメッセージの保持時間 (日数)。 参照: /azure/iot-hub/iot-hub-devguide-messaging#device-to-cloud-messages | INT |
IpFilterRule
名前 | 説明 | 値 |
---|---|---|
action | このルールによってキャプチャされた要求に対して必要なアクション。 | 'Accept' 'Reject' (必須) |
filterName | IP フィルター規則の名前。 | string (必須) |
ipMask | 規則の IP アドレス範囲を CIDR 表記で含む文字列。 | string (必須) |
IotHubPropertiesMessagingEndpoints
名前 | 説明 | 値 |
---|---|---|
{カスタマイズされたプロパティ} | MessagingEndpointProperties |
MessagingEndpointProperties
名前 | 説明 | 値 |
---|---|---|
lockDurationAsIso8601 | ロック期間。 「/azure/iot-hub/iot-hub-devguide-file-upload」を参照してください。 | string |
maxDeliveryCount | IoT ハブがメッセージの配信を試行する回数。 「/azure/iot-hub/iot-hub-devguide-file-upload」を参照してください。 | INT 制約: 最小値 = 1 最大値 = 100 |
ttlAsIso8601 | メッセージが IoT ハブによって期限切れになるまでにメッセージを使用できる期間。 「/azure/iot-hub/iot-hub-devguide-file-upload」を参照してください。 | string |
NetworkRuleSetProperties
名前 | 説明 | 値 |
---|---|---|
applyToBuiltInEventHubEndpoint | True の場合、ネットワーク ルール セットは IotHub の BuiltIn EventHub EndPoint にも適用されます | bool (必須) |
defaultAction | ネットワーク ルール セットの既定のアクション | 'Allow' 'Deny' |
ipRules | IP ルールの一覧 | NetworkRuleSetIpRule[] (必須) |
NetworkRuleSetIpRule
名前 | 説明 | 値 |
---|---|---|
action | IP フィルター アクション | 'Allow' |
filterName | IP フィルター規則の名前。 | string (必須) |
ipMask | ルールの CIDR 表記の IP アドレス範囲を含む文字列。 | string (必須) |
PrivateEndpointConnection
名前 | 説明 | 値 |
---|---|---|
properties | プライベート エンドポイント接続のプロパティ | PrivateEndpointConnectionProperties (必須) |
PrivateEndpointConnectionProperties
名前 | 説明 | 値 |
---|---|---|
privateEndpoint | プライベート エンドポイント接続のプライベート エンドポイント プロパティ | PrivateEndpoint |
privateLinkServiceConnectionState | プライベート エンドポイント接続の現在の状態 | PrivateLinkServiceConnectionState (必須) |
PrivateEndpoint
このオブジェクトには、デプロイ中に設定するプロパティは含まれません。 すべてのプロパティは ReadOnly です。
PrivateLinkServiceConnectionState
名前 | 説明 | 値 |
---|---|---|
actionsRequired | プライベート エンドポイント接続に必要なアクション | string |
description | プライベート エンドポイント接続の現在の状態の説明 | string (必須) |
status | プライベート エンドポイント接続の状態 | '承認済み' 'Disconnected' '保留中' 'Rejected' (必須) |
RoutingProperties
名前 | 説明 | 値 |
---|---|---|
エンドポイント | IoT ハブがルーティング規則に基づいてメッセージをルーティングするカスタム エンドポイントに関連するプロパティ。 有料ハブのすべてのエンドポイントの種類で最大 10 個のカスタム エンドポイントが許可され、無料ハブのすべてのエンドポイントの種類で許可されるカスタム エンドポイントは 1 つだけです。 | RoutingEndpoints |
エンリッチメント | IoT ハブが組み込みエンドポイントとカスタム エンドポイントに配信するメッセージに適用されるユーザー指定のエンリッチメントの一覧。 https://aka.ms/telemetryoneventgrid を参照 |
EnrichmentProperties[] |
fallbackRoute | [ルート] セクションで指定された条件が満たされない場合にフォールバック ルートとして使用されるルートのプロパティ。 これは省略可能なパラメーターです。 このプロパティがテンプレートに存在しない場合、フォールバック ルートは既定で無効になります。 | FallbackRouteProperties |
ルート | IoT ハブが組み込みエンドポイントとカスタム エンドポイントにメッセージをルーティングするために使用するユーザー指定のルーティング規則の一覧。 有料ハブでは最大 100 個のルーティング規則が許可され、無料ハブでは最大 5 つのルーティング規則が許可されます。 | RouteProperties[] |
RoutingEndpoints
名前 | 説明 | 値 |
---|---|---|
cosmosDBSqlContainers | ルーティング規則に基づいて、IoT ハブがメッセージをルーティングする Cosmos DB コンテナー エンドポイントの一覧。 | RoutingCosmosDBSqlApiProperties[] |
eventHubs | ルーティング規則に基づいて、IoT ハブがメッセージをルーティングする Event Hubs エンドポイントの一覧。 この一覧には、組み込みの Event Hubs エンドポイントは含まれません。 | RoutingEventHubProperties[] |
serviceBusQueues | ルーティング規則に基づいて、IoT ハブがメッセージをルーティングする Service Bus キュー エンドポイントの一覧。 | RoutingServiceBusQueueEndpointProperties[] |
serviceBusTopics | ルーティング規則に基づいて、IoT ハブがメッセージをルーティングする Service Bus トピック エンドポイントの一覧。 | RoutingServiceBusTopicEndpointProperties[] |
storageContainers | IoT ハブがルーティング規則に基づいてメッセージをルーティングするストレージ コンテナー エンドポイントの一覧。 | RoutingStorageContainerProperties[] |
RoutingCosmosDBSqlApiProperties
名前 | 説明 | 値 |
---|---|---|
authenticationType | Cosmos DB SQL コンテナー エンドポイントに対する認証に使用されるメソッド | 'identityBased' 'keyBased' |
containerName | cosmos DB データベース内の cosmos DB SQL コンテナーの名前。 | string (必須) |
databaseName | Cosmos DB アカウント内の Cosmos DB データベースの名前。 | string (必須) |
endpointUri | Cosmos DB アカウントの URL。 プロトコルを含める必要があります https:// |
string (必須) |
identity | Cosmos DB コンテナー エンドポイントのルーティングのマネージド ID プロパティ。 | ManagedIdentity |
name | このエンドポイントを識別する名前。 名前には英数字、ピリオド、アンダースコア、ハイフンのみを含めることができます。最大長は 64 文字です。 予約されている名前は、イベント、fileNotifications、$defaultです。 エンドポイント名は、エンドポイントの種類間で一意である必要があります。 | string (必須) 制約: Pattern = ^[A-Za-z0-9-._]{1,64}$ |
partitionKeyName | この cosmos DB SQL コンテナーに関連付けられているパーティション キーの名前 (存在する場合)。 これは省略可能なパラメーターです。 | string |
partitionKeyTemplate | この cosmos DB SQL コンテナーで使用する合成パーティション キー値を生成するためのテンプレート。 テンプレートには、{iothub}、{deviceid}、{DD}、{MM}、{YYYY} のいずれかのプレースホルダーが含まれている必要があります。 プレースホルダーは 1 つでも 1 回だけ指定できますが、順序とプレースホルダー以外のコンポーネントは任意です。 このパラメーターは、PartitionKeyName が指定されている場合にのみ必要です。 | string |
primaryKey | Cosmos DB アカウントの主キー。 | string 制約: 機密性の高い値。 セキュリティで保護されたパラメーターとしてを渡します。 |
resourceGroup | Cosmos DB アカウントのリソース グループの名前。 | string |
secondaryKey | Cosmos DB アカウントのセカンダリ キー。 | string 制約: 機密性の高い値。 セキュリティで保護されたパラメーターとしてを渡します。 |
subscriptionId | Cosmos DB アカウントのサブスクリプション識別子。 | string |
ManagedIdentity
名前 | 説明 | 値 |
---|---|---|
userAssignedIdentity | ユーザー割り当て ID。 | string |
RoutingEventHubProperties
名前 | 説明 | 値 |
---|---|---|
authenticationType | イベント ハブ エンドポイントに対する認証に使用されるメソッド | 'identityBased' 'keyBased' |
connectionString | イベント ハブ エンドポイントの接続文字列。 | string |
endpointUri | イベント ハブ エンドポイントの URL。 プロトコル sb:// を含める必要があります | string |
entityPath | イベント ハブ名前空間のイベント ハブ名 | string |
id | イベント ハブ エンドポイントの ID | string |
identity | ルーティング イベント ハブ エンドポイントのマネージド ID プロパティ。 | ManagedIdentity |
name | このエンドポイントを識別する名前。 名前には英数字、ピリオド、アンダースコア、ハイフンのみを含めることができます。最大長は 64 文字です。 予約されている名前は、イベント、fileNotifications、$defaultです。 エンドポイント名は、エンドポイントの種類間で一意である必要があります。 | string (必須) 制約: Pattern = ^[A-Za-z0-9-._]{1,64}$ |
resourceGroup | イベント ハブ エンドポイントのリソース グループの名前。 | string |
subscriptionId | イベント ハブ エンドポイントのサブスクリプション識別子。 | string |
RoutingServiceBusQueueEndpointProperties
名前 | 説明 | 値 |
---|---|---|
authenticationType | Service Bus キュー エンドポイントに対する認証に使用されるメソッド | 'identityBased' 'keyBased' |
connectionString | Service Bus キュー エンドポイントの接続文字列。 | string |
endpointUri | Service Bus キュー エンドポイントの URL。 プロトコル sb:// を含める必要があります | string |
entityPath | Service Bus 名前空間のキュー名 | string |
id | Service Bus キュー エンドポイントの ID | string |
identity | ルーティング サービス バス キュー エンドポイントのマネージド ID プロパティ。 | ManagedIdentity |
name | このエンドポイントを識別する名前。 名前には英数字、ピリオド、アンダースコア、ハイフンのみを含めることができます。最大長は 64 文字です。 次の名前が予約されています: events、fileNotifications、$default。 エンドポイント名は、エンドポイントの種類間で一意である必要があります。 この名前は、実際のキュー名と同じである必要はありません。 | string (必須) 制約: Pattern = ^[A-Za-z0-9-._]{1,64}$ |
resourceGroup | Service Bus キュー エンドポイントのリソース グループの名前。 | string |
subscriptionId | Service Bus キュー エンドポイントのサブスクリプション識別子。 | string |
RoutingServiceBusTopicEndpointProperties
名前 | 説明 | 値 |
---|---|---|
authenticationType | Service Bus トピック エンドポイントに対する認証に使用されるメソッド | 'identityBased' 'keyBased' |
connectionString | Service Bus トピック エンドポイントの接続文字列。 | string |
endpointUri | Service Bus トピック エンドポイントの URL。 プロトコル sb:// を含める必要があります | string |
entityPath | Service Bus トピックのキュー名 | string |
id | Service Bus トピック エンドポイントの ID | string |
identity | ルーティング サービス バス トピック エンドポイントのマネージド ID プロパティ。 | ManagedIdentity |
name | このエンドポイントを識別する名前。 名前には英数字、ピリオド、アンダースコア、ハイフンのみを含めることができます。最大長は 64 文字です。 次の名前が予約されています: events、fileNotifications、$default。 エンドポイント名は、エンドポイントの種類間で一意である必要があります。 名前は、実際のトピック名と同じである必要はありません。 | string (必須) 制約: Pattern = ^[A-Za-z0-9-._]{1,64}$ |
resourceGroup | Service Bus トピック エンドポイントのリソース グループの名前。 | string |
subscriptionId | Service Bus トピック エンドポイントのサブスクリプション識別子。 | string |
RoutingStorageContainerProperties
名前 | 説明 | 値 |
---|---|---|
authenticationType | ストレージ エンドポイントに対する認証に使用されるメソッド | 'identityBased' 'keyBased' |
batchFrequencyInSeconds | BLOB がストレージに書き込まれる時間間隔。 値は 60 ~ 720 秒にする必要があります。 既定値は 300 秒です。 | INT 制約: 最小値 = 60 最大値 = 720 |
connectionString | ストレージ アカウントの接続文字列。 | string |
containerName | ストレージ アカウント内のストレージ コンテナーの名前。 | string (必須) |
encoding | メッセージを BLOB にシリアル化するために使用されるエンコード。 サポートされている値は、"avro"、"avrodeflate"、および "JSON" です。 既定値は "avro" です。 | 'Avro' 'AvroDeflate' 'JSON' |
endpointUri | ストレージ エンドポイントの URL。 プロトコルを含める必要があります https:// |
string |
fileNameFormat | BLOB のファイル名の形式。 既定の形式は {iothub}/{partition}/{YYYY}/{MM}/{DD}/{HH}/{mm} です。 すべてのパラメーターは必須ですが、順序を変更できます。 | string |
id | ストレージ コンテナー エンドポイントの ID | string |
identity | ルーティング ストレージ エンドポイントのマネージド ID プロパティ。 | ManagedIdentity |
maxChunkSizeInBytes | ストレージに書き込まれる各 BLOB の最大バイト数。 値は、10485760(10 MB) から 524288000(500 MB) の間である必要があります。 既定値は 314572800(300 MB) です。 | INT 制約: 最小値 = 10485760 最大値 = 524288000 |
name | このエンドポイントを識別する名前。 名前には英数字、ピリオド、アンダースコア、ハイフンのみを含めることができます。最大長は 64 文字です。 予約されている名前は、イベント、fileNotifications、$defaultです。 エンドポイント名は、エンドポイントの種類間で一意である必要があります。 | string (必須) 制約: Pattern = ^[A-Za-z0-9-._]{1,64}$ |
resourceGroup | ストレージ アカウントのリソース グループの名前。 | string |
subscriptionId | ストレージ アカウントのサブスクリプション識別子。 | string |
EnrichmentProperties
名前 | 説明 | 値 |
---|---|---|
endpointNames | エンリッチメントがメッセージに適用されるエンドポイントの一覧。 | string[] (必須) 制約: 最小長 = 1 |
key | エンリッチメント プロパティのキーまたは名前。 | string (必須) |
value | エンリッチメント プロパティの値。 | string (必須) |
FallbackRouteProperties
名前 | 説明 | 値 |
---|---|---|
condition | フォールバック ルートを適用するために評価される条件。 条件が指定されていない場合、既定では true と評価されます。 文法については、「/azure/iot-hub/iot-hub-devguide-query-language」を参照してください。 | string |
endpointNames | 条件を満たすメッセージのルーティング先となるエンドポイントの一覧。 現在、許可されているエンドポイントは 1 つだけです。 | string[] (必須) 制約: 最小長 = 1 最大長 = 1 |
isEnabled | フォールバック ルートを有効にするかどうかを指定するために使用します。 | bool (必須) |
name | ルートの名前。 名前には、英数字、ピリオド、アンダースコア、ハイフンのみを含めることができます。最大長は 64 文字で、一意である必要があります。 | string |
source | ルーティング規則を適用するソース。 たとえば、DeviceMessages | 'DeviceConnectionStateEvents' 'DeviceJobLifecycleEvents' 'DeviceLifecycleEvents' 'DeviceMessages' 'Invalid' 'TwinChangeEvents' (必須) |
RouteProperties
名前 | 説明 | 値 |
---|---|---|
condition | ルーティング規則を適用するために評価される条件。 条件が指定されていない場合、既定では true と評価されます。 文法については、/azure/iot-hub/iot-hub-devguide-query-language を参照してください。 | string |
endpointNames | 条件を満たすメッセージがルーティングされるエンドポイントの一覧。 現在、許可されているエンドポイントは 1 つだけです。 | string[] (必須) 制約: 最小長 = 1 最大長 = 1 |
isEnabled | ルートが有効かどうかを指定するために使用します。 | bool (必須) |
name | ルートの名前。 名前には、英数字、ピリオド、アンダースコア、ハイフンのみを含めることができます。最大長は 64 文字で、一意である必要があります。 | string (必須) 制約: Pattern = ^[A-Za-z0-9-._]{1,64}$ |
source | ルーティング規則を適用するソース (DeviceMessages など)。 | 'DeviceConnectionStateEvents' 'DeviceJobLifecycleEvents' 'DeviceLifecycleEvents' 'DeviceMessages' 'Invalid' 'TwinChangeEvents' (必須) |
IotHubPropertiesStorageEndpoints
名前 | 説明 | 値 |
---|---|---|
{カスタマイズされたプロパティ} | StorageEndpointProperties |
StorageEndpointProperties
名前 | 説明 | 値 |
---|---|---|
authenticationType | ストレージ アカウントへの接続に使用される認証の種類を指定します。 | 'identityBased' 'keyBased' |
connectionString | ファイルがアップロードされる Azure Storage アカウントの接続文字列。 | string (必須) |
containerName | ファイルをアップロードするルート コンテナーの名前。 コンテナーは存在する必要はありませんが、指定された connectionString を使用して作成できる必要があります。 | string (必須) |
identity | ファイルアップロード用のストレージ エンドポイントのマネージド ID プロパティ。 | ManagedIdentity |
sasTtlAsIso8601 | ファイルのアップロードにIoT Hubによって生成された SAS URI が有効な期間。 「/azure/iot-hub/iot-hub-devguide-file-upload#file-upload-notification-configuration-options」を参照してください。 | string |
IotHubSkuInfo
名前 | 説明 | 値 |
---|---|---|
capacity | プロビジョニングされたIoT Hubユニットの数。 「/azure/azure-subscription-service-limits#iot-hub-limits」を参照してください。 | INT |
name | SKU の名前。 | 'B1' 'B2' 'B3' 'F1' 'S1' 'S2' 'S3' (必須) |
クイック スタート テンプレート
次のクイックスタート テンプレートでは、このリソースの種類をデプロイします。
Template | 説明 |
---|---|
IOT Hub と Ubuntu エッジ シミュレーターを作成する |
このテンプレートでは、IOT ハブと仮想マシンの Ubuntu エッジ シミュレーターを作成します。 |
ARM テンプレートを使用してIoT Hubを作成し、メッセージをルーティングして表示する |
このテンプレートを使用して、IoT Hubとストレージ アカウントをデプロイします。 アプリを実行して、ストレージにルーティングされたハブにメッセージを送信し、結果を表示します。 |
IoT Hub Device Provisioning Service を作成する |
このテンプレートを使用すると、IoT ハブと IoT Hub Device Provisioning Service を作成し、2 つのサービスをリンクできます。 |
IoT Hubとデバイスをクラウド コンシューマー グループに作成する |
このテンプレートを使用すると、デバイスを含むIoT Hub インスタンスをクラウドにデプロイし、クラウドからデバイス メッセージング構成に、デバイスをクラウド コンシューマー グループにデプロイできます。 |
IoT Hub アカウント、インスタンス、IoT Hubの Device Update を作成する |
このテンプレートは、アカウントと、インスタンスをリンクするインスタンスとハブを作成します。 必要なアクセス ポリシー、ルート、コンシューマー グループを使用してハブを構成します。 |
Azure IoT Hubを含む MedTech サービスをデプロイする |
MedTech サービスは、複数のデバイスからデバイス データを取り込み、デバイス データを FHIR Observations に変換し、Azure Health Data Services FHIR サービスに永続化するように設計された Azure Health Data Services の 1 つです。 |
IoT Hubを使用して従量課金制 (PAYG) 環境を作成する |
このテンプレートを使用すると、IoT Hubからのイベントを使用するように構成された従量課金制 (PAYG) Time Series Insights 環境をデプロイできます。 |
Terraform (AzAPI プロバイダー) リソース定義
IotHubs リソースの種類は、次をターゲットとする操作でデプロイできます。
- リソース グループ
各 API バージョンの変更されたプロパティの一覧については、「 変更ログ」を参照してください。
リソース形式
Microsoft.Devices/IotHubs リソースを作成するには、次の Terraform をテンプレートに追加します。
resource "azapi_resource" "symbolicname" {
type = "Microsoft.Devices/IotHubs@2023-06-30"
name = "string"
location = "string"
parent_id = "string"
tags = {
tagName1 = "tagValue1"
tagName2 = "tagValue2"
}
identity {
type = "string"
identity_ids = []
}
body = jsonencode({
properties = {
allowedFqdnList = [
"string"
]
authorizationPolicies = [
{
keyName = "string"
primaryKey = "string"
rights = "string"
secondaryKey = "string"
keyName = "string"
primaryKey = "string"
rights = "string"
secondaryKey = "string"
}
]
cloudToDevice = {
defaultTtlAsIso8601 = "string"
feedback = {
lockDurationAsIso8601 = "string"
maxDeliveryCount = int
ttlAsIso8601 = "string"
}
maxDeliveryCount = int
}
comments = "string"
disableDeviceSAS = bool
disableLocalAuth = bool
disableModuleSAS = bool
enableDataResidency = bool
enableFileUploadNotifications = bool
eventHubEndpoints = {
{customized property} = {
partitionCount = int
retentionTimeInDays = int
}
}
features = "string"
ipFilterRules = [
{
action = "string"
filterName = "string"
ipMask = "string"
}
]
messagingEndpoints = {
{customized property} = {
lockDurationAsIso8601 = "string"
maxDeliveryCount = int
ttlAsIso8601 = "string"
}
}
minTlsVersion = "string"
networkRuleSets = {
applyToBuiltInEventHubEndpoint = bool
defaultAction = "string"
ipRules = [
{
action = "Allow"
filterName = "string"
ipMask = "string"
}
]
}
privateEndpointConnections = [
{
properties = {
privateEndpoint = {}
privateLinkServiceConnectionState = {
actionsRequired = "string"
description = "string"
status = "string"
}
}
}
]
publicNetworkAccess = "string"
restrictOutboundNetworkAccess = bool
routing = {
endpoints = {
cosmosDBSqlContainers = [
{
authenticationType = "string"
containerName = "string"
databaseName = "string"
endpointUri = "string"
identity = {
userAssignedIdentity = "string"
}
name = "string"
partitionKeyName = "string"
partitionKeyTemplate = "string"
primaryKey = "string"
resourceGroup = "string"
secondaryKey = "string"
subscriptionId = "string"
}
]
eventHubs = [
{
authenticationType = "string"
connectionString = "string"
endpointUri = "string"
entityPath = "string"
id = "string"
identity = {
userAssignedIdentity = "string"
}
name = "string"
resourceGroup = "string"
subscriptionId = "string"
}
]
serviceBusQueues = [
{
authenticationType = "string"
connectionString = "string"
endpointUri = "string"
entityPath = "string"
id = "string"
identity = {
userAssignedIdentity = "string"
}
name = "string"
resourceGroup = "string"
subscriptionId = "string"
}
]
serviceBusTopics = [
{
authenticationType = "string"
connectionString = "string"
endpointUri = "string"
entityPath = "string"
id = "string"
identity = {
userAssignedIdentity = "string"
}
name = "string"
resourceGroup = "string"
subscriptionId = "string"
}
]
storageContainers = [
{
authenticationType = "string"
batchFrequencyInSeconds = int
connectionString = "string"
containerName = "string"
encoding = "string"
endpointUri = "string"
fileNameFormat = "string"
id = "string"
identity = {
userAssignedIdentity = "string"
}
maxChunkSizeInBytes = int
name = "string"
resourceGroup = "string"
subscriptionId = "string"
}
]
}
enrichments = [
{
endpointNames = [
"string"
]
key = "string"
value = "string"
}
]
fallbackRoute = {
condition = "string"
endpointNames = [
"string"
]
isEnabled = bool
name = "string"
source = "string"
}
routes = [
{
condition = "string"
endpointNames = [
"string"
]
isEnabled = bool
name = "string"
source = "string"
}
]
}
storageEndpoints = {
{customized property} = {
authenticationType = "string"
connectionString = "string"
containerName = "string"
identity = {
userAssignedIdentity = "string"
}
sasTtlAsIso8601 = "string"
}
}
}
sku = {
capacity = int
name = "string"
}
etag = "string"
})
}
プロパティ値
IotHubs
名前 | 説明 | 値 |
---|---|---|
type | リソースの種類 | "Microsoft.Devices/IotHubs@2023-06-30" |
name | リソース名 | string (必須) 文字制限: 3 から 50 有効な文字: 英数字とハイフン。 末尾をハイフンにすることはできません。 リソース名は、Azure 全体で一意である必要があります。 |
location | リソースの場所。 | string (必須) |
parent_id | リソース グループにデプロイするには、そのリソース グループの ID を使用します。 | string (必須) |
tags | リソース タグ。 | タグの名前と値のディクショナリ。 |
sku | IotHub SKU 情報 | IotHubSkuInfo (必須) |
etag | Etag フィールドは必須 ではありません 。 応答本文で指定する場合は、通常の ETag 規則に従ってヘッダーとしても指定する必要があります。 | string |
identity | IotHub のマネージド ID。 | ArmIdentity |
properties | IotHub プロパティ | IotHubProperties |
ArmIdentity
名前 | 説明 | 値 |
---|---|---|
type | リソースに使用される ID の種類。 種類 "SystemAssigned、UserAssigned" には、暗黙的に作成された ID とユーザー割り当て ID のセットの両方が含まれます。 型 'None' は、サービスからすべての ID を削除します。 | "SystemAssigned" "SystemAssigned、UserAssigned" "UserAssigned" |
identity_ids | {ArmUserIdentity} の辞書 | ユーザー ID ID の配列。 |
ArmIdentityUserAssignedIdentities
名前 | 説明 | 値 |
---|---|---|
{カスタマイズされたプロパティ} | ArmUserIdentity |
ArmUserIdentity
このオブジェクトには、デプロイ中に設定するプロパティは含まれません。 すべてのプロパティは ReadOnly です。
IotHubProperties
名前 | 説明 | 値 |
---|---|---|
allowedFqdnList | Iot Hub からのエグレスで許可される FQDN (完全修飾ドメイン名) の一覧。 | string[] |
authorizationPolicies | IoT ハブへの接続をセキュリティで保護するために使用できる共有アクセス ポリシー。 | SharedAccessSignatureAuthorizationRule[] |
cloudToDevice | IoT ハブのクラウドからデバイスへのメッセージング プロパティ。 | CloudToDeviceProperties |
comments | IoT ハブのコメント。 | string |
disableDeviceSAS | true の場合、すべてのデバイス (Edge デバイスを含むが、モジュールを除く) スコープの SAS キーは認証に使用できません。 | [bool] |
disableLocalAuth | true の場合、IoT ハブ スコープの SAS キーを持つ SAS トークンを認証に使用できません。 | [bool] |
disableModuleSAS | true の場合、モジュール スコープのすべての SAS キーを認証に使用できません。 | [bool] |
enableDataResidency | このプロパティを true に設定すると、データ所在地が有効になり、ディザスター リカバリーが無効になります。 | [bool] |
enableFileUploadNotifications | True の場合、ファイルのアップロード通知が有効になります。 | [bool] |
eventHubEndpoints | Event Hub 互換エンドポイントのプロパティ。 このディクショナリに使用できるキーはイベントのみです。 このキーは、IoT ハブの作成または更新呼び出しを行う際にディクショナリに存在する必要があります。 | IotHubPropertiesEventHubEndpoints |
features | IoT ハブで有効になっている機能。 | "DeviceManagement" "None" |
ipFilterRules | IP フィルター規則。 | IpFilterRule[] |
messagingEndpoints | ファイル アップロード通知キューのメッセージング エンドポイント プロパティ。 | IotHubPropertiesMessagingEndpoints |
minTlsVersion | このハブでサポートする TLS の最小バージョンを指定します。 1.2 未満の TLS バージョンを使用するクライアントを拒否するには、"1.2" に設定できます。 | string |
networkRuleSets | IotHub のネットワーク ルール セットのプロパティ | NetworkRuleSetProperties |
privateEndpointConnections | この IotHub で作成されたプライベート エンドポイント接続 | PrivateEndpointConnection[] |
publicNetworkAccess | パブリック ネットワークからの要求が許可されるかどうか | "無効" "有効" |
restrictOutboundNetworkAccess | true の場合、IotHub からのエグレスは、allowedFqdnList 経由で構成されている許可された FQDN のみに制限されます。 | [bool] |
ルーティング | IoT ハブのルーティング関連のプロパティ。 参照: /azure/iot-hub/iot-hub-devguide-messaging | RoutingProperties |
storageEndpoints | ファイルをアップロードできる Azure Storage エンドポイントの一覧。 現在、構成できる Azure Storage アカウントは 1 つだけで、そのキーを$defaultにする必要があります。 複数のストレージ アカウントを指定すると、エラーがスローされます。 enableFileUploadNotifications プロパティが True に設定されている場合、このプロパティの値を指定しないと、エラーがスローされます。 | IotHubPropertiesStorageEndpoints |
SharedAccessSignatureAuthorizationRule
名前 | 説明 | 値 |
---|---|---|
keyName | 共有アクセス ポリシーの名前。 | string (必須) |
primaryKey | 主キー。 | string |
権限 | 共有アクセス ポリシーに割り当てられたアクセス許可。 | "DeviceConnect" "RegistryRead" "RegistryRead,DeviceConnect" "RegistryRead, RegistryWrite" "RegistryRead, RegistryWrite, DeviceConnect" "RegistryRead, RegistryWrite, ServiceConnect" "RegistryRead,RegistryWrite, ServiceConnect, DeviceConnect" "RegistryRead, ServiceConnect" "RegistryRead, ServiceConnect, DeviceConnect" "RegistryWrite" "RegistryWrite、DeviceConnect" "RegistryWrite, ServiceConnect" "RegistryWrite, ServiceConnect, DeviceConnect" "ServiceConnect" "ServiceConnect,DeviceConnect" (必須) |
secondaryKey | セカンダリ キー。 | string |
keyName | 共有アクセス ポリシーの名前。 | string (必須) |
primaryKey | 主キー。 | string |
権限 | 共有アクセス ポリシーに割り当てられたアクセス許可。 | "DeviceConnect" "RegistryRead" "RegistryRead,DeviceConnect" "RegistryRead, RegistryWrite" "RegistryRead, RegistryWrite, DeviceConnect" "RegistryRead, RegistryWrite, ServiceConnect" "RegistryRead,RegistryWrite, ServiceConnect, DeviceConnect" "RegistryRead, ServiceConnect" "RegistryRead, ServiceConnect, DeviceConnect" "RegistryWrite" "RegistryWrite、DeviceConnect" "RegistryWrite, ServiceConnect" "RegistryWrite, ServiceConnect, DeviceConnect" "ServiceConnect" "ServiceConnect,DeviceConnect" (必須) |
secondaryKey | セカンダリ キー。 | string |
CloudToDeviceProperties
名前 | 説明 | 値 |
---|---|---|
defaultTtlAsIso8601 | デバイス キュー内の cloud-to-device メッセージの既定の有効期間。 「/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages」を参照してください。 | string |
feedback | cloud-to-device メッセージのフィードバック キューのプロパティ。 | FeedbackProperties |
maxDeliveryCount | デバイス キュー内のクラウドからデバイスへのメッセージの最大配信数。 「/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages」を参照してください。 | INT 制約: 最小値 = 1 最大値 = 100 |
FeedbackProperties
名前 | 説明 | 値 |
---|---|---|
lockDurationAsIso8601 | フィードバック キューのロック期間。 「/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages」を参照してください。 | string |
maxDeliveryCount | IoT ハブがフィードバック キューでメッセージの配信を試みる回数。 「/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages」を参照してください。 | INT 制約: 最小値 = 1 最大値 = 100 |
ttlAsIso8601 | メッセージが IoT ハブによって期限切れになるまでにメッセージを使用できる期間。 「/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages」を参照してください。 | string |
IotHubPropertiesEventHubEndpoints
名前 | 説明 | 値 |
---|---|---|
{カスタマイズされたプロパティ} | EventHubProperties |
EventHubProperties
名前 | 説明 | 値 |
---|---|---|
partitionCount | Event Hub 互換エンドポイントでデバイスからクラウドへのメッセージを受信するためのパーティションの数。 「/azure/iot-hub/iot-hub-devguide-messaging#device-to-cloud-messages」を参照してください。 | INT |
retentionTimeInDays | デバイスからクラウドへのメッセージの保持時間 (日数)。 参照: /azure/iot-hub/iot-hub-devguide-messaging#device-to-cloud-messages | INT |
IpFilterRule
名前 | 説明 | 値 |
---|---|---|
action | このルールによってキャプチャされた要求に対して必要なアクション。 | "Accept" "Reject" (必須) |
filterName | IP フィルター規則の名前。 | string (必須) |
ipMask | 規則の IP アドレス範囲を CIDR 表記で含む文字列。 | string (必須) |
IotHubPropertiesMessagingEndpoints
名前 | 説明 | 値 |
---|---|---|
{カスタマイズされたプロパティ} | MessagingEndpointProperties |
MessagingEndpointProperties
名前 | 説明 | 値 |
---|---|---|
lockDurationAsIso8601 | ロック期間。 「/azure/iot-hub/iot-hub-devguide-file-upload」を参照してください。 | string |
maxDeliveryCount | IoT ハブがメッセージの配信を試行する回数。 「/azure/iot-hub/iot-hub-devguide-file-upload」を参照してください。 | INT 制約: 最小値 = 1 最大値 = 100 |
ttlAsIso8601 | メッセージが IoT ハブによって期限切れになるまでにメッセージを使用できる期間。 「/azure/iot-hub/iot-hub-devguide-file-upload」を参照してください。 | string |
NetworkRuleSetProperties
名前 | 説明 | 値 |
---|---|---|
applyToBuiltInEventHubEndpoint | True の場合、ネットワーク ルール セットは IotHub の BuiltIn EventHub EndPoint にも適用されます | bool (必須) |
defaultAction | ネットワーク ルール セットの既定のアクション | "許可" "Deny" |
ipRules | IP 規則の一覧 | NetworkRuleSetIpRule[] (必須) |
NetworkRuleSetIpRule
名前 | 説明 | 値 |
---|---|---|
action | IP フィルター アクション | "許可" |
filterName | IP フィルター規則の名前。 | string (必須) |
ipMask | 規則の IP アドレス範囲を CIDR 表記で含む文字列。 | string (必須) |
PrivateEndpointConnection
名前 | 説明 | 値 |
---|---|---|
properties | プライベート エンドポイント接続のプロパティ | PrivateEndpointConnectionProperties (必須) |
PrivateEndpointConnectionProperties
名前 | 説明 | 値 |
---|---|---|
privateEndpoint | プライベート エンドポイント接続のプライベート エンドポイント プロパティ | PrivateEndpoint |
privateLinkServiceConnectionState | プライベート エンドポイント接続の現在の状態 | PrivateLinkServiceConnectionState (必須) |
PrivateEndpoint
このオブジェクトには、デプロイ中に設定するプロパティは含まれません。 すべてのプロパティは ReadOnly です。
PrivateLinkServiceConnectionState
名前 | 説明 | 値 |
---|---|---|
actionsRequired | プライベート エンドポイント接続に必要なアクション | string |
description | プライベート エンドポイント接続の現在の状態の説明 | string (必須) |
status | プライベート エンドポイント接続の状態 | "承認済み" "切断済み" "保留中" "Rejected" (必須) |
RoutingProperties
名前 | 説明 | 値 |
---|---|---|
エンドポイント | IoT ハブがルーティング規則に基づいてメッセージをルーティングするカスタム エンドポイントに関連するプロパティ。 有料ハブのすべてのエンドポイントの種類で最大 10 個のカスタム エンドポイントが許可され、無料ハブのすべてのエンドポイントの種類で許可されるカスタム エンドポイントは 1 つだけです。 | RoutingEndpoints |
エンリッチメント | 組み込みエンドポイントとカスタム エンドポイントに配信されるメッセージに IoT ハブが適用するユーザー指定のエンリッチメントの一覧。 https://aka.ms/telemetryoneventgrid を参照 |
EnrichmentProperties[] |
fallbackRoute | [ルート] セクションで指定された条件が満たされていない場合にフォールバック ルートとして使用されるルートのプロパティ。 これは省略可能なパラメーターです。 このプロパティがテンプレートに存在しない場合、フォールバック ルートは既定で無効になります。 | FallbackRouteProperties |
ルート | IoT ハブが組み込みエンドポイントとカスタム エンドポイントにメッセージをルーティングするために使用するユーザー指定のルーティング規則の一覧。 有料ハブでは最大 100 個のルーティング規則が許可され、無料ハブでは最大 5 つのルーティング規則が許可されます。 | RouteProperties[] |
RoutingEndpoints
名前 | 説明 | 値 |
---|---|---|
cosmosDBSqlContainers | ルーティング規則に基づいて、IoT ハブがメッセージをルーティングする Cosmos DB コンテナー エンドポイントの一覧。 | RoutingCosmosDBSqlApiProperties[] |
eventHubs | ルーティング規則に基づいて、IoT Hub がメッセージをルーティングする Event Hubs エンドポイントの一覧。 この一覧には、組み込みの Event Hubs エンドポイントは含まれません。 | RoutingEventHubProperties[] |
serviceBusQueues | ルーティング規則に基づいて、IoT ハブがメッセージをルーティングする Service Bus キュー エンドポイントの一覧。 | RoutingServiceBusQueueEndpointProperties[] |
serviceBusTopics | ルーティング規則に基づいて、IoT ハブがメッセージをルーティングする Service Bus トピック エンドポイントの一覧。 | RoutingServiceBusTopicEndpointProperties[] |
storageContainers | ルーティング規則に基づいて、IoT ハブがメッセージをルーティングするストレージ コンテナー エンドポイントの一覧。 | RoutingStorageContainerProperties[] |
RoutingCosmosDBSqlApiProperties
名前 | 説明 | 値 |
---|---|---|
authenticationType | Cosmos DB sql コンテナー エンドポイントに対する認証に使用されるメソッド | "identityBased" "keyBased" |
containerName | Cosmos DB データベース内の cosmos DB sql コンテナーの名前。 | string (必須) |
databaseName | Cosmos DB アカウント内の Cosmos DB データベースの名前。 | string (必須) |
endpointUri | Cosmos DB アカウントの URL。 プロトコルを含める必要があります https:// |
string (必須) |
identity | Cosmos DB コンテナー エンドポイントのルーティングのマネージド ID プロパティ。 | ManagedIdentity |
name | このエンドポイントを識別する名前。 名前には英数字、ピリオド、アンダースコア、ハイフンのみを含めることができます。最大長は 64 文字です。 次の名前が予約されています: events、fileNotifications、$default。 エンドポイント名は、エンドポイントの種類間で一意である必要があります。 | string (必須) 制約: Pattern = ^[A-Za-z0-9-._]{1,64}$ |
partitionKeyName | この cosmos DB SQL コンテナーに関連付けられているパーティション キーの名前 (存在する場合)。 これは省略可能なパラメーターです。 | string |
partitionKeyTemplate | この cosmos DB sql コンテナーで使用する合成パーティション キー値を生成するためのテンプレート。 テンプレートには、{iothub}、{deviceid}、{DD}、{MM}、{YYYY} のいずれかのプレースホルダーが少なくとも 1 つ含まれている必要があります。 1 つのプレースホルダーは最大で 1 回指定できますが、順序コンポーネントとプレースホルダー以外のコンポーネントは任意です。 このパラメーターは、PartitionKeyName が指定されている場合にのみ必要です。 | string |
primaryKey | Cosmos DB アカウントの主キー。 | string 制約: 機密性の高い値。 セキュリティで保護されたパラメーターとして を渡します。 |
resourceGroup | Cosmos DB アカウントのリソース グループの名前。 | string |
secondaryKey | Cosmos DB アカウントのセカンダリ キー。 | string 制約: 機密性の高い値。 セキュリティで保護されたパラメーターとして を渡します。 |
subscriptionId | Cosmos DB アカウントのサブスクリプション識別子。 | string |
ManagedIdentity
名前 | 説明 | 値 |
---|---|---|
userAssignedIdentity | ユーザー割り当て ID。 | string |
RoutingEventHubProperties
名前 | 説明 | 値 |
---|---|---|
authenticationType | イベント ハブ エンドポイントに対する認証に使用されるメソッド | "identityBased" "keyBased" |
connectionString | イベント ハブ エンドポイントの接続文字列。 | string |
endpointUri | イベント ハブ エンドポイントの URL。 プロトコル sb:// を含める必要があります | string |
entityPath | イベント ハブ名前空間のイベント ハブ名 | string |
id | イベント ハブ エンドポイントの ID | string |
identity | ルーティング イベント ハブ エンドポイントのマネージド ID プロパティ。 | ManagedIdentity |
name | このエンドポイントを識別する名前。 名前には英数字、ピリオド、アンダースコア、ハイフンのみを含めることができます。最大長は 64 文字です。 次の名前が予約されています: events、fileNotifications、$default。 エンドポイント名は、エンドポイントの種類間で一意である必要があります。 | string (必須) 制約: Pattern = ^[A-Za-z0-9-._]{1,64}$ |
resourceGroup | イベント ハブ エンドポイントのリソース グループの名前。 | string |
subscriptionId | イベント ハブ エンドポイントのサブスクリプション識別子。 | string |
RoutingServiceBusQueueEndpointProperties
名前 | 説明 | 値 |
---|---|---|
authenticationType | Service Bus キュー エンドポイントに対する認証に使用されるメソッド | "identityBased" "keyBased" |
connectionString | Service Bus キュー エンドポイントの接続文字列。 | string |
endpointUri | Service Bus キュー エンドポイントの URL。 プロトコル sb:// を含める必要があります | string |
entityPath | Service Bus 名前空間のキュー名 | string |
id | Service Bus キュー エンドポイントの ID | string |
identity | ルーティング サービス バス キュー エンドポイントのマネージド ID プロパティ。 | ManagedIdentity |
name | このエンドポイントを識別する名前。 名前には英数字、ピリオド、アンダースコア、ハイフンのみを含めることができます。最大長は 64 文字です。 次の名前が予約されています: events、fileNotifications、$default。 エンドポイント名は、エンドポイントの種類間で一意である必要があります。 この名前は、実際のキュー名と同じである必要はありません。 | string (必須) 制約: Pattern = ^[A-Za-z0-9-._]{1,64}$ |
resourceGroup | Service Bus キュー エンドポイントのリソース グループの名前。 | string |
subscriptionId | Service Bus キュー エンドポイントのサブスクリプション識別子。 | string |
RoutingServiceBusTopicEndpointProperties
名前 | 説明 | 値 |
---|---|---|
authenticationType | Service Bus トピック エンドポイントに対する認証に使用されるメソッド | "identityBased" "keyBased" |
connectionString | Service Bus トピック エンドポイントの接続文字列。 | string |
endpointUri | Service Bus トピック エンドポイントの URL。 プロトコル sb:// を含める必要があります | string |
entityPath | Service Bus トピックのキュー名 | string |
id | Service Bus トピック エンドポイントの ID | string |
identity | ルーティング サービス バス トピック エンドポイントのマネージド ID プロパティ。 | ManagedIdentity |
name | このエンドポイントを識別する名前。 名前には英数字、ピリオド、アンダースコア、ハイフンのみを含めることができます。最大長は 64 文字です。 次の名前が予約されています: events、fileNotifications、$default。 エンドポイント名は、エンドポイントの種類間で一意である必要があります。 名前は、実際のトピック名と同じである必要はありません。 | string (必須) 制約: Pattern = ^[A-Za-z0-9-._]{1,64}$ |
resourceGroup | Service Bus トピック エンドポイントのリソース グループの名前。 | string |
subscriptionId | Service Bus トピック エンドポイントのサブスクリプション識別子。 | string |
RoutingStorageContainerProperties
名前 | 説明 | 値 |
---|---|---|
authenticationType | ストレージ エンドポイントに対する認証に使用されるメソッド | "identityBased" "keyBased" |
batchFrequencyInSeconds | BLOB がストレージに書き込まれる時間間隔。 値は 60 ~ 720 秒にする必要があります。 既定値は 300 秒です。 | INT 制約: 最小値 = 60 最大値 = 720 |
connectionString | ストレージ アカウントの接続文字列。 | string |
containerName | ストレージ アカウント内のストレージ コンテナーの名前。 | string (必須) |
encoding | メッセージを BLOB にシリアル化するために使用されるエンコード。 サポートされている値は、'avro'、'avrodeflate'、および 'JSON' です。 既定値は 'avro' です。 | "Avro" "AvroDeflate" "JSON" |
endpointUri | ストレージ エンドポイントの URL。 プロトコルを含める必要があります https:// |
string |
fileNameFormat | BLOB のファイル名の形式。 既定の形式は {iothub}/{partition}/{YYYY}/{MM}/{DD}/{HH}/{mm} です。 すべてのパラメーターは必須ですが、順序を変更できます。 | string |
id | ストレージ コンテナー エンドポイントの ID | string |
identity | ルーティング ストレージ エンドポイントのマネージド ID プロパティ。 | ManagedIdentity |
maxChunkSizeInBytes | ストレージに書き込まれる各 BLOB の最大バイト数。 値は、10485760(10 MB) から 524288000(500 MB) の間である必要があります。 既定値は 314572800(300 MB) です。 | INT 制約: 最小値 = 10485760 最大値 = 524288000 |
name | このエンドポイントを識別する名前。 名前には英数字、ピリオド、アンダースコア、ハイフンのみを含めることができます。最大長は 64 文字です。 次の名前が予約されています: events、fileNotifications、$default。 エンドポイント名は、エンドポイントの種類間で一意である必要があります。 | string (必須) 制約: Pattern = ^[A-Za-z0-9-._]{1,64}$ |
resourceGroup | ストレージ アカウントのリソース グループの名前。 | string |
subscriptionId | ストレージ アカウントのサブスクリプション識別子。 | string |
EnrichmentProperties
名前 | 説明 | 値 |
---|---|---|
endpointNames | エンリッチメントがメッセージに適用されるエンドポイントの一覧。 | string[] (必須) 制約: 最小長 = 1 |
key | エンリッチメント プロパティのキーまたは名前。 | string (必須) |
value | エンリッチメント プロパティの値。 | string (必須) |
FallbackRouteProperties
名前 | 説明 | 値 |
---|---|---|
condition | フォールバック ルートを適用するために評価される条件。 条件が指定されていない場合、既定では true と評価されます。 文法については、「/azure/iot-hub/iot-hub-devguide-query-language」を参照してください。 | string |
endpointNames | 条件を満たすメッセージのルーティング先となるエンドポイントの一覧。 現在、許可されているエンドポイントは 1 つだけです。 | string[] (必須) 制約: 最小長 = 1 最大長 = 1 |
isEnabled | フォールバック ルートを有効にするかどうかを指定するために使用します。 | bool (必須) |
name | ルートの名前。 名前には、英数字、ピリオド、アンダースコア、ハイフンのみを含めることができます。最大長は 64 文字で、一意である必要があります。 | string |
source | ルーティング規則を適用するソース。 たとえば、DeviceMessages | "DeviceConnectionStateEvents" "DeviceJobLifecycleEvents" "DeviceLifecycleEvents" "DeviceMessages" "無効" "TwinChangeEvents" (必須) |
RouteProperties
名前 | 説明 | 値 |
---|---|---|
condition | ルーティング規則を適用するために評価される条件。 条件が指定されていない場合、既定では true と評価されます。 文法については、/azure/iot-hub/iot-hub-devguide-query-language を参照してください。 | string |
endpointNames | 条件を満たすメッセージがルーティングされるエンドポイントの一覧。 現在、許可されているエンドポイントは 1 つだけです。 | string[] (必須) 制約: 最小長 = 1 最大長 = 1 |
isEnabled | ルートが有効かどうかを指定するために使用します。 | bool (必須) |
name | ルートの名前。 名前には、英数字、ピリオド、アンダースコア、ハイフンのみを含めることができます。最大長は 64 文字で、一意である必要があります。 | string (必須) 制約: Pattern = ^[A-Za-z0-9-._]{1,64}$ |
source | ルーティング規則を適用するソース (DeviceMessages など)。 | "DeviceConnectionStateEvents" "DeviceJobLifecycleEvents" "DeviceLifecycleEvents" "DeviceMessages" "無効" "TwinChangeEvents" (必須) |
IotHubPropertiesStorageEndpoints
名前 | 説明 | 値 |
---|---|---|
{カスタマイズされたプロパティ} | StorageEndpointProperties |
StorageEndpointProperties
名前 | 説明 | 値 |
---|---|---|
authenticationType | ストレージ アカウントへの接続に使用される認証の種類を指定します。 | "identityBased" "keyBased" |
connectionString | ファイルがアップロードされる Azure Storage アカウントの接続文字列。 | string (必須) |
containerName | ファイルをアップロードするルート コンテナーの名前。 コンテナーは存在する必要はありませんが、指定された connectionString を使用して作成できる必要があります。 | string (必須) |
identity | ファイルアップロード用のストレージ エンドポイントのマネージド ID プロパティ。 | ManagedIdentity |
sasTtlAsIso8601 | ファイルのアップロードにIoT Hubによって生成された SAS URI が有効な期間。 「/azure/iot-hub/iot-hub-devguide-file-upload#file-upload-notification-configuration-options」を参照してください。 | string |
IotHubSkuInfo
名前 | 説明 | 値 |
---|---|---|
capacity | プロビジョニングされたIoT Hubユニットの数。 「/azure/azure-subscription-service-limits#iot-hub-limits」を参照してください。 | INT |
name | SKU の名前。 | "B1" "B2" "B3" "F1" "S1" "S2" "S3" (必須) |