Skip to content

Commit 0b23a99

Browse files
authored
[DataFactory]: Add CMK Properties (#10867)
* [DataFactory]: Add CMK Properties * Prettier validation * Model Identity Type as string * RemoveEnumChanges
1 parent 0269d92 commit 0b23a99

File tree

1 file changed

+55
-1
lines changed
  • specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01

1 file changed

+55
-1
lines changed

specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/datafactory.json

Lines changed: 55 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4887,6 +4887,10 @@
48874887
"$ref": "#/definitions/GlobalParameterDefinitionSpecification",
48884888
"description": "List of parameters for factory."
48894889
},
4890+
"encryption": {
4891+
"$ref": "#/definitions/EncryptionConfiguration",
4892+
"description": "Properties to enable Customer Managed Key for the factory."
4893+
},
48904894
"publicNetworkAccess": {
48914895
"description": "Whether or not public network access is allowed for the data factory.",
48924896
"enum": [
@@ -4901,6 +4905,40 @@
49014905
}
49024906
}
49034907
},
4908+
"EncryptionConfiguration": {
4909+
"description": "Definition of CMK for the factory.",
4910+
"properties": {
4911+
"keyName": {
4912+
"type": "string",
4913+
"description": "The name of the key in Azure Key Vault to use as Customer Managed Key."
4914+
},
4915+
"vaultBaseUrl": {
4916+
"type": "string",
4917+
"description": "The url of the Azure Key Vault used for CMK."
4918+
},
4919+
"keyVersion": {
4920+
"type": "string",
4921+
"description": "The version of the key used for CMK. If not provided, latest version will be used."
4922+
},
4923+
"identity": {
4924+
"$ref": "#/definitions/CMKIdentityDefinition",
4925+
"description": "User assigned identity to use to authenticate to customer's key vault. If not provided Managed Service Identity will be used."
4926+
}
4927+
},
4928+
"required": [
4929+
"keyName",
4930+
"vaultBaseUrl"
4931+
]
4932+
},
4933+
"CMKIdentityDefinition": {
4934+
"description": "Managed Identity used for CMK.",
4935+
"properties": {
4936+
"userAssignedIdentity": {
4937+
"type": "string",
4938+
"description": "The resource id of the user assigned identity to authenticate to customer's key vault."
4939+
}
4940+
}
4941+
},
49044942
"GlobalParameterDefinitionSpecification": {
49054943
"description": "Definition of all parameters for an entity.",
49064944
"type": "object",
@@ -5058,7 +5096,7 @@
50585096
"properties": {
50595097
"type": {
50605098
"type": "string",
5061-
"description": "The identity type. Currently the only supported type is 'SystemAssigned'.",
5099+
"description": "The identity type.",
50625100
"enum": [
50635101
"SystemAssigned"
50645102
],
@@ -5078,12 +5116,28 @@
50785116
"format": "uuid",
50795117
"readOnly": true,
50805118
"description": "The client tenant id of the identity."
5119+
},
5120+
"userAssignedIdentities": {
5121+
"$ref": "#/definitions/UserAssignedIdentitiesDefinitionSpecification",
5122+
"description": "List of user assigned identities for the factory."
50815123
}
50825124
},
50835125
"required": [
50845126
"type"
50855127
]
50865128
},
5129+
"UserAssignedIdentitiesDefinitionSpecification": {
5130+
"description": "Definition of all user assigned identities for a factory.",
5131+
"type": "object",
5132+
"additionalProperties": {
5133+
"$ref": "#/definitions/UserAssignedIdentitySpecification"
5134+
}
5135+
},
5136+
"UserAssignedIdentitySpecification": {
5137+
"description": "Definition of a single user assigned identity for a factory.",
5138+
"type": "object",
5139+
"properties": {}
5140+
},
50875141
"DatasetReference": {
50885142
"description": "Dataset reference type.",
50895143
"properties": {

0 commit comments

Comments
 (0)