Microsoft.Devices IotHubs 2021-07-02-preview
Bicep 리소스 정의
IotHubs 리소스 종류는 다음을 대상으로 하는 작업으로 배포할 수 있습니다.
- 리소스 그룹 - 리소스 그룹 배포 명령을 참조하세요.
각 API 버전에서 변경된 속성 목록은 변경 로그를 참조하세요.
리소스 형식
Microsoft.Devices/IotHubs 리소스를 만들려면 템플릿에 다음 Bicep을 추가합니다.
resource symbolicname 'Microsoft.Devices/IotHubs@2021-07-02-preview' = {
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'
deviceStreams: {
streamingEndpoints: [
'string'
]
}
disableDeviceSAS: bool
disableLocalAuth: bool
disableModuleSAS: bool
enableDataResidency: bool
enableFileUploadNotifications: bool
encryption: {
keySource: 'string'
keyVaultProperties: [
{
identity: {
userAssignedIdentity: 'string'
}
keyIdentifier: 'string'
}
]
}
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: {
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 | Description | 값 |
---|---|---|
name | 리소스 이름 | string(필수) 문자 제한: 3-50 유효한 문자: 영숫자 및 하이픈 하이픈으로 끝날 수 없습니다. 리소스 이름은 Azure에서 고유해야 합니다. |
위치 | 리소스 위치입니다. | string(필수) |
tags | 리소스 태그입니다. | 태그 이름 및 값의 사전입니다. 템플릿의 태그를 참조하세요. |
sku | IotHub SKU 정보 | IotHubSkuInfo (필수) |
etag | Etag 필드는 필요하지 않습니다 . 응답 본문에 제공된 경우 일반 ETag 규칙에 따라 헤더로도 제공해야 합니다. | string |
identity | IotHub에 대한 관리 ID입니다. | ArmIdentity |
properties | IotHub 속성 | IotHubProperties |
ArmIdentity
Name | Description | 값 |
---|---|---|
형식 | 리소스에 사용되는 ID 유형입니다. 'SystemAssigned,UserAssigned' 형식에는 암시적으로 생성된 ID와 사용자 할당 ID 집합이 모두 포함됩니다. 'None' 형식은 서비스에서 모든 ID를 제거합니다. | 'None' 'SystemAssigned' 'SystemAssigned, UserAssigned' 'UserAssigned' |
userAssignedIdentities | {ArmUserIdentity} 사전 | ArmIdentityUserAssignedIdentities |
ArmIdentityUserAssignedIdentities
Name | Description | 값 |
---|---|---|
{customized property} | ArmUserIdentity |
ArmUserIdentity
이 개체에는 배포 중에 설정할 속성이 포함되어 있지 않습니다. 모든 속성은 ReadOnly입니다.
IotHubProperties
Name | Description | 값 |
---|---|---|
allowedFqdnList | Iot Hub에서 송신할 수 있는 FQDN(정규화된 도메인 이름) 목록입니다. | string[] |
authorizationPolicies | IoT Hub에 대한 연결을 보호하는 데 사용할 수 있는 공유 액세스 정책입니다. | SharedAccessSignatureAuthorizationRule[] |
cloudToDevice | IoT Hub 클라우드-디바이스 메시징 속성입니다. | CloudToDeviceProperties |
comments | IoT Hub 주석. | 문자열 |
deviceStreams | 디바이스는 iothub의 속성을 스트리밍합니다. | IotHubPropertiesDeviceStreams |
disableDeviceSAS | true이면 모든 디바이스(Edge 디바이스를 포함하지만 모듈 제외)의 범위가 지정된 SAS 키를 인증에 사용할 수 없습니다. | bool |
disableLocalAuth | true이면 IoT 허브 범위 SAS 키가 있는 SAS 토큰을 인증에 사용할 수 없습니다. | bool |
disableModuleSAS | true이면 모든 모듈 범위 SAS 키를 인증에 사용할 수 없습니다. | bool |
enableDataResidency | true로 설정된 경우 이 속성을 사용하면 데이터 상주가 가능하므로 재해 복구를 사용하지 않도록 설정합니다. | bool |
enableFileUploadNotifications | True이면 파일 업로드 알림이 사용하도록 설정됩니다. | bool |
암호화 | IoT Hub에 대한 암호화 속성입니다. | EncryptionPropertiesDescription |
eventHubEndpoints | Event Hub 호환 엔드포인트 속성입니다. 이 사전에 사용할 수 있는 유일한 키는 이벤트입니다. 이 키는 IoT Hub에 대한 호출을 만들거나 업데이트하는 동안 사전에 있어야 합니다. | IotHubPropertiesEventHubEndpoints |
기능 | IoT Hub에 대해 사용하도록 설정된 기능 및 기능입니다. | 'DeviceManagement' 'None' |
ipFilterRules | IP 필터 규칙입니다. | IpFilterRule[] |
messagingEndpoints | 파일 업로드 알림 큐에 대한 메시징 엔드포인트 속성입니다. | IotHubPropertiesMessagingEndpoints |
minTlsVersion | 이 허브에 대해 지원할 최소 TLS 버전을 지정합니다. 1.2 미만의 TLS 버전을 사용하는 클라이언트를 거부하도록 "1.2"로 설정할 수 있습니다. | 문자열 |
networkRuleSets | IotHub의 네트워크 규칙 집합 속성 | NetworkRuleSetProperties |
privateEndpointConnections | 이 IotHub에서 만든 프라이빗 엔드포인트 연결 | PrivateEndpointConnection[] |
publicNetworkAccess | 공용 네트워크의 요청 허용 여부 | 'Disabled' 'Enabled' |
restrictOutboundNetworkAccess | true이면 IotHub에서 송신이 allowedFqdnList를 통해 구성된 허용된 FQDN으로만 제한됩니다. | bool |
라우팅 | IoT Hub의 라우팅 관련 속성입니다. 참조: /azure/iot-hub/iot-hub-devguide-messaging | RoutingProperties |
storageEndpoints | 파일을 업로드할 수 있는 Azure Storage 엔드포인트 목록입니다. 현재는 하나의 Azure Storage 계정만 구성할 수 있으며 해당 키는 $default. 둘 이상의 스토리지 계정을 지정하면 오류가 throw됩니다. enableFileUploadNotifications 속성이 True로 설정된 경우 이 속성의 값을 지정하지 않으면 오류가 throw됩니다. | IotHubPropertiesStorageEndpoints |
SharedAccessSignatureAuthorizationRule
Name | Description | 값 |
---|---|---|
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
Name | Description | 값 |
---|---|---|
defaultTtlAsIso8601 | 디바이스 큐의 클라우드-디바이스 메시지에 대한 기본 라이브 시간입니다. 참조: /azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages. | 문자열 |
사용자 의견 | 클라우드-디바이스 메시지에 대한 피드백 큐의 속성입니다. | FeedbackProperties |
maxDeliveryCount | 디바이스 큐의 클라우드-디바이스 메시지에 대한 최대 배달 수입니다. 참조: /azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages. | int 제약 조건: 최소값 = 1 최대값 = 100 |
FeedbackProperties
Name | Description | 값 |
---|---|---|
lockDurationAsIso8601 | 피드백 큐의 잠금 기간입니다. 참조: /azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages. | 문자열 |
maxDeliveryCount | IoT Hub가 피드백 큐에 메시지를 배달하려고 시도하는 횟수입니다. 참조: /azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages. | int 제약 조건: 최소값 = 1 최대값 = 100 |
ttlAsIso8601 | IoT Hub에서 만료되기 전에 메시지를 사용할 수 있는 기간입니다. 참조: /azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages. | string |
IotHubPropertiesDeviceStreams
Name | Description | 값 |
---|---|---|
streamingEndpoints | 디바이스 스트림 엔드포인트 목록입니다. | string[] |
EncryptionPropertiesDescription
Name | Description | 값 |
---|---|---|
keySource | 키의 원본입니다. | 문자열 |
keyVaultProperties | KeyVault 키의 속성입니다. | KeyVaultKeyProperties[] |
KeyVaultKeyProperties
Name | Description | 값 |
---|---|---|
identity | KeyVault Key의 관리 ID 속성입니다. | ManagedIdentity |
keyIdentifier | 키의 식별자입니다. | string |
ManagedIdentity
Name | Description | 값 |
---|---|---|
userAssignedIdentity | 사용자 할당 ID입니다. | 문자열 |
IotHubPropertiesEventHubEndpoints
Name | Description | 값 |
---|---|---|
{customized property} | EventHubProperties |
EventHubProperties
Name | Description | 값 |
---|---|---|
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
Name | Description | 값 |
---|---|---|
action | 이 규칙에서 캡처한 요청에 대해 원하는 작업입니다. | '수락' 'Reject'(필수) |
filterName | IP 필터 규칙의 이름입니다. | string(필수) |
ipMask | 규칙에 대한 CIDR 표기법의 IP 주소 범위를 포함하는 문자열입니다. | string(필수) |
IotHubPropertiesMessagingEndpoints
Name | Description | 값 |
---|---|---|
{사용자 지정 속성} | MessagingEndpointProperties |
MessagingEndpointProperties
Name | Description | 값 |
---|---|---|
lockDurationAsIso8601 | 잠금 기간입니다. 참조: /azure/iot-hub/iot-hub-devguide-file-upload. | 문자열 |
maxDeliveryCount | IoT Hub가 메시지를 배달하려고 시도하는 횟수입니다. 참조: /azure/iot-hub/iot-hub-devguide-file-upload. | int 제약 조건: 최소값 = 1 최대값 = 100 |
ttlAsIso8601 | IoT Hub에서 만료되기 전에 메시지를 사용할 수 있는 기간입니다. 참조: /azure/iot-hub/iot-hub-devguide-file-upload. | string |
NetworkRuleSetProperties
Name | Description | 값 |
---|---|---|
applyToBuiltInEventHubEndpoint | True이면 네트워크 규칙 집합이 IotHub의 BuiltIn EventHub 엔드포인트에도 적용됩니다. | bool(필수) |
defaultAction | 네트워크 규칙 집합에 대한 기본 작업 | '허용' '거부' |
ipRules | IP 규칙 목록 | NetworkRuleSetIpRule[] (필수) |
NetworkRuleSetIpRule
Name | Description | 값 |
---|---|---|
action | IP 필터 작업 | '허용' |
filterName | IP 필터 규칙의 이름입니다. | string(필수) |
ipMask | 규칙에 대한 CIDR 표기법의 IP 주소 범위를 포함하는 문자열입니다. | string(필수) |
PrivateEndpointConnection
Name | Description | 값 |
---|---|---|
properties | 프라이빗 엔드포인트 연결의 속성 | PrivateEndpointConnectionProperties (필수) |
PrivateEndpointConnectionProperties
Name | Description | 값 |
---|---|---|
privateEndpoint | 프라이빗 엔드포인트 연결의 프라이빗 엔드포인트 속성 | PrivateEndpoint |
privateLinkServiceConnectionState | 프라이빗 엔드포인트 연결의 현재 상태 | PrivateLinkServiceConnectionState (필수) |
PrivateEndpoint
이 개체에는 배포 중에 설정할 속성이 포함되어 있지 않습니다. 모든 속성은 ReadOnly입니다.
PrivateLinkServiceConnectionState
Name | Description | 값 |
---|---|---|
actionsRequired | 프라이빗 엔드포인트 연결에 필요한 작업 | 문자열 |
description | 프라이빗 엔드포인트 연결의 현재 상태에 대한 설명 | string(필수) |
상태 | 프라이빗 엔드포인트 연결의 상태 | '승인됨' '연결 끊김' '보류 중' '거부됨'(필수) |
RoutingProperties
Name | Description | 값 |
---|---|---|
엔드포인트 | IoT Hub가 라우팅 규칙에 따라 메시지를 라우팅하는 사용자 지정 엔드포인트와 관련된 속성입니다. 유료 허브의 모든 엔드포인트 유형에서 최대 10개의 사용자 지정 엔드포인트가 허용되며, 무료 허브의 모든 엔드포인트 유형에서 1개의 사용자 지정 엔드포인트만 허용됩니다. | RoutingEndpoints |
보강 | IoT Hub가 기본 제공 및 사용자 지정 엔드포인트에 배달할 메시지에 적용되는 사용자 제공 보강 목록입니다.
https://aka.ms/telemetryoneventgrid 을 참조하세요. |
EnrichmentProperties[] |
fallbackRoute | 'routes' 섹션에 지정된 조건이 충족되지 않는 경우 대체 경로로 사용되는 경로의 속성입니다. 선택적 매개 변수입니다. 이 속성을 설정하지 않으면 'routes' 섹션에 지정된 조건을 충족하지 않는 메시지는 기본 제공 eventhub 엔드포인트로 라우팅됩니다. | FallbackRouteProperties |
경로 | IoT Hub가 메시지를 기본 제공 및 사용자 지정 엔드포인트로 라우팅하는 데 사용하는 사용자 제공 라우팅 규칙 목록입니다. 유료 허브에는 최대 100개의 라우팅 규칙이 허용되며 무료 허브에는 최대 5개의 라우팅 규칙이 허용됩니다. | RouteProperties[] |
RoutingEndpoints
Name | Description | 값 |
---|---|---|
eventHubs | 라우팅 규칙에 따라 IoT Hub가 메시지를 라우팅하는 Event Hubs 엔드포인트 목록입니다. 이 목록에는 기본 제공 Event Hubs 엔드포인트가 포함되지 않습니다. | RoutingEventHubProperties[] |
serviceBusQueues | 라우팅 규칙에 따라 IoT Hub가 메시지를 라우팅하는 Service Bus 큐 엔드포인트 목록입니다. | RoutingServiceBusQueueEndpointProperties[] |
serviceBusTopics | 라우팅 규칙에 따라 IoT Hub가 메시지를 라우팅하는 Service Bus 토픽 엔드포인트 목록입니다. | RoutingServiceBusTopicEndpointProperties[] |
storageContainers | 라우팅 규칙에 따라 IoT Hub가 메시지를 라우팅하는 스토리지 컨테이너 엔드포인트 목록입니다. | RoutingStorageContainerProperties[] |
RoutingEventHubProperties
Name | Description | 값 |
---|---|---|
authenticationType | 이벤트 허브 엔드포인트에 대해 인증하는 데 사용되는 메서드 | 'identityBased' 'keyBased' |
connectionString | 이벤트 허브 엔드포인트의 연결 문자열. | string |
endpointUri | 이벤트 허브 엔드포인트의 URL입니다. 프로토콜 sb:// 포함해야 합니다. | 문자열 |
entityPath | 이벤트 허브 네임스페이스의 이벤트 허브 이름 | 문자열 |
id | 이벤트 허브 엔드포인트의 ID | string |
identity | 라우팅 이벤트 허브 엔드포인트의 관리 ID 속성입니다. | ManagedIdentity |
name | 이 엔드포인트를 식별하는 이름입니다. 이름은 영숫자 문자, 마침표, 밑줄, 하이픈만 포함할 수 있으며 최대 길이는 64자입니다. 예약된 이름은 이벤트, fileNotifications, $default. 엔드포인트 이름은 엔드포인트 유형에서 고유해야 합니다. | string(필수) 제약 조건: 패턴 = ^[A-Za-z0-9-._]{1,64}$ |
resourceGroup | 이벤트 허브 엔드포인트의 리소스 그룹 이름입니다. | string |
subscriptionId | 이벤트 허브 엔드포인트의 구독 식별자입니다. | string |
RoutingServiceBusQueueEndpointProperties
Name | Description | 값 |
---|---|---|
authenticationType | Service Bus 큐 엔드포인트에 대해 인증하는 데 사용되는 메서드 | 'identityBased' 'keyBased' |
connectionString | Service Bus 큐 엔드포인트의 연결 문자열. | string |
endpointUri | Service Bus 큐 엔드포인트의 URL입니다. 프로토콜 sb:// 포함해야 합니다. | 문자열 |
entityPath | Service Bus 네임스페이스의 큐 이름 | 문자열 |
id | Service Bus 큐 엔드포인트의 ID | 문자열 |
identity | 라우팅 Service Bus 큐 엔드포인트의 관리 ID 속성입니다. | ManagedIdentity |
name | 이 엔드포인트를 식별하는 이름입니다. 이름은 영숫자 문자, 마침표, 밑줄, 하이픈만 포함할 수 있으며 최대 길이는 64자입니다. 예약된 이름은 이벤트, fileNotifications, $default. 엔드포인트 이름은 엔드포인트 유형에서 고유해야 합니다. 이름은 실제 큐 이름과 같을 필요가 없습니다. | string(필수) 제약 조건: 패턴 = ^[A-Za-z0-9-._]{1,64}$ |
resourceGroup | Service Bus 큐 엔드포인트의 리소스 그룹 이름입니다. | string |
subscriptionId | Service Bus 큐 엔드포인트의 구독 식별자입니다. | string |
RoutingServiceBusTopicEndpointProperties
Name | Description | 값 |
---|---|---|
authenticationType | Service Bus 토픽 엔드포인트에 대해 인증하는 데 사용되는 메서드 | 'identityBased' 'keyBased' |
connectionString | Service Bus 토픽 엔드포인트의 연결 문자열. | string |
endpointUri | Service Bus 토픽 엔드포인트의 URL입니다. 프로토콜 sb:// 포함해야 합니다. | 문자열 |
entityPath | Service Bus 토픽의 큐 이름 | 문자열 |
id | Service Bus 토픽 엔드포인트의 ID | string |
identity | 라우팅 Service Bus 토픽 엔드포인트의 관리 ID 속성입니다. | ManagedIdentity |
name | 이 엔드포인트를 식별하는 이름입니다. 이름은 영숫자 문자, 마침표, 밑줄, 하이픈만 포함할 수 있으며 최대 길이는 64자입니다. 예약된 이름은 이벤트, fileNotifications, $default. 엔드포인트 이름은 엔드포인트 유형에서 고유해야 합니다. 이름은 실제 토픽 이름과 같을 필요가 없습니다. | string(필수) 제약 조건: 패턴 = ^[A-Za-z0-9-._]{1,64}$ |
resourceGroup | Service Bus 토픽 엔드포인트의 리소스 그룹 이름입니다. | string |
subscriptionId | Service Bus 토픽 엔드포인트의 구독 식별자입니다. | string |
RoutingStorageContainerProperties
Name | Description | 값 |
---|---|---|
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:// |
문자열 |
fileNameFormat | Blob의 파일 이름 형식입니다. 기본 형식은 {iothub}/{partition}/{YYYY}/{MM}/{DD}/{HH}/{mm}입니다. 모든 매개 변수는 필수이지만 순서를 변경할 수 있습니다. | 문자열 |
id | 스토리지 컨테이너 엔드포인트의 ID | string |
identity | 라우팅 스토리지 엔드포인트의 관리 ID 속성입니다. | ManagedIdentity |
maxChunkSizeInBytes | 스토리지에 기록된 각 Blob의 최대 바이트 수입니다. 값은 10485760(10MB)와 524288000(500MB) 사이여야 합니다. 기본값은 314572800(300MB)입니다. | int 제약 조건: 최소값 = 10485760 최대값 = 524288000 |
name | 이 엔드포인트를 식별하는 이름입니다. 이름은 영숫자 문자, 마침표, 밑줄, 하이픈만 포함할 수 있으며 최대 길이는 64자입니다. 예약된 이름은 이벤트, fileNotifications, $default. 엔드포인트 이름은 엔드포인트 유형에서 고유해야 합니다. | string(필수) 제약 조건: 패턴 = ^[A-Za-z0-9-._]{1,64}$ |
resourceGroup | 스토리지 계정의 리소스 그룹 이름입니다. | string |
subscriptionId | 스토리지 계정의 구독 식별자입니다. | string |
EnrichmentProperties
Name | Description | 값 |
---|---|---|
endpointNames | 보강이 메시지에 적용되는 엔드포인트 목록입니다. | string[] (필수) 제약 조건: 최소 길이 = 1 |
key | 보강 속성의 키 또는 이름입니다. | string(필수) |
값 | 보강 속성의 값입니다. | string(필수) |
FallbackRouteProperties
Name | Description | 값 |
---|---|---|
condition(조건) | 대체 경로를 적용하기 위해 평가되는 조건입니다. 조건이 제공되지 않으면 기본적으로 true로 평가됩니다. 문법은 /azure/iot-hub/iot-hub-devguide-query-language를 참조하세요. | 문자열 |
endpointNames | 조건을 충족하는 메시지가 라우팅되는 엔드포인트 목록입니다. 현재 1개 엔드포인트만 허용됩니다. | string[] (필수) 제약 조건: 최소 길이 = 1 최대 길이 = 1 |
isEnabled | 대체 경로를 사용할지 여부를 지정하는 데 사용됩니다. | bool(필수) |
name | 경로의 이름입니다. 이름은 영숫자 문자, 마침표, 밑줄, 하이픈만 포함할 수 있으며 최대 길이는 64자이며 고유해야 합니다. | 문자열 |
source | 라우팅 규칙을 적용할 원본입니다. 예를 들어 DeviceMessages | 'DeviceConnectionStateEvents' 'DeviceJobLifecycleEvents' 'DeviceLifecycleEvents' 'DeviceMessages' 'DigitalTwinChangeEvents' 'Invalid' 'MqttBrokerMessages' 'TwinChangeEvents'(필수) |
RouteProperties
Name | Description | 값 |
---|---|---|
condition(조건) | 라우팅 규칙을 적용하기 위해 평가되는 조건입니다. 조건이 제공되지 않으면 기본적으로 true로 평가됩니다. 문법은 /azure/iot-hub/iot-hub-devguide-query-language를 참조하세요. | 문자열 |
endpointNames | 조건을 충족하는 메시지가 라우팅되는 엔드포인트 목록입니다. 현재 하나의 엔드포인트만 허용됩니다. | string[] (필수) 제약 조건: 최소 길이 = 1 최대 길이 = 1 |
isEnabled | 경로를 사용할지 여부를 지정하는 데 사용됩니다. | bool(필수) |
name | 경로의 이름입니다. 이름은 영숫자 문자, 마침표, 밑줄, 하이픈만 포함할 수 있으며 최대 길이는 64자이며 고유해야 합니다. | string(필수) 제약 조건: 패턴 = ^[A-Za-z0-9-._]{1,64}$ |
source | DeviceMessages와 같이 라우팅 규칙을 적용할 원본입니다. | 'DeviceConnectionStateEvents' 'DeviceJobLifecycleEvents' 'DeviceLifecycleEvents' 'DeviceMessages' 'DigitalTwinChangeEvents' '유효하지 않음' 'MqttBrokerMessages' 'TwinChangeEvents'(필수) |
IotHubPropertiesStorageEndpoints
Name | Description | 값 |
---|---|---|
{사용자 지정 속성} | StorageEndpointProperties |
StorageEndpointProperties
Name | Description | 값 |
---|---|---|
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. | 문자열 |
IotHubSkuInfo
Name | Description | 값 |
---|---|---|
용량 | 프로비전된 IoT Hub 단위의 수입니다. 참조: /azure/azure-subscription-service-limits#iot-hub-limits. | int |
name | SKU의 이름입니다. | 'B1' 'B2' 'B3' 'F1' 'S1' 'S2' 'S3'(필수) |
빠른 시작 템플릿
다음 빠른 시작 템플릿은 이 리소스 유형을 배포합니다.
템플릿 | Description |
---|---|
IOT Hub 및 Ubuntu 에지 시뮬레이터 만들기 |
이 템플릿은 IOT Hub 및 Virtual Machine Ubuntu 에지 시뮬레이터를 만듭니다. |
ARM 템플릿을 사용하여 IoT Hub 만들고, 메시지를 라우팅하고, 봅니다. |
이 템플릿을 사용하여 IoT Hub 및 스토리지 계정을 배포합니다. 앱을 실행하여 스토리지로 라우팅되는 허브로 메시지를 보낸 다음 결과를 봅니다. |
IoT Hub Device Provisioning Service 만들기 |
이 템플릿을 사용하면 IoT Hub와 IoT Hub Device Provisioning Service를 만들고 두 서비스를 함께 연결할 수 있습니다. |
IoT Hub 및 디바이스-클라우드 소비자 그룹 만들기 |
이 템플릿을 사용하면 디바이스를 사용하는 IoT Hub instance 클라우드 및 클라우드에서 디바이스 메시징 구성으로 배포하고 디바이스를 클라우드 소비자 그룹에 배포할 수 있습니다. |
IoT Hub 계정, instance, IoT Hub 디바이스 업데이트 만들기 |
이 템플릿은 계정을 만들고 instance 연결할 instance 및 허브를 만듭니다. 필요한 액세스 정책, 경로 및 소비자 그룹을 사용하여 허브를 구성합니다. |
Azure IoT Hub 포함하여 MedTech 서비스 배포 |
MedTech 서비스는 여러 디바이스에서 디바이스 데이터를 수집하여 디바이스 데이터를 FHIR 관찰로 변환한 다음 Azure Health Data Services FHIR 서비스에 유지되도록 설계된 Azure Health Data Services 중 하나입니다. |
IoT Hub 사용하여 PAYG(종량제) 환경 만들기 |
이 템플릿을 사용하면 IoT Hub 이벤트를 사용하도록 구성된 PAYG(Pay As You Go) Time Series Insights 환경을 배포할 수 있습니다. |
ARM 템플릿 리소스 정의
IotHubs 리소스 종류는 다음을 대상으로 하는 작업으로 배포할 수 있습니다.
- 리소스 그룹 - 리소스 그룹 배포 명령 참조
각 API 버전에서 변경된 속성 목록은 변경 로그를 참조하세요.
리소스 형식
Microsoft.Devices/IotHubs 리소스를 만들려면 템플릿에 다음 JSON을 추가합니다.
{
"type": "Microsoft.Devices/IotHubs",
"apiVersion": "2021-07-02-preview",
"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",
"deviceStreams": {
"streamingEndpoints": [ "string" ]
},
"disableDeviceSAS": "bool",
"disableLocalAuth": "bool",
"disableModuleSAS": "bool",
"enableDataResidency": "bool",
"enableFileUploadNotifications": "bool",
"encryption": {
"keySource": "string",
"keyVaultProperties": [
{
"identity": {
"userAssignedIdentity": "string"
},
"keyIdentifier": "string"
}
]
},
"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": {
"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 | Description | 값 |
---|---|---|
형식 | 리소스 종류 | 'Microsoft.Devices/IotHubs' |
apiVersion | 리소스 api 버전 | '2021-07-02-preview' |
name | 리소스 이름 | string(필수) 문자 제한: 3-50 유효한 문자: 영숫자 및 하이픈 하이픈으로 끝날 수 없습니다. 리소스 이름은 Azure에서 고유해야 합니다. |
위치 | 리소스 위치입니다. | string(필수) |
tags | 리소스 태그입니다. | 태그 이름 및 값의 사전입니다. 템플릿의 태그를 참조하세요. |
sku | IotHub SKU 정보 | IotHubSkuInfo (필수) |
etag | Etag 필드는 필요하지 않습니다 . 응답 본문에 제공된 경우 일반적인 ETag 규칙에 따라 헤더로도 제공해야 합니다. | 문자열 |
identity | IotHub의 관리 ID입니다. | ArmIdentity |
properties | IotHub 속성 | IotHubProperties |
ArmIdentity
Name | Description | 값 |
---|---|---|
형식 | 리소스에 사용되는 ID 유형입니다. 'SystemAssigned,UserAssigned' 형식에는 암시적으로 생성된 ID와 사용자 할당 ID 집합이 모두 포함됩니다. 'None' 형식은 서비스에서 ID를 제거합니다. | 'None' 'SystemAssigned' 'SystemAssigned, UserAssigned' 'UserAssigned' |
userAssignedIdentities | {ArmUserIdentity} 사전 | ArmIdentityUserAssignedIdentities |
ArmIdentityUserAssignedIdentities
Name | Description | 값 |
---|---|---|
{사용자 지정 속성} | ArmUserIdentity |
ArmUserIdentity
이 개체에는 배포 중에 설정할 속성이 포함되어 있지 않습니다. 모든 속성은 ReadOnly입니다.
IotHubProperties
Name | Description | 값 |
---|---|---|
allowedFqdnList | Iot Hub에서 송신할 수 있는 FQDN(정규화된 도메인 이름) 목록입니다. | string[] |
authorizationPolicies | IoT Hub에 대한 연결을 보호하는 데 사용할 수 있는 공유 액세스 정책입니다. | SharedAccessSignatureAuthorizationRule[] |
cloudToDevice | IoT Hub 클라우드-디바이스 메시징 속성입니다. | CloudToDeviceProperties |
comments | IoT Hub 주석. | 문자열 |
deviceStreams | 디바이스는 iothub의 속성을 스트림합니다. | IotHubPropertiesDeviceStreams |
disableDeviceSAS | true이면 모든 디바이스(Edge 디바이스를 포함하지만 모듈 제외) 범위 SAS 키는 인증에 사용할 수 없습니다. | bool |
disableLocalAuth | true이면 IoT Hub 범위 SAS 키가 있는 SAS 토큰을 인증에 사용할 수 없습니다. | bool |
disableModuleSAS | true이면 모든 모듈 범위 SAS 키를 인증에 사용할 수 없습니다. | bool |
enableDataResidency | true로 설정된 경우 이 속성은 데이터 보존을 사용하도록 설정하므로 재해 복구를 사용하지 않도록 설정합니다. | bool |
enableFileUploadNotifications | True이면 파일 업로드 알림이 활성화됩니다. | bool |
암호화 | IoT Hub에 대한 암호화 속성입니다. | EncryptionPropertiesDescription |
eventHubEndpoints | Event Hub 호환 엔드포인트 속성입니다. 이 사전에 사용할 수 있는 유일한 키는 이벤트입니다. 이 키는 IoT Hub에 대한 호출을 만들거나 업데이트하는 동안 사전에 있어야 합니다. | IotHubPropertiesEventHubEndpoints |
기능 | IoT Hub에 대해 사용하도록 설정된 기능 및 기능입니다. | 'DeviceManagement' 'None' |
ipFilterRules | IP 필터 규칙입니다. | IpFilterRule[] |
messagingEndpoints | 파일 업로드 알림 큐에 대한 메시징 엔드포인트 속성입니다. | IotHubPropertiesMessagingEndpoints |
minTlsVersion | 이 허브에 대해 지원할 최소 TLS 버전을 지정합니다. 1.2 미만의 TLS 버전을 사용하는 클라이언트가 거부되도록 하려면 "1.2"로 설정할 수 있습니다. | 문자열 |
networkRuleSets | IotHub의 네트워크 규칙 집합 속성 | NetworkRuleSetProperties |
privateEndpointConnections | 이 IotHub에서 만든 프라이빗 엔드포인트 연결 | PrivateEndpointConnection[] |
publicNetworkAccess | 공용 네트워크의 요청 허용 여부 | '사용 안 함' '사용' |
restrictOutboundNetworkAccess | true이면 IotHub의 송신은 allowedFqdnList를 통해 구성된 허용된 FQDN으로만 제한됩니다. | bool |
라우팅 | IoT Hub의 라우팅 관련 속성입니다. 참조: /azure/iot-hub/iot-hub-devguide-messaging | RoutingProperties |
storageEndpoints | 파일을 업로드할 수 있는 Azure Storage 엔드포인트 목록입니다. 현재는 하나의 Azure Storage 계정만 구성할 수 있으며 해당 키는 $default. 둘 이상의 스토리지 계정을 지정하면 오류가 throw됩니다. enableFileUploadNotifications 속성이 True로 설정된 경우 이 속성의 값을 지정하지 않으면 오류가 발생합니다. | IotHubPropertiesStorageEndpoints |
SharedAccessSignatureAuthorizationRule
Name | Description | 값 |
---|---|---|
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
Name | Description | 값 |
---|---|---|
defaultTtlAsIso8601 | 디바이스 큐의 클라우드-디바이스 메시지에 대한 기본 라이브 시간입니다. 참조: /azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages. | 문자열 |
사용자 의견 | 클라우드-디바이스 메시지에 대한 피드백 큐의 속성입니다. | FeedbackProperties |
maxDeliveryCount | 디바이스 큐의 클라우드-디바이스 메시지에 대한 최대 배달 수입니다. 참조: /azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages. | int 제약 조건: 최소값 = 1 최대값 = 100 |
FeedbackProperties
Name | Description | 값 |
---|---|---|
lockDurationAsIso8601 | 피드백 큐의 잠금 기간입니다. 참조: /azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages. | 문자열 |
maxDeliveryCount | IoT Hub가 피드백 큐에 메시지를 배달하려고 시도하는 횟수입니다. 참조: /azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages. | int 제약 조건: 최소값 = 1 최대값 = 100 |
ttlAsIso8601 | IoT Hub에서 만료되기 전에 메시지를 사용할 수 있는 기간입니다. 참조: /azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages. | string |
IotHubPropertiesDeviceStreams
Name | Description | 값 |
---|---|---|
streamingEndpoints | 디바이스 스트림 엔드포인트 목록입니다. | string[] |
EncryptionPropertiesDescription
Name | Description | 값 |
---|---|---|
keySource | 키의 원본입니다. | 문자열 |
keyVaultProperties | KeyVault 키의 속성입니다. | KeyVaultKeyProperties[] |
KeyVaultKeyProperties
Name | Description | 값 |
---|---|---|
identity | KeyVault 키의 관리 ID 속성입니다. | ManagedIdentity |
keyIdentifier | 키의 식별자입니다. | 문자열 |
ManagedIdentity
Name | Description | 값 |
---|---|---|
userAssignedIdentity | 사용자 할당 ID입니다. | 문자열 |
IotHubPropertiesEventHubEndpoints
Name | Description | 값 |
---|---|---|
{사용자 지정 속성} | EventHubProperties |
EventHubProperties
Name | Description | 값 |
---|---|---|
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
Name | Description | 값 |
---|---|---|
action | 이 규칙에서 캡처한 요청에 대해 원하는 작업입니다. | '수락' 'Reject'(필수) |
filterName | IP 필터 규칙의 이름입니다. | string(필수) |
ipMask | 규칙에 대한 CIDR 표기법의 IP 주소 범위를 포함하는 문자열입니다. | string(필수) |
IotHubPropertiesMessagingEndpoints
Name | Description | 값 |
---|---|---|
{사용자 지정 속성} | MessagingEndpointProperties |
MessagingEndpointProperties
Name | Description | 값 |
---|---|---|
lockDurationAsIso8601 | 잠금 기간입니다. 참조: /azure/iot-hub/iot-hub-devguide-file-upload. | 문자열 |
maxDeliveryCount | IoT Hub가 메시지를 배달하려고 시도하는 횟수입니다. 참조: /azure/iot-hub/iot-hub-devguide-file-upload. | int 제약 조건: 최소값 = 1 최대값 = 100 |
ttlAsIso8601 | IoT Hub에서 만료되기 전에 메시지를 사용할 수 있는 기간입니다. 참조: /azure/iot-hub/iot-hub-devguide-file-upload. | string |
NetworkRuleSetProperties
Name | Description | 값 |
---|---|---|
applyToBuiltInEventHubEndpoint | True이면 네트워크 규칙 집합이 IotHub의 BuiltIn EventHub 엔드포인트에도 적용됩니다. | bool(필수) |
defaultAction | 네트워크 규칙 집합에 대한 기본 작업 | '허용' 'Deny' |
ipRules | IP 규칙 목록 | NetworkRuleSetIpRule[](필수) |
NetworkRuleSetIpRule
Name | Description | 값 |
---|---|---|
action | IP 필터 작업 | '허용' |
filterName | IP 필터 규칙의 이름입니다. | string(필수) |
ipMask | 규칙에 대한 CIDR 표기법의 IP 주소 범위를 포함하는 문자열입니다. | string(필수) |
PrivateEndpointConnection
Name | Description | 값 |
---|---|---|
properties | 프라이빗 엔드포인트 연결의 속성 | PrivateEndpointConnectionProperties (필수) |
PrivateEndpointConnectionProperties
Name | Description | 값 |
---|---|---|
privateEndpoint | 프라이빗 엔드포인트 연결의 프라이빗 엔드포인트 속성 | PrivateEndpoint |
privateLinkServiceConnectionState | 프라이빗 엔드포인트 연결의 현재 상태 | PrivateLinkServiceConnectionState (필수) |
PrivateEndpoint
이 개체에는 배포 중에 설정할 속성이 포함되어 있지 않습니다. 모든 속성은 ReadOnly입니다.
PrivateLinkServiceConnectionState
Name | Description | 값 |
---|---|---|
actionsRequired | 프라이빗 엔드포인트 연결에 필요한 작업 | string |
description | 프라이빗 엔드포인트 연결의 현재 상태에 대한 설명 | string(필수) |
상태 | 프라이빗 엔드포인트 연결의 상태 | '승인됨' '연결 끊김' '보류 중' '거부됨'(필수) |
RoutingProperties
Name | Description | 값 |
---|---|---|
엔드포인트 | IoT Hub가 라우팅 규칙에 따라 메시지를 라우팅하는 사용자 지정 엔드포인트와 관련된 속성입니다. 유료 허브의 모든 엔드포인트 유형에서 최대 10개의 사용자 지정 엔드포인트가 허용되며, 무료 허브의 모든 엔드포인트 유형에서 1개의 사용자 지정 엔드포인트만 허용됩니다. | RoutingEndpoints |
보강 | IoT Hub가 기본 제공 및 사용자 지정 엔드포인트에 배달할 메시지에 적용되는 사용자 제공 보강 목록입니다.
https://aka.ms/telemetryoneventgrid 을 참조하세요. |
EnrichmentProperties[] |
fallbackRoute | 'routes' 섹션에 지정된 조건이 충족되지 않는 경우 대체 경로로 사용되는 경로의 속성입니다. 선택적 매개 변수입니다. 이 속성을 설정하지 않으면 'routes' 섹션에 지정된 조건을 충족하지 않는 메시지는 기본 제공 eventhub 엔드포인트로 라우팅됩니다. | FallbackRouteProperties |
경로 | IoT Hub가 메시지를 기본 제공 및 사용자 지정 엔드포인트로 라우팅하는 데 사용하는 사용자 제공 라우팅 규칙 목록입니다. 유료 허브에는 최대 100개의 라우팅 규칙이 허용되며 무료 허브에는 최대 5개의 라우팅 규칙이 허용됩니다. | RouteProperties[] |
RoutingEndpoints
Name | Description | 값 |
---|---|---|
eventHubs | 라우팅 규칙에 따라 IoT Hub가 메시지를 라우팅하는 Event Hubs 엔드포인트 목록입니다. 이 목록에는 기본 제공 Event Hubs 엔드포인트가 포함되어 있지 않습니다. | RoutingEventHubProperties[] |
serviceBusQueues | 라우팅 규칙에 따라 IoT Hub가 메시지를 라우팅하는 Service Bus 큐 엔드포인트 목록입니다. | RoutingServiceBusQueueEndpointProperties[] |
serviceBusTopics | 라우팅 규칙에 따라 IoT Hub가 메시지를 라우팅하는 Service Bus 토픽 엔드포인트 목록입니다. | RoutingServiceBusTopicEndpointProperties[] |
storageContainers | 라우팅 규칙에 따라 IoT Hub가 메시지를 라우팅하는 스토리지 컨테이너 엔드포인트 목록입니다. | RoutingStorageContainerProperties[] |
RoutingEventHubProperties
Name | Description | 값 |
---|---|---|
authenticationType | 이벤트 허브 엔드포인트에 대해 인증하는 데 사용되는 메서드 | 'identityBased' 'keyBased' |
connectionString | 이벤트 허브 엔드포인트의 연결 문자열. | string |
endpointUri | 이벤트 허브 엔드포인트의 URL입니다. 프로토콜 sb:// 포함해야 합니다. | 문자열 |
entityPath | 이벤트 허브 네임스페이스의 이벤트 허브 이름 | 문자열 |
id | 이벤트 허브 엔드포인트의 ID | string |
identity | 라우팅 이벤트 허브 엔드포인트의 관리 ID 속성입니다. | ManagedIdentity |
name | 이 엔드포인트를 식별하는 이름입니다. 이름은 영숫자 문자, 마침표, 밑줄, 하이픈만 포함할 수 있으며 최대 길이는 64자입니다. 예약된 이름은 이벤트, fileNotifications, $default. 엔드포인트 이름은 엔드포인트 유형에서 고유해야 합니다. | string(필수) 제약 조건: 패턴 = ^[A-Za-z0-9-._]{1,64}$ |
resourceGroup | 이벤트 허브 엔드포인트의 리소스 그룹 이름입니다. | string |
subscriptionId | 이벤트 허브 엔드포인트의 구독 식별자입니다. | string |
RoutingServiceBusQueueEndpointProperties
Name | Description | 값 |
---|---|---|
authenticationType | Service Bus 큐 엔드포인트에 대해 인증하는 데 사용되는 메서드 | 'identityBased' 'keyBased' |
connectionString | Service Bus 큐 엔드포인트의 연결 문자열. | string |
endpointUri | Service Bus 큐 엔드포인트의 URL입니다. 프로토콜 sb:// 포함해야 합니다. | 문자열 |
entityPath | Service Bus 네임스페이스의 큐 이름 | 문자열 |
id | Service Bus 큐 엔드포인트의 ID | string |
identity | 라우팅 Service Bus 큐 엔드포인트의 관리 ID 속성입니다. | ManagedIdentity |
name | 이 엔드포인트를 식별하는 이름입니다. 이름은 영숫자 문자, 마침표, 밑줄, 하이픈만 포함할 수 있으며 최대 길이는 64자입니다. 예약된 이름은 이벤트, fileNotifications, $default. 엔드포인트 이름은 엔드포인트 유형에서 고유해야 합니다. 이름은 실제 큐 이름과 동일할 필요가 없습니다. | string(필수) 제약 조건: 패턴 = ^[A-Za-z0-9-._]{1,64}$ |
resourceGroup | Service Bus 큐 엔드포인트의 리소스 그룹 이름입니다. | string |
subscriptionId | Service Bus 큐 엔드포인트의 구독 식별자입니다. | string |
RoutingServiceBusTopicEndpointProperties
Name | Description | 값 |
---|---|---|
authenticationType | Service Bus 토픽 엔드포인트에 대해 인증하는 데 사용되는 메서드 | 'identityBased' 'keyBased' |
connectionString | Service Bus 토픽 엔드포인트의 연결 문자열. | 문자열 |
endpointUri | Service Bus 토픽 엔드포인트의 URL입니다. 프로토콜 sb:// 포함해야 합니다. | string |
entityPath | Service Bus 토픽의 큐 이름 | 문자열 |
id | Service Bus 토픽 엔드포인트의 ID | 문자열 |
identity | 라우팅 Service Bus 토픽 엔드포인트의 관리 ID 속성입니다. | ManagedIdentity |
name | 이 엔드포인트를 식별하는 이름입니다. 이름은 영숫자 문자, 마침표, 밑줄, 하이픈만 포함할 수 있으며 최대 길이는 64자입니다. 예약된 이름은 이벤트, fileNotifications, $default. 엔드포인트 이름은 엔드포인트 유형에서 고유해야 합니다. 이름은 실제 토픽 이름과 같을 필요가 없습니다. | string(필수) 제약 조건: 패턴 = ^[A-Za-z0-9-._]{1,64}$ |
resourceGroup | Service Bus 토픽 엔드포인트의 리소스 그룹 이름입니다. | 문자열 |
subscriptionId | Service Bus 토픽 엔드포인트의 구독 식별자입니다. | 문자열 |
RoutingStorageContainerProperties
Name | Description | 값 |
---|---|---|
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:// |
문자열 |
fileNameFormat | Blob의 파일 이름 형식입니다. 기본 형식은 {iothub}/{partition}/{YYYY}/{MM}/{DD}/{HH}/{mm}입니다. 모든 매개 변수는 필수이지만 순서를 변경할 수 있습니다. | 문자열 |
id | 스토리지 컨테이너 엔드포인트의 ID | 문자열 |
identity | 라우팅 스토리지 엔드포인트의 관리 ID 속성입니다. | ManagedIdentity |
maxChunkSizeInBytes | 스토리지에 기록된 각 Blob의 최대 바이트 수입니다. 값은 10485760(10MB)와 524288000(500MB) 사이여야 합니다. 기본값은 314572800(300MB)입니다. | int 제약 조건: 최소값 = 10485760 최대값 = 524288000 |
name | 이 엔드포인트를 식별하는 이름입니다. 이름은 영숫자 문자, 마침표, 밑줄, 하이픈만 포함할 수 있으며 최대 길이는 64자입니다. 예약된 이름은 이벤트, fileNotifications, $default. 엔드포인트 이름은 엔드포인트 유형에서 고유해야 합니다. | string(필수) 제약 조건: 패턴 = ^[A-Za-z0-9-._]{1,64}$ |
resourceGroup | 스토리지 계정의 리소스 그룹 이름입니다. | 문자열 |
subscriptionId | 스토리지 계정의 구독 식별자입니다. | 문자열 |
EnrichmentProperties
Name | Description | 값 |
---|---|---|
endpointNames | 보강이 메시지에 적용되는 엔드포인트 목록입니다. | string[] (필수) 제약 조건: 최소 길이 = 1 |
key | 보강 속성의 키 또는 이름입니다. | string(필수) |
값 | 보강 속성의 값입니다. | string(필수) |
FallbackRouteProperties
Name | Description | 값 |
---|---|---|
condition(조건) | 대체 경로를 적용하기 위해 평가되는 조건입니다. 조건이 제공되지 않으면 기본적으로 true로 평가됩니다. 문법은 /azure/iot-hub/iot-hub-devguide-query-language를 참조하세요. | string |
endpointNames | 조건을 충족하는 메시지가 라우팅되는 엔드포인트 목록입니다. 현재 1개 엔드포인트만 허용됩니다. | string[] (필수) 제약 조건: 최소 길이 = 1 최대 길이 = 1 |
isEnabled | 대체 경로를 사용할지 여부를 지정하는 데 사용됩니다. | bool(필수) |
name | 경로의 이름입니다. 이름은 영숫자 문자, 마침표, 밑줄, 하이픈만 포함할 수 있으며 최대 길이는 64자이며 고유해야 합니다. | 문자열 |
source | 라우팅 규칙을 적용할 원본입니다. 예를 들어 DeviceMessages | 'DeviceConnectionStateEvents' 'DeviceJobLifecycleEvents' 'DeviceLifecycleEvents' 'DeviceMessages' 'DigitalTwinChangeEvents' 'Invalid' 'MqttBrokerMessages' 'TwinChangeEvents'(필수) |
RouteProperties
Name | Description | 값 |
---|---|---|
condition(조건) | 라우팅 규칙을 적용하기 위해 평가되는 조건입니다. 조건이 제공되지 않으면 기본적으로 true로 평가됩니다. 문법은 /azure/iot-hub/iot-hub-devguide-query-language를 참조하세요. | string |
endpointNames | 조건을 충족하는 메시지가 라우팅되는 엔드포인트 목록입니다. 현재 하나의 엔드포인트만 허용됩니다. | string[] (필수) 제약 조건: 최소 길이 = 1 최대 길이 = 1 |
isEnabled | 경로를 사용할지 여부를 지정하는 데 사용됩니다. | bool(필수) |
name | 경로의 이름입니다. 이름은 영숫자 문자, 마침표, 밑줄, 하이픈만 포함할 수 있으며 최대 길이는 64자이며 고유해야 합니다. | string(필수) 제약 조건: 패턴 = ^[A-Za-z0-9-._]{1,64}$ |
source | 라우팅 규칙이 적용될 원본(예: DeviceMessages)입니다. | 'DeviceConnectionStateEvents' 'DeviceJobLifecycleEvents' 'DeviceLifecycleEvents' 'DeviceMessages' 'DigitalTwinChangeEvents' 'Invalid' 'MqttBrokerMessages' 'TwinChangeEvents'(필수) |
IotHubPropertiesStorageEndpoints
Name | Description | 값 |
---|---|---|
{customized property} | StorageEndpointProperties |
StorageEndpointProperties
Name | Description | 값 |
---|---|---|
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. | 문자열 |
IotHubSkuInfo
Name | Description | 값 |
---|---|---|
용량 | 프로비전된 IoT Hub 단위의 수입니다. 참조: /azure/azure-subscription-service-limits#iot-hub-limits. | int |
name | SKU의 이름입니다. | 'B1' 'B2' 'B3' 'F1' 'S1' 'S2' 'S3'(필수) |
빠른 시작 템플릿
다음 빠른 시작 템플릿은 이 리소스 종류를 배포합니다.
템플릿 | Description |
---|---|
IOT Hub 및 Ubuntu 에지 시뮬레이터 만들기 |
이 템플릿은 IOT Hub 및 Virtual Machine Ubuntu 에지 시뮬레이터를 만듭니다. |
ARM 템플릿을 사용하여 IoT Hub 만들기, 라우팅 및 메시지 보기 |
이 템플릿을 사용하여 IoT Hub 및 스토리지 계정을 배포합니다. 앱을 실행하여 스토리지로 라우팅되는 허브에 메시지를 보낸 다음 결과를 봅니다. |
IoT Hub Device Provisioning Service 만들기 |
이 템플릿을 사용하면 IoT Hub와 IoT Hub Device Provisioning Service를 만들고 두 서비스를 함께 연결할 수 있습니다. |
IoT Hub 및 디바이스-클라우드 소비자 그룹 만들기 |
이 템플릿을 사용하면 디바이스가 있는 IoT Hub instance 클라우드 및 클라우드에서 디바이스 메시징 구성으로 배포하고 디바이스를 클라우드 소비자 그룹에 배포할 수 있습니다. |
IoT Hub 계정, instance, IoT Hub 대한 디바이스 업데이트 만들기 |
이 템플릿은 계정을 만들고 instance 연결할 instance 및 허브를 만듭니다. 필요한 액세스 정책, 경로 및 소비자 그룹을 사용하여 허브를 구성합니다. |
Azure IoT Hub 포함하여 MedTech 서비스 배포 |
MedTech 서비스는 여러 디바이스에서 디바이스 데이터를 수집하여 디바이스 데이터를 FHIR 관찰로 변환한 다음 Azure Health Data Services FHIR 서비스에 유지되도록 설계된 Azure Health Data Services 중 하나입니다. |
IoT Hub 사용하여 PAYG(종량제) 환경 만들기 |
이 템플릿을 사용하면 IoT Hub 이벤트를 사용하도록 구성된 PAYG(Pay As You Go) Time Series Insights 환경을 배포할 수 있습니다. |
Terraform(AzAPI 공급자) 리소스 정의
IotHubs 리소스 종류는 다음을 대상으로 하는 작업으로 배포할 수 있습니다.
- 리소스 그룹
각 API 버전에서 변경된 속성 목록은 변경 로그를 참조하세요.
리소스 형식
Microsoft.Devices/IotHubs 리소스를 만들려면 템플릿에 다음 Terraform을 추가합니다.
resource "azapi_resource" "symbolicname" {
type = "Microsoft.Devices/IotHubs@2021-07-02-preview"
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"
deviceStreams = {
streamingEndpoints = [
"string"
]
}
disableDeviceSAS = bool
disableLocalAuth = bool
disableModuleSAS = bool
enableDataResidency = bool
enableFileUploadNotifications = bool
encryption = {
keySource = "string"
keyVaultProperties = [
{
identity = {
userAssignedIdentity = "string"
}
keyIdentifier = "string"
}
]
}
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 = {
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
Name | Description | 값 |
---|---|---|
형식 | 리소스 종류 | "Microsoft.Devices/IotHubs@2021-07-02-preview" |
name | 리소스 이름 | string(필수) 문자 제한: 3-50 유효한 문자: 영숫자 및 하이픈 하이픈으로 끝날 수 없습니다. 리소스 이름은 Azure에서 고유해야 합니다. |
위치 | 리소스 위치입니다. | string(필수) |
parent_id | 리소스 그룹에 배포하려면 해당 리소스 그룹의 ID를 사용합니다. | string(필수) |
tags | 리소스 태그입니다. | 태그 이름 및 값의 사전입니다. |
sku | IotHub SKU 정보 | IotHubSkuInfo (필수) |
etag | Etag 필드는 필요하지 않습니다 . 응답 본문에 제공된 경우 일반 ETag 규칙에 따라 헤더로도 제공해야 합니다. | string |
identity | IotHub에 대한 관리 ID입니다. | ArmIdentity |
properties | IotHub 속성 | IotHubProperties |
ArmIdentity
Name | Description | 값 |
---|---|---|
형식 | 리소스에 사용되는 ID 유형입니다. 'SystemAssigned,UserAssigned' 형식에는 암시적으로 생성된 ID와 사용자 할당 ID 집합이 모두 포함됩니다. 'None' 형식은 서비스에서 모든 ID를 제거합니다. | "SystemAssigned" "SystemAssigned, UserAssigned" "UserAssigned" |
identity_ids | {ArmUserIdentity} 사전 | 사용자 ID ID의 배열입니다. |
ArmIdentityUserAssignedIdentities
Name | Description | 값 |
---|---|---|
{customized property} | ArmUserIdentity |
ArmUserIdentity
이 개체에는 배포 중에 설정할 속성이 포함되어 있지 않습니다. 모든 속성은 ReadOnly입니다.
IotHubProperties
Name | Description | 값 |
---|---|---|
allowedFqdnList | Iot Hub에서 송신할 수 있는 FQDN(정규화된 도메인 이름) 목록입니다. | string[] |
authorizationPolicies | IoT Hub에 대한 연결을 보호하는 데 사용할 수 있는 공유 액세스 정책입니다. | SharedAccessSignatureAuthorizationRule[] |
cloudToDevice | IoT Hub 클라우드-디바이스 메시징 속성입니다. | CloudToDeviceProperties |
comments | IoT Hub 주석. | string |
deviceStreams | 디바이스는 iothub의 속성을 스트리밍합니다. | IotHubPropertiesDeviceStreams |
disableDeviceSAS | true이면 모든 디바이스(Edge 디바이스를 포함하지만 모듈 제외)의 범위가 지정된 SAS 키를 인증에 사용할 수 없습니다. | bool |
disableLocalAuth | true이면 IoT 허브 범위 SAS 키가 있는 SAS 토큰을 인증에 사용할 수 없습니다. | bool |
disableModuleSAS | true이면 모든 모듈 범위 SAS 키를 인증에 사용할 수 없습니다. | bool |
enableDataResidency | true로 설정된 경우 이 속성을 사용하면 데이터 상주가 가능하므로 재해 복구를 사용하지 않도록 설정합니다. | bool |
enableFileUploadNotifications | True이면 파일 업로드 알림이 사용하도록 설정됩니다. | bool |
암호화 | IoT Hub에 대한 암호화 속성입니다. | EncryptionPropertiesDescription |
eventHubEndpoints | Event Hub 호환 엔드포인트 속성입니다. 이 사전에 사용할 수 있는 유일한 키는 이벤트입니다. 이 키는 IoT Hub에 대한 호출을 만들거나 업데이트하는 동안 사전에 있어야 합니다. | IotHubPropertiesEventHubEndpoints |
기능 | IoT Hub에 대해 사용하도록 설정된 기능 및 기능입니다. | "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 Hub의 라우팅 관련 속성입니다. 참조: /azure/iot-hub/iot-hub-devguide-messaging | RoutingProperties |
storageEndpoints | 파일을 업로드할 수 있는 Azure Storage 엔드포인트 목록입니다. 현재는 하나의 Azure Storage 계정만 구성할 수 있으며 해당 키는 $default. 둘 이상의 스토리지 계정을 지정하면 오류가 throw됩니다. enableFileUploadNotifications 속성이 True로 설정된 경우 이 속성의 값을 지정하지 않으면 오류가 throw됩니다. | IotHubPropertiesStorageEndpoints |
SharedAccessSignatureAuthorizationRule
Name | Description | 값 |
---|---|---|
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
Name | Description | 값 |
---|---|---|
defaultTtlAsIso8601 | 디바이스 큐의 클라우드-디바이스 메시지에 대한 기본 라이브 시간입니다. 참조: /azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages. | 문자열 |
사용자 의견 | 클라우드-디바이스 메시지에 대한 피드백 큐의 속성입니다. | FeedbackProperties |
maxDeliveryCount | 디바이스 큐의 클라우드-디바이스 메시지에 대한 최대 배달 수입니다. 참조: /azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages. | int 제약 조건: 최소값 = 1 최대값 = 100 |
FeedbackProperties
Name | Description | 값 |
---|---|---|
lockDurationAsIso8601 | 피드백 큐의 잠금 기간입니다. 참조: /azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages. | string |
maxDeliveryCount | IoT Hub가 피드백 큐에 메시지를 배달하려고 시도하는 횟수입니다. 참조: /azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages. | int 제약 조건: 최소값 = 1 최대값 = 100 |
ttlAsIso8601 | IoT Hub에서 만료되기 전에 메시지를 사용할 수 있는 기간입니다. 참조: /azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages. | string |
IotHubPropertiesDeviceStreams
Name | Description | 값 |
---|---|---|
streamingEndpoints | 디바이스 스트림 엔드포인트 목록입니다. | string[] |
EncryptionPropertiesDescription
Name | Description | 값 |
---|---|---|
keySource | 키의 원본입니다. | 문자열 |
keyVaultProperties | KeyVault 키의 속성입니다. | KeyVaultKeyProperties[] |
KeyVaultKeyProperties
Name | Description | 값 |
---|---|---|
identity | KeyVault 키의 관리 ID 속성입니다. | ManagedIdentity |
keyIdentifier | 키의 식별자입니다. | string |
ManagedIdentity
Name | Description | 값 |
---|---|---|
userAssignedIdentity | 사용자 할당 ID입니다. | string |
IotHubPropertiesEventHubEndpoints
Name | Description | 값 |
---|---|---|
{사용자 지정 속성} | EventHubProperties |
EventHubProperties
Name | Description | 값 |
---|---|---|
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
Name | Description | 값 |
---|---|---|
action | 이 규칙에서 캡처한 요청에 대해 원하는 작업입니다. | "수락" "Reject"(필수) |
filterName | IP 필터 규칙의 이름입니다. | string(필수) |
ipMask | 규칙에 대한 CIDR 표기법의 IP 주소 범위를 포함하는 문자열입니다. | string(필수) |
IotHubPropertiesMessagingEndpoints
Name | Description | 값 |
---|---|---|
{사용자 지정 속성} | MessagingEndpointProperties |
MessagingEndpointProperties
Name | Description | 값 |
---|---|---|
lockDurationAsIso8601 | 잠금 기간입니다. 참조: /azure/iot-hub/iot-hub-devguide-file-upload. | 문자열 |
maxDeliveryCount | IoT Hub가 메시지를 배달하려고 시도하는 횟수입니다. 참조: /azure/iot-hub/iot-hub-devguide-file-upload. | int 제약 조건: 최소값 = 1 최대값 = 100 |
ttlAsIso8601 | IoT Hub에서 만료되기 전에 메시지를 사용할 수 있는 기간입니다. 참조: /azure/iot-hub/iot-hub-devguide-file-upload. | 문자열 |
NetworkRuleSetProperties
Name | Description | 값 |
---|---|---|
applyToBuiltInEventHubEndpoint | True이면 네트워크 규칙 집합이 IotHub의 BuiltIn EventHub 엔드포인트에도 적용됩니다. | bool(필수) |
defaultAction | 네트워크 규칙 집합에 대한 기본 작업 | "허용" "거부" |
ipRules | IP 규칙 목록 | NetworkRuleSetIpRule[] (필수) |
NetworkRuleSetIpRule
Name | Description | 값 |
---|---|---|
action | IP 필터 작업 | "허용" |
filterName | IP 필터 규칙의 이름입니다. | string(필수) |
ipMask | 규칙에 대한 CIDR 표기법의 IP 주소 범위를 포함하는 문자열입니다. | string(필수) |
PrivateEndpointConnection
Name | Description | 값 |
---|---|---|
properties | 프라이빗 엔드포인트 연결의 속성 | PrivateEndpointConnectionProperties (필수) |
PrivateEndpointConnectionProperties
Name | Description | 값 |
---|---|---|
privateEndpoint | 프라이빗 엔드포인트 연결의 프라이빗 엔드포인트 속성 | PrivateEndpoint |
privateLinkServiceConnectionState | 프라이빗 엔드포인트 연결의 현재 상태 | PrivateLinkServiceConnectionState (필수) |
PrivateEndpoint
이 개체에는 배포 중에 설정할 속성이 포함되어 있지 않습니다. 모든 속성은 ReadOnly입니다.
PrivateLinkServiceConnectionState
Name | Description | 값 |
---|---|---|
actionsRequired | 프라이빗 엔드포인트 연결에 필요한 작업 | 문자열 |
description | 프라이빗 엔드포인트 연결의 현재 상태에 대한 설명 | string(필수) |
상태 | 프라이빗 엔드포인트 연결의 상태 | "승인됨" "연결 끊김" "보류 중" "거부됨"(필수) |
RoutingProperties
Name | Description | 값 |
---|---|---|
엔드포인트 | IoT Hub가 라우팅 규칙에 따라 메시지를 라우팅하는 사용자 지정 엔드포인트와 관련된 속성입니다. 유료 허브의 모든 엔드포인트 유형에서 최대 10개의 사용자 지정 엔드포인트가 허용되며 무료 허브의 모든 엔드포인트 유형에서 1개의 사용자 지정 엔드포인트만 허용됩니다. | RoutingEndpoints |
보강 | IoT Hub가 기본 제공 및 사용자 지정 엔드포인트에 배달할 메시지에 적용되는 사용자 제공 보강 목록입니다.
https://aka.ms/telemetryoneventgrid 을 참조하세요. |
EnrichmentProperties[] |
fallbackRoute | '경로' 섹션에 지정된 조건이 충족되지 않는 경우 대체 경로로 사용되는 경로의 속성입니다. 선택적 매개 변수입니다. 이 속성을 설정하지 않으면 'routes' 섹션에 지정된 조건을 충족하지 않는 메시지가 기본 제공 eventhub 엔드포인트로 라우팅됩니다. | FallbackRouteProperties |
경로 | IoT Hub에서 메시지를 기본 제공 및 사용자 지정 엔드포인트로 라우팅하는 데 사용하는 사용자 제공 라우팅 규칙 목록입니다. 유료 허브에는 최대 100개의 라우팅 규칙이 허용되며 무료 허브에는 최대 5개의 라우팅 규칙이 허용됩니다. | RouteProperties[] |
RoutingEndpoints
Name | Description | 값 |
---|---|---|
eventHubs | 라우팅 규칙에 따라 IoT Hub가 메시지를 라우팅하는 Event Hubs 엔드포인트 목록입니다. 이 목록에는 기본 제공 Event Hubs 엔드포인트가 포함되어 있지 않습니다. | RoutingEventHubProperties[] |
serviceBusQueues | 라우팅 규칙에 따라 IoT Hub가 메시지를 라우팅하는 Service Bus 큐 엔드포인트 목록입니다. | RoutingServiceBusQueueEndpointProperties[] |
serviceBusTopics | 라우팅 규칙에 따라 IoT Hub가 메시지를 라우팅하는 Service Bus 토픽 엔드포인트 목록입니다. | RoutingServiceBusTopicEndpointProperties[] |
storageContainers | 라우팅 규칙에 따라 IoT Hub가 메시지를 라우팅하는 스토리지 컨테이너 엔드포인트 목록입니다. | RoutingStorageContainerProperties[] |
RoutingEventHubProperties
Name | Description | 값 |
---|---|---|
authenticationType | 이벤트 허브 엔드포인트에 대해 인증하는 데 사용되는 메서드 | "identityBased" "keyBased" |
connectionString | 이벤트 허브 엔드포인트의 연결 문자열. | string |
endpointUri | 이벤트 허브 엔드포인트의 URL입니다. 프로토콜 sb:// 포함해야 합니다. | 문자열 |
entityPath | 이벤트 허브 네임스페이스의 이벤트 허브 이름 | 문자열 |
id | 이벤트 허브 엔드포인트의 ID | 문자열 |
identity | 라우팅 이벤트 허브 엔드포인트의 관리 ID 속성입니다. | ManagedIdentity |
name | 이 엔드포인트를 식별하는 이름입니다. 이름은 영숫자 문자, 마침표, 밑줄, 하이픈만 포함할 수 있으며 최대 길이는 64자입니다. 예약된 이름은 이벤트, fileNotifications, $default. 엔드포인트 이름은 엔드포인트 유형에서 고유해야 합니다. | string(필수) 제약 조건: 패턴 = ^[A-Za-z0-9-._]{1,64}$ |
resourceGroup | 이벤트 허브 엔드포인트의 리소스 그룹 이름입니다. | 문자열 |
subscriptionId | 이벤트 허브 엔드포인트의 구독 식별자입니다. | string |
RoutingServiceBusQueueEndpointProperties
Name | Description | 값 |
---|---|---|
authenticationType | Service Bus 큐 엔드포인트에 대해 인증하는 데 사용되는 메서드 | "identityBased" "keyBased" |
connectionString | Service Bus 큐 엔드포인트의 연결 문자열. | string |
endpointUri | Service Bus 큐 엔드포인트의 URL입니다. 프로토콜 sb:// 포함해야 합니다. | 문자열 |
entityPath | Service Bus 네임스페이스의 큐 이름 | 문자열 |
id | Service Bus 큐 엔드포인트의 ID | 문자열 |
identity | 라우팅 Service Bus 큐 엔드포인트의 관리 ID 속성입니다. | ManagedIdentity |
name | 이 엔드포인트를 식별하는 이름입니다. 이름은 영숫자 문자, 마침표, 밑줄, 하이픈만 포함할 수 있으며 최대 길이는 64자입니다. 예약된 이름은 이벤트, fileNotifications, $default. 엔드포인트 이름은 엔드포인트 유형에서 고유해야 합니다. 이름은 실제 큐 이름과 동일할 필요가 없습니다. | string(필수) 제약 조건: 패턴 = ^[A-Za-z0-9-._]{1,64}$ |
resourceGroup | Service Bus 큐 엔드포인트의 리소스 그룹 이름입니다. | 문자열 |
subscriptionId | Service Bus 큐 엔드포인트의 구독 식별자입니다. | string |
RoutingServiceBusTopicEndpointProperties
Name | Description | 값 |
---|---|---|
authenticationType | Service Bus 토픽 엔드포인트에 대해 인증하는 데 사용되는 메서드 | "identityBased" "keyBased" |
connectionString | Service Bus 토픽 엔드포인트의 연결 문자열. | string |
endpointUri | Service Bus 토픽 엔드포인트의 URL입니다. 프로토콜 sb:// 포함해야 합니다. | 문자열 |
entityPath | Service Bus 토픽의 큐 이름 | 문자열 |
id | Service Bus 토픽 엔드포인트의 ID | 문자열 |
identity | 라우팅 Service Bus 토픽 엔드포인트의 관리 ID 속성입니다. | ManagedIdentity |
name | 이 엔드포인트를 식별하는 이름입니다. 이름은 영숫자 문자, 마침표, 밑줄, 하이픈만 포함할 수 있으며 최대 길이는 64자입니다. 예약된 이름은 이벤트, fileNotifications, $default. 엔드포인트 이름은 엔드포인트 유형에서 고유해야 합니다. 이름은 실제 토픽 이름과 동일할 필요가 없습니다. | string(필수) 제약 조건: 패턴 = ^[A-Za-z0-9-._]{1,64}$ |
resourceGroup | Service Bus 토픽 엔드포인트의 리소스 그룹 이름입니다. | 문자열 |
subscriptionId | Service Bus 토픽 엔드포인트의 구독 식별자입니다. | string |
RoutingStorageContainerProperties
Name | Description | 값 |
---|---|---|
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:// |
문자열 |
fileNameFormat | Blob의 파일 이름 형식입니다. 기본 형식은 {iothub}/{partition}/{YYYY}/{MM}/{DD}/{HH}/{mm}입니다. 모든 매개 변수는 필수이지만 순서를 변경할 수 있습니다. | 문자열 |
id | 스토리지 컨테이너 엔드포인트의 ID | string |
identity | 라우팅 스토리지 엔드포인트의 관리 ID 속성입니다. | ManagedIdentity |
maxChunkSizeInBytes | 스토리지에 기록된 각 Blob의 최대 바이트 수입니다. 값은 10485760(10MB)와 524288000(500MB) 사이여야 합니다. 기본값은 314572800(300MB)입니다. | int 제약 조건: 최소값 = 10485760 최대값 = 524288000 |
name | 이 엔드포인트를 식별하는 이름입니다. 이름은 영숫자 문자, 마침표, 밑줄, 하이픈만 포함할 수 있으며 최대 길이는 64자입니다. 예약된 이름은 이벤트, fileNotifications, $default. 엔드포인트 이름은 엔드포인트 유형에서 고유해야 합니다. | string(필수) 제약 조건: 패턴 = ^[A-Za-z0-9-._]{1,64}$ |
resourceGroup | 스토리지 계정의 리소스 그룹 이름입니다. | string |
subscriptionId | 스토리지 계정의 구독 식별자입니다. | string |
EnrichmentProperties
Name | Description | 값 |
---|---|---|
endpointNames | 보강이 메시지에 적용되는 엔드포인트 목록입니다. | string[] (필수) 제약 조건: 최소 길이 = 1 |
key | 보강 속성의 키 또는 이름입니다. | string(필수) |
값 | 보강 속성의 값입니다. | string(필수) |
FallbackRouteProperties
Name | Description | 값 |
---|---|---|
condition(조건) | 대체 경로를 적용하기 위해 평가되는 조건입니다. 조건이 제공되지 않으면 기본적으로 true로 평가됩니다. 문법은 /azure/iot-hub/iot-hub-devguide-query-language를 참조하세요. | 문자열 |
endpointNames | 조건을 충족하는 메시지가 라우팅되는 엔드포인트 목록입니다. 현재 1개 엔드포인트만 허용됩니다. | string[] (필수) 제약 조건: 최소 길이 = 1 최대 길이 = 1 |
isEnabled | 대체 경로를 사용할지 여부를 지정하는 데 사용됩니다. | bool(필수) |
name | 경로의 이름입니다. 이름은 영숫자 문자, 마침표, 밑줄, 하이픈만 포함할 수 있으며 최대 길이는 64자이며 고유해야 합니다. | 문자열 |
source | 라우팅 규칙을 적용할 원본입니다. 예를 들어 DeviceMessages | "DeviceConnectionStateEvents" "DeviceJobLifecycleEvents" "DeviceLifecycleEvents" "DeviceMessages" "DigitalTwinChangeEvents" "잘못됨" "MqttBrokerMessages" "TwinChangeEvents"(필수) |
RouteProperties
Name | Description | 값 |
---|---|---|
condition(조건) | 라우팅 규칙을 적용하기 위해 평가되는 조건입니다. 조건이 제공되지 않으면 기본적으로 true로 평가됩니다. 문법은 /azure/iot-hub/iot-hub-devguide-query-language를 참조하세요. | 문자열 |
endpointNames | 조건을 충족하는 메시지가 라우팅되는 엔드포인트 목록입니다. 현재 하나의 엔드포인트만 허용됩니다. | string[] (필수) 제약 조건: 최소 길이 = 1 최대 길이 = 1 |
isEnabled | 경로를 사용할지 여부를 지정하는 데 사용됩니다. | bool(필수) |
name | 경로의 이름입니다. 이름은 영숫자 문자, 마침표, 밑줄, 하이픈만 포함할 수 있으며 최대 길이는 64자이며 고유해야 합니다. | string(필수) 제약 조건: 패턴 = ^[A-Za-z0-9-._]{1,64}$ |
source | 라우팅 규칙이 적용될 원본(예: DeviceMessages)입니다. | "DeviceConnectionStateEvents" "DeviceJobLifecycleEvents" "DeviceLifecycleEvents" "DeviceMessages" "DigitalTwinChangeEvents" "잘못됨" "MqttBrokerMessages" "TwinChangeEvents"(필수) |
IotHubPropertiesStorageEndpoints
Name | Description | 값 |
---|---|---|
{customized property} | StorageEndpointProperties |
StorageEndpointProperties
Name | Description | 값 |
---|---|---|
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. | 문자열 |
IotHubSkuInfo
Name | Description | 값 |
---|---|---|
용량 | 프로비전된 IoT Hub 단위의 수입니다. 참조: /azure/azure-subscription-service-limits#iot-hub-limits. | int |
name | SKU의 이름입니다. | "B1" "B2" "B3" "F1" "S1" "S2" "S3"(필수) |