From 249796849ff968637a05abcda1b49780b640f114 Mon Sep 17 00:00:00 2001 From: pacodel Date: Mon, 21 Sep 2020 10:35:03 -0700 Subject: [PATCH 1/4] [DataFactory]: Add CMK Properties --- .../stable/2018-06-01/datafactory.json | 61 ++++++++++++++++++- 1 file changed, 59 insertions(+), 2 deletions(-) diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/datafactory.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/datafactory.json index 43909b01832d..d1386f448e91 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/datafactory.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/datafactory.json @@ -4886,6 +4886,44 @@ "globalParameters": { "$ref": "#/definitions/GlobalParameterDefinitionSpecification", "description": "List of parameters for factory." + }, + "encryption": { + "$ref": "#/definitions/EncryptionConfiguration", + "description": "Properties to enable Customer Managed Key for the factory." + } + } + }, + "EncryptionConfiguration": { + "description": "Definition of CMK for the factory.", + "properties": { + "keyName": { + "type": "string", + "description": "The name of the key in Azure Key Vault to use as Customer Managed Key." + }, + "vaultBaseUrl": { + "type": "string", + "description": "The url of the Azure Key Vault used for CMK." + }, + "keyVersion": { + "type": "string", + "description": "The version of the key used for CMK. If not provided, latest version will be used." + }, + "identity": { + "$ref": "#/definitions/CMKIdentityDefinition", + "description": "User assigned identity to use to authenticate to customer's key vault. If not provided Managed Service Identity will be used." + } + }, + "required": [ + "keyName", + "vaultBaseUrl" + ] + }, + "CMKIdentityDefinition": { + "description": "Managed Identity used for CMK.", + "properties": { + "userAssignedIdentity": { + "type": "string", + "description": "The resource id of the user assigned identity to authenticate to customer's key vault." } } }, @@ -5046,9 +5084,11 @@ "properties": { "type": { "type": "string", - "description": "The identity type. Currently the only supported type is 'SystemAssigned'.", + "description": "The identity type.", "enum": [ - "SystemAssigned" + "SystemAssigned", + "UserAssigned", + "SystemAssigned,UserAssigned" ], "x-ms-enum": { "name": "FactoryIdentityType", @@ -5066,12 +5106,29 @@ "format": "uuid", "readOnly": true, "description": "The client tenant id of the identity." + }, + "userAssignedIdentities": { + "$ref": "#/definitions/UserAssignedIdentitiesDefinitionSpecification", + "description": "List of user assigned identities for the factory." } }, "required": [ "type" ] }, + "UserAssignedIdentitiesDefinitionSpecification": { + "description": "Definition of all user assigned identities for a factory.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/UserAssignedIdentitySpecification" + } + }, + "UserAssignedIdentitySpecification": { + "description": "Definition of a single user assigned identity for a factory.", + "type": "object", + "properties": { + } + }, "DatasetReference": { "description": "Dataset reference type.", "properties": { From 1d502e64923b680f4c1e4e7a7e04f1629f8aa123 Mon Sep 17 00:00:00 2001 From: pacodel Date: Mon, 21 Sep 2020 12:21:44 -0700 Subject: [PATCH 2/4] Prettier validation --- .../Microsoft.DataFactory/stable/2018-06-01/datafactory.json | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/datafactory.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/datafactory.json index d1386f448e91..088889e91abd 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/datafactory.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/datafactory.json @@ -5126,8 +5126,7 @@ "UserAssignedIdentitySpecification": { "description": "Definition of a single user assigned identity for a factory.", "type": "object", - "properties": { - } + "properties": {} }, "DatasetReference": { "description": "Dataset reference type.", From f3cf75a3317b502d23d76996aa3b10c30e25bc50 Mon Sep 17 00:00:00 2001 From: pacodel Date: Wed, 30 Sep 2020 09:08:41 -0700 Subject: [PATCH 3/4] Model Identity Type as string --- .../stable/2018-06-01/datafactory.json | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/datafactory.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/datafactory.json index 088889e91abd..118c7f72e401 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/datafactory.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/datafactory.json @@ -5085,6 +5085,7 @@ "type": { "type": "string", "description": "The identity type.", + "default": "SystemAssigned", "enum": [ "SystemAssigned", "UserAssigned", @@ -5092,7 +5093,7 @@ ], "x-ms-enum": { "name": "FactoryIdentityType", - "modelAsString": false + "modelAsString": true } }, "principalId": { @@ -5111,10 +5112,7 @@ "$ref": "#/definitions/UserAssignedIdentitiesDefinitionSpecification", "description": "List of user assigned identities for the factory." } - }, - "required": [ - "type" - ] + } }, "UserAssignedIdentitiesDefinitionSpecification": { "description": "Definition of all user assigned identities for a factory.", From daf7ed6bfea4db8543ed0b37bbadc1a40db0a447 Mon Sep 17 00:00:00 2001 From: pacodel Date: Wed, 2 Dec 2020 09:40:18 -0800 Subject: [PATCH 4/4] RemoveEnumChanges --- .../stable/2018-06-01/datafactory.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/datafactory.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/datafactory.json index e26edb528747..7b6e0cd1c483 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/datafactory.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/datafactory.json @@ -5097,15 +5097,12 @@ "type": { "type": "string", "description": "The identity type.", - "default": "SystemAssigned", "enum": [ - "SystemAssigned", - "UserAssigned", - "SystemAssigned,UserAssigned" + "SystemAssigned" ], "x-ms-enum": { "name": "FactoryIdentityType", - "modelAsString": true + "modelAsString": false } }, "principalId": { @@ -5124,7 +5121,10 @@ "$ref": "#/definitions/UserAssignedIdentitiesDefinitionSpecification", "description": "List of user assigned identities for the factory." } - } + }, + "required": [ + "type" + ] }, "UserAssignedIdentitiesDefinitionSpecification": { "description": "Definition of all user assigned identities for a factory.",