Skip to content

Commit 04e0edd

Browse files
scottmacchia-msftmsarangamsyyc
authored andcommitted
Azure Databricks - Managed Disk Encryption - Critical API Version Cha… (Azure#21274)
* Azure Databricks - Managed Disk Encryption - Critical API Version Changes * Updated json files with prettier * Updated Readme and fixed header issues in two files * Fixed remaining response header issues and fixed OperationListResult * Removed explicit type declarations and updated python sdk title * Reverted back to non camel case to avoid breaking changes * Fixing Swagger validation errors * Update readme.python.md * Address review comments by * Updated SDK client name * Removed minor difference between ErrorInfo models Co-authored-by: Mahender Sarangam <[email protected]> Co-authored-by: Yuchao Yan <[email protected]>
1 parent 30e6f85 commit 04e0edd

File tree

10 files changed

+468
-11
lines changed

10 files changed

+468
-11
lines changed

specification/databricks/resource-manager/Microsoft.Databricks/preview/2022-04-01-preview/databricks.json

Lines changed: 80 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"swagger": "2.0",
33
"info": {
4-
"title": "DatabricksClient",
4+
"title": "AzureDatabricksManagementClient",
55
"version": "2022-04-01-preview",
66
"description": "These APIs allow end users to operate on Azure Databricks Workspace resources."
77
},
@@ -47,6 +47,9 @@
4747
},
4848
"Get a workspace with custom parameters": {
4949
"$ref": "./examples/WorkspaceGetParameters.json"
50+
},
51+
"Get a workspace with Customer-Managed Key (CMK) encryption for Managed Disks": {
52+
"$ref": "./examples/WorkspaceManagedDiskEncryptionGet.json"
5053
}
5154
},
5255
"parameters": [
@@ -143,6 +146,12 @@
143146
},
144147
"Revert Customer-Managed Key (CMK) encryption to Microsoft Managed Keys encryption on a workspace": {
145148
"$ref": "./examples/DisableEncryption.json"
149+
},
150+
"Create a workspace with Customer-Managed Key (CMK) encryption for Managed Disks": {
151+
"$ref": "./examples/WorkspaceManagedDiskEncryptionCreate.json"
152+
},
153+
"Update a workspace with Customer-Managed Key (CMK) encryption for Managed Disks": {
154+
"$ref": "./examples/WorkspaceManagedDiskEncryptionUpdate.json"
146155
}
147156
},
148157
"parameters": [
@@ -546,7 +555,8 @@
546555
},
547556
"put": {
548557
"tags": [
549-
"PUT"
558+
"PUT",
559+
"PrivateEndpointConnections"
550560
],
551561
"summary": "Update private endpoint connection status",
552562
"description": "Update the status of a private endpoint connection with the specified name",
@@ -606,7 +616,8 @@
606616
},
607617
"delete": {
608618
"tags": [
609-
"DELETE"
619+
"DELETE",
620+
"PrivateEndpointConnections"
610621
],
611622
"summary": "Remove private endpoint connection",
612623
"description": "Remove private endpoint connection with the specified name",
@@ -748,6 +759,7 @@
748759
"authorizations": {
749760
"description": "The workspace provider authorizations.",
750761
"type": "array",
762+
"x-ms-identifiers": [],
751763
"items": {
752764
"$ref": "#/definitions/WorkspaceProviderAuthorization"
753765
}
@@ -778,6 +790,14 @@
778790
"description": "The details of Managed Identity of Storage Account",
779791
"$ref": "#/definitions/ManagedIdentityConfiguration"
780792
},
793+
"managedDiskIdentity": {
794+
"description": "The details of Managed Identity of Disk Encryption Set used for Managed Disk Encryption",
795+
"$ref": "#/definitions/ManagedIdentityConfiguration"
796+
},
797+
"diskEncryptionSetId": {
798+
"type": "string",
799+
"description": "The resource Id of the managed disk encryption set."
800+
},
781801
"encryption": {
782802
"type": "object",
783803
"description": "Encryption properties for databricks workspace",
@@ -1170,6 +1190,11 @@
11701190
"type": "object",
11711191
"description": "Encryption properties for the databricks managed services.",
11721192
"$ref": "#/definitions/EncryptionV2"
1193+
},
1194+
"managedDisk": {
1195+
"type": "object",
1196+
"description": "Encryption properties for the databricks managed disks.",
1197+
"$ref": "#/definitions/ManagedDiskEncryption"
11731198
}
11741199
},
11751200
"description": "Encryption entities for databricks workspace resource."
@@ -1215,6 +1240,54 @@
12151240
],
12161241
"description": "The object that contains details of encryption used on the workspace."
12171242
},
1243+
"ManagedDiskEncryption": {
1244+
"type": "object",
1245+
"properties": {
1246+
"keySource": {
1247+
"type": "string",
1248+
"description": "The encryption keySource (provider). Possible values (case-insensitive): Microsoft.Keyvault",
1249+
"enum": [
1250+
"Microsoft.Keyvault"
1251+
],
1252+
"x-ms-enum": {
1253+
"name": "EncryptionKeySource",
1254+
"modelAsString": true
1255+
}
1256+
},
1257+
"keyVaultProperties": {
1258+
"type": "object",
1259+
"properties": {
1260+
"keyVaultUri": {
1261+
"type": "string",
1262+
"description": "The URI of KeyVault."
1263+
},
1264+
"keyName": {
1265+
"type": "string",
1266+
"description": "The name of KeyVault key."
1267+
},
1268+
"keyVersion": {
1269+
"type": "string",
1270+
"description": "The version of KeyVault key."
1271+
}
1272+
},
1273+
"required": [
1274+
"keyVaultUri",
1275+
"keyName",
1276+
"keyVersion"
1277+
],
1278+
"description": "Key Vault input properties for encryption."
1279+
},
1280+
"rotationToLatestKeyVersionEnabled": {
1281+
"type": "boolean",
1282+
"description": "Indicate whether the latest key version should be automatically used for Managed Disk Encryption."
1283+
}
1284+
},
1285+
"required": [
1286+
"keySource",
1287+
"keyVaultProperties"
1288+
],
1289+
"description": "The object that contains details of encryption used on the workspace."
1290+
},
12181291
"WorkspaceProviderAuthorization": {
12191292
"properties": {
12201293
"principalId": {
@@ -1360,6 +1433,7 @@
13601433
"properties": {
13611434
"value": {
13621435
"type": "array",
1436+
"x-ms-identifiers": [],
13631437
"items": {
13641438
"$ref": "#/definitions/Operation"
13651439
},
@@ -1587,6 +1661,7 @@
15871661
"endpointDetails": {
15881662
"description": "The Ports used when connecting to domainName.",
15891663
"type": "array",
1664+
"x-ms-identifiers": [],
15901665
"items": {
15911666
"$ref": "#/definitions/EndpointDetail"
15921667
}
@@ -1628,6 +1703,7 @@
16281703
"endpoints": {
16291704
"description": "The endpoints that Workspace connect to",
16301705
"type": "array",
1706+
"x-ms-identifiers": [],
16311707
"items": {
16321708
"$ref": "#/definitions/EndpointDependency"
16331709
}
@@ -1637,6 +1713,7 @@
16371713
"OutboundEnvironmentEndpointCollection": {
16381714
"description": "Collection of outbound network dependency endpoints",
16391715
"type": "array",
1716+
"x-ms-identifiers": [],
16401717
"items": {
16411718
"$ref": "#/definitions/OutboundEnvironmentEndpoint"
16421719
}

specification/databricks/resource-manager/Microsoft.Databricks/preview/2022-04-01-preview/examples/PrivateEndpointConnectionsDelete.json

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,13 @@
88
},
99
"responses": {
1010
"200": {},
11-
"202": {},
11+
"202": {
12+
"headers": {
13+
"Retry-After": "10",
14+
"Azure-AsyncOperation": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.Databricks/locations/exampleLocation/operationStatuses/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2022-04-01-preview",
15+
"Location": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.Databricks/locations/exampleLocation/operationResults/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2022-04-01-preview"
16+
}
17+
},
1218
"204": {}
1319
}
1420
}

specification/databricks/resource-manager/Microsoft.Databricks/preview/2022-04-01-preview/examples/WorkspaceDelete.json

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,13 @@
77
},
88
"responses": {
99
"200": {},
10-
"202": {},
10+
"202": {
11+
"headers": {
12+
"Retry-After": "10",
13+
"Azure-AsyncOperation": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.Databricks/workspaces/swaggerExample/operationStatus/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2022-04-01-preview",
14+
"Location": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.Databricks/workspaces/swaggerExample/operationResults/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2022-04-01-preview"
15+
}
16+
},
1117
"204": {}
1218
}
1319
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,140 @@
1+
{
2+
"parameters": {
3+
"subscriptionId": "subid",
4+
"resourceGroupName": "rg",
5+
"workspaceName": "myWorkspace",
6+
"api-version": "2022-04-01-preview",
7+
"parameters": {
8+
"properties": {
9+
"managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG",
10+
"encryption": {
11+
"entities": {
12+
"managedDisk": {
13+
"keySource": "Microsoft.Keyvault",
14+
"keyVaultProperties": {
15+
"keyVaultUri": "https://test-vault-name.vault.azure.net/",
16+
"keyName": "test-cmk-key",
17+
"keyVersion": "00000000000000000000000000000000"
18+
},
19+
"rotationToLatestKeyVersionEnabled": true
20+
}
21+
}
22+
}
23+
},
24+
"location": "westus"
25+
}
26+
},
27+
"responses": {
28+
"200": {
29+
"body": {
30+
"id": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Databricks/workspaces/myWorkspace",
31+
"type": "Microsoft.Databricks/workspaces",
32+
"location": "East US 2",
33+
"tags": null,
34+
"sku": {
35+
"name": "premium"
36+
},
37+
"properties": {
38+
"managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG",
39+
"diskEncryptionSetId": "/subscriptions/subid/resourceGroups/myManagedRG/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet",
40+
"encryption": {
41+
"entities": {
42+
"managedDisk": {
43+
"keySource": "Microsoft.Keyvault",
44+
"keyVaultProperties": {
45+
"keyVaultUri": "https://test-vault-name.vault.azure.net/",
46+
"keyName": "test-cmk-key",
47+
"keyVersion": "00000000000000000000000000000000"
48+
},
49+
"rotationToLatestKeyVersionEnabled": true
50+
}
51+
}
52+
},
53+
"parameters": null,
54+
"provisioningState": "Accepted",
55+
"uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json",
56+
"authorizations": [
57+
{
58+
"principalId": "00000000-0000-0000-0000-000000000000",
59+
"roleDefinitionId": "11111111-1111-1111-1111-111111111111"
60+
}
61+
],
62+
"createdBy": {
63+
"oid": "22222222-2222-2222-2222-222222222222",
64+
"puid": "33333333",
65+
"applicationId": "44444444-4444-4444-4444-444444444444"
66+
},
67+
"updatedBy": {
68+
"oid": "22222222-2222-2222-2222-222222222222",
69+
"puid": "33333333",
70+
"applicationId": "44444444-4444-4444-4444-444444444444"
71+
},
72+
"managedDiskIdentity": {
73+
"principalId": "22222222-2222-2222-2222-222222222222",
74+
"tenantId": "44444444-4444-4444-4444-444444444444",
75+
"type": "SystemAssigned"
76+
},
77+
"createdDateTime": "2020-02-20T00:10:29.2858439Z",
78+
"workspaceId": "5555555555555555",
79+
"workspaceUrl": "adb-5555555555555555.19.azuredatabricks.net"
80+
}
81+
}
82+
},
83+
"201": {
84+
"body": {
85+
"name": "myWorkspace",
86+
"id": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Databricks/workspaces/myWorkspace",
87+
"type": "Microsoft.Databricks/workspaces",
88+
"location": "East US 2",
89+
"tags": {
90+
"environment": "dev"
91+
},
92+
"sku": {
93+
"name": "premium"
94+
},
95+
"properties": {
96+
"managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG",
97+
"diskEncryptionSetId": "/subscriptions/subid/resourceGroups/myManagedRG/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet",
98+
"encryption": {
99+
"entities": {
100+
"managedDisk": {
101+
"keySource": "Microsoft.Keyvault",
102+
"keyVaultProperties": {
103+
"keyVaultUri": "https://test-vault-name.vault.azure.net/",
104+
"keyName": "test-cmk-key",
105+
"keyVersion": "00000000000000000000000000000000"
106+
},
107+
"rotationToLatestKeyVersionEnabled": true
108+
}
109+
}
110+
},
111+
"parameters": null,
112+
"provisioningState": "Accepted",
113+
"uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json",
114+
"authorizations": [
115+
{
116+
"principalId": "00000000-0000-0000-0000-000000000000",
117+
"roleDefinitionId": "11111111-1111-1111-1111-111111111111"
118+
}
119+
],
120+
"createdBy": {
121+
"oid": "22222222-2222-2222-2222-222222222222",
122+
"puid": "33333333",
123+
"applicationId": "44444444-4444-4444-4444-444444444444"
124+
},
125+
"updatedBy": {
126+
"oid": "22222222-2222-2222-2222-222222222222",
127+
"puid": "33333333",
128+
"applicationId": "44444444-4444-4444-4444-444444444444"
129+
},
130+
"managedDiskIdentity": {
131+
"principalId": "22222222-2222-2222-2222-222222222222",
132+
"tenantId": "44444444-4444-4444-4444-444444444444",
133+
"type": "SystemAssigned"
134+
},
135+
"createdDateTime": "2020-02-20T00:10:29.2858439Z"
136+
}
137+
}
138+
}
139+
}
140+
}

0 commit comments

Comments
 (0)