azure-resource-manager-schemas/schemas/2020-01-01/Microsoft.Devices.Provision...

412 строки
12 KiB
JSON

{
"id": "https://schema.management.azure.com/schemas/2020-01-01/Microsoft.Devices.Provisioning.json#",
"title": "Microsoft.Devices",
"description": "Microsoft Devices Resource Types",
"$schema": "http://json-schema.org/draft-04/schema#",
"resourceDefinitions": {
"provisioningServices": {
"description": "Microsoft.Devices/provisioningServices",
"properties": {
"apiVersion": {
"enum": [
"2020-01-01"
],
"type": "string"
},
"etag": {
"description": "The Etag field is *not* required. If it is provided in the response body, it must also be provided as a header per the normal ETag convention.",
"type": "string"
},
"location": {
"description": "The resource location.",
"type": "string"
},
"name": {
"description": "Name of provisioning service to create or update.",
"type": "string"
},
"properties": {
"description": "Service specific properties for a provisioning service",
"oneOf": [
{
"$ref": "#/definitions/IotDpsPropertiesDescription"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"resources": {
"items": {
"oneOf": [
{
"$ref": "#/definitions/provisioningServices_certificates_childResource"
}
]
},
"type": "array"
},
"sku": {
"description": "Sku info for a provisioning Service.",
"oneOf": [
{
"$ref": "#/definitions/IotDpsSkuInfo"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"tags": {
"description": "The resource tags.",
"oneOf": [
{
"additionalProperties": {
"type": "string"
},
"properties": {},
"type": "object"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"type": {
"enum": [
"Microsoft.Devices/provisioningServices"
],
"type": "string"
}
},
"required": [
"name",
"properties",
"apiVersion",
"type"
],
"type": "object"
},
"provisioningServices_certificates": {
"description": "Microsoft.Devices/provisioningServices/certificates",
"properties": {
"apiVersion": {
"enum": [
"2020-01-01"
],
"type": "string"
},
"certificate": {
"description": "Base-64 representation of the X509 leaf certificate .cer file or just .pem file content.",
"type": "string"
},
"name": {
"description": "The name of the certificate create or update.",
"maxLength": 256,
"type": "string"
},
"type": {
"enum": [
"Microsoft.Devices/provisioningServices/certificates"
],
"type": "string"
}
},
"required": [
"name",
"apiVersion",
"type"
],
"type": "object"
}
},
"definitions": {
"IotDpsPropertiesDescription": {
"description": "the service specific properties of a provisioning service, including keys, linked iot hubs, current state, and system generated properties such as hostname and idScope",
"properties": {
"allocationPolicy": {
"description": "Allocation policy to be used by this provisioning service.",
"oneOf": [
{
"enum": [
"Hashed",
"GeoLatency",
"Static"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"authorizationPolicies": {
"description": "List of authorization keys for a provisioning service.",
"oneOf": [
{
"items": {
"$ref": "#/definitions/SharedAccessSignatureAuthorizationRuleAccessRightsDescription"
},
"type": "array"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"iotHubs": {
"description": "List of IoT hubs associated with this provisioning service.",
"oneOf": [
{
"items": {
"$ref": "#/definitions/IotHubDefinitionDescription"
},
"type": "array"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"ipFilterRules": {
"description": "The IP filter rules.",
"oneOf": [
{
"items": {
"$ref": "#/definitions/IpFilterRule"
},
"type": "array"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"provisioningState": {
"description": "The ARM provisioning state of the provisioning service.",
"type": "string"
},
"state": {
"description": "Current state of the provisioning service.",
"oneOf": [
{
"enum": [
"Activating",
"Active",
"Deleting",
"Deleted",
"ActivationFailed",
"DeletionFailed",
"Transitioning",
"Suspending",
"Suspended",
"Resuming",
"FailingOver",
"FailoverFailed"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
}
},
"type": "object"
},
"IotDpsSkuInfo": {
"description": "List of possible provisioning service SKUs.",
"properties": {
"capacity": {
"description": "The number of units to provision",
"oneOf": [
{
"type": "integer"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"name": {
"description": "Sku name.",
"oneOf": [
{
"enum": [
"S1"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
}
},
"type": "object"
},
"IotHubDefinitionDescription": {
"description": "Description of the IoT hub.",
"properties": {
"allocationWeight": {
"description": "weight to apply for a given iot h.",
"oneOf": [
{
"type": "integer"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"applyAllocationPolicy": {
"description": "flag for applying allocationPolicy or not for a given iot hub.",
"oneOf": [
{
"type": "boolean"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"connectionString": {
"description": "Connection string og the IoT hub.",
"type": "string"
},
"location": {
"description": "ARM region of the IoT hub.",
"type": "string"
}
},
"required": [
"connectionString",
"location"
],
"type": "object"
},
"IpFilterRule": {
"description": "The IP filter rules for the IoT dps.",
"properties": {
"action": {
"description": "The desired action for requests captured by this rule.",
"oneOf": [
{
"enum": [
"Accept",
"Reject"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"filterName": {
"description": "The name of the IP filter rule.",
"type": "string"
},
"ipMask": {
"description": "A string that contains the IP address range in CIDR notation for the rule.",
"type": "string"
},
"target": {
"description": "Target for requests captured by this rule.",
"oneOf": [
{
"enum": [
"all",
"serviceApi",
"deviceApi"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
}
},
"required": [
"filterName",
"action",
"ipMask"
],
"type": "object"
},
"SharedAccessSignatureAuthorizationRuleAccessRightsDescription": {
"description": "Description of the shared access key.",
"properties": {
"keyName": {
"description": "Name of the key.",
"type": "string"
},
"primaryKey": {
"description": "Primary SAS key value.",
"type": "string"
},
"rights": {
"description": "Rights that this key has.",
"oneOf": [
{
"enum": [
"ServiceConfig",
"EnrollmentRead",
"EnrollmentWrite",
"DeviceConnect",
"RegistrationStatusRead",
"RegistrationStatusWrite"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"secondaryKey": {
"description": "Secondary SAS key value.",
"type": "string"
}
},
"required": [
"keyName",
"rights"
],
"type": "object"
},
"provisioningServices_certificates_childResource": {
"description": "Microsoft.Devices/provisioningServices/certificates",
"properties": {
"apiVersion": {
"enum": [
"2020-01-01"
],
"type": "string"
},
"certificate": {
"description": "Base-64 representation of the X509 leaf certificate .cer file or just .pem file content.",
"type": "string"
},
"name": {
"description": "The name of the certificate create or update.",
"maxLength": 256,
"type": "string"
},
"type": {
"enum": [
"certificates"
],
"type": "string"
}
},
"required": [
"name",
"apiVersion",
"type"
],
"type": "object"
}
}
}