Skip to content

Commit a78ce45

Browse files
authored
Ensure all common-types files are included in the latest version (v5) (#25316)
* base commit * Update to v5 * Update CMK to match the common API contract https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/common-api-contracts.md#customer-managed-key-encryption * Fix spec format * Add missing properties and fix errors in CMK
1 parent b1f57e5 commit a78ce45

File tree

3 files changed

+312
-0
lines changed

3 files changed

+312
-0
lines changed
Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
{
2+
"swagger": "2.0",
3+
"info": {
4+
"version": "5.0",
5+
"title": "Common types"
6+
},
7+
"paths": {},
8+
"definitions": {
9+
"encryption": {
10+
"type": "object",
11+
"description": "All encryption configuration for a resource.",
12+
"properties": {
13+
"infrastructureEncryption": {
14+
"type": "string",
15+
"enum": [
16+
"enabled",
17+
"disabled"
18+
],
19+
"x-ms-enum": {
20+
"name": "InfrastructureEncryption",
21+
"modelAsString": true
22+
},
23+
"description": "(Optional) Discouraged to include in resource definition. Only needed where it is possible to disable platform (AKA infrastructure) encryption. Azure SQL TDE is an example of this. Values are enabled and disabled."
24+
},
25+
"customerManagedKeyEncryption": {
26+
"type": "object",
27+
"description": "All Customer-managed key encryption properties for the resource.",
28+
"properties": {
29+
"keyEncryptionKeyIdentity": {
30+
"type": "object",
31+
"description": "All identity configuration for Customer-managed key settings defining which identity should be used to auth to Key Vault.",
32+
"properties": {
33+
"identityType": {
34+
"type": "string",
35+
"enum": [
36+
"systemAssignedIdentity",
37+
"userAssignedIdentity",
38+
"delegatedResourceIdentity"
39+
],
40+
"description": "The type of identity to use. Values can be systemAssignedIdentity, userAssignedIdentity, or delegatedResourceIdentity."
41+
},
42+
"userAssignedIdentityResourceId": {
43+
"type": "string",
44+
"format": "arm-id",
45+
"description": "User assigned identity to use for accessing key encryption key Url. Ex: /subscriptions/fa5fc227-a624-475e-b696-cdd604c735bc/resourceGroups/<resource group>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId. Mutually exclusive with identityType systemAssignedIdentity."
46+
},
47+
"federatedClientId": {
48+
"type": "string",
49+
"format": "uuid",
50+
"description": "application client identity to use for accessing key encryption key Url in a different tenant. Ex: f83c6b1b-4d34-47e4-bb34-9d83df58b540"
51+
},
52+
"delegatedIdentityClientId": {
53+
"type": "string",
54+
"format": "uuid",
55+
"description": "delegated identity to use for accessing key encryption key Url. Ex: /subscriptions/fa5fc227-a624-475e-b696-cdd604c735bc/resourceGroups/<resource group>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId. Mutually exclusive with identityType systemAssignedIdentity and userAssignedIdentity - internal use only."
56+
}
57+
}
58+
},
59+
"keyEncryptionKeyUrl": {
60+
"type": "string",
61+
"description": "key encryption key Url, versioned or unversioned. Ex: https://contosovault.vault.azure.net/keys/contosokek/562a4bb76b524a1493a6afe8e536ee78 or https://contosovault.vault.azure.net/keys/contosokek."
62+
}
63+
}
64+
}
65+
}
66+
}
67+
}
68+
}
Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
{
2+
"swagger": "2.0",
3+
"info": {
4+
"version": "5.0",
5+
"title": "Common types"
6+
},
7+
"paths": {},
8+
"definitions": {
9+
"ManagedServiceIdentityWithDelegation": {
10+
"description": "Managed service identity (system assigned and/or user assigned identities and/or delegated identities) - internal use only.",
11+
"type": "object",
12+
"allOf": [
13+
{
14+
"$ref": "managedidentity.json#/definitions/ManagedServiceIdentity"
15+
}
16+
],
17+
"properties": {
18+
"delegatedResources": {
19+
"$ref": "#/definitions/DelegatedResources"
20+
}
21+
}
22+
},
23+
"DelegatedResources": {
24+
"description": "The set of delegated resources. The delegated resources dictionary keys will be source resource internal ids - internal use only.",
25+
"type": "object",
26+
"additionalProperties": {
27+
"$ref": "#/definitions/DelegatedResource"
28+
}
29+
},
30+
"DelegatedResource": {
31+
"type": "object",
32+
"description": "Delegated resource properties - internal use only.",
33+
"properties": {
34+
"resourceId": {
35+
"description": "The ARM resource id of the delegated resource - internal use only.",
36+
"type": "string"
37+
},
38+
"tenantId": {
39+
"description": "The tenant id of the delegated resource - internal use only.",
40+
"format": "uuid",
41+
"type": "string"
42+
},
43+
"referralResource": {
44+
"description": "The delegation id of the referral delegation (optional) - internal use only.",
45+
"type": "string"
46+
},
47+
"location": {
48+
"description": "The source resource location - internal use only.",
49+
"type": "string"
50+
}
51+
}
52+
}
53+
}
54+
}
Lines changed: 190 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,190 @@
1+
{
2+
"swagger": "2.0",
3+
"info": {
4+
"version": "5.0",
5+
"title": "Common types"
6+
},
7+
"paths": {},
8+
"definitions": {
9+
"PrivateEndpoint": {
10+
"type": "object",
11+
"properties": {
12+
"id": {
13+
"readOnly": true,
14+
"type": "string",
15+
"description": "The ARM identifier for private endpoint."
16+
}
17+
},
18+
"description": "The private endpoint resource."
19+
},
20+
"PrivateEndpointConnection": {
21+
"type": "object",
22+
"properties": {
23+
"properties": {
24+
"$ref": "#/definitions/PrivateEndpointConnectionProperties",
25+
"x-ms-client-flatten": true,
26+
"description": "Resource properties."
27+
}
28+
},
29+
"allOf": [
30+
{
31+
"$ref": "../v5/types.json#/definitions/Resource"
32+
}
33+
],
34+
"description": "The private endpoint connection resource."
35+
},
36+
"PrivateEndpointConnectionProperties": {
37+
"type": "object",
38+
"properties": {
39+
"groupIds": {
40+
"description": "The group ids for the private endpoint resource.",
41+
"type": "array",
42+
"items": {
43+
"type": "string"
44+
},
45+
"readOnly": true
46+
},
47+
"privateEndpoint": {
48+
"$ref": "#/definitions/PrivateEndpoint",
49+
"description": "The private endpoint resource."
50+
},
51+
"privateLinkServiceConnectionState": {
52+
"$ref": "#/definitions/PrivateLinkServiceConnectionState",
53+
"description": "A collection of information about the state of the connection between service consumer and provider."
54+
},
55+
"provisioningState": {
56+
"$ref": "#/definitions/PrivateEndpointConnectionProvisioningState",
57+
"description": "The provisioning state of the private endpoint connection resource."
58+
}
59+
},
60+
"required": [
61+
"privateLinkServiceConnectionState"
62+
],
63+
"description": "Properties of the private endpoint connection."
64+
},
65+
"PrivateLinkServiceConnectionState": {
66+
"type": "object",
67+
"properties": {
68+
"status": {
69+
"$ref": "#/definitions/PrivateEndpointServiceConnectionStatus",
70+
"description": "Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service."
71+
},
72+
"description": {
73+
"type": "string",
74+
"description": "The reason for approval/rejection of the connection."
75+
},
76+
"actionsRequired": {
77+
"type": "string",
78+
"description": "A message indicating if changes on the service provider require any updates on the consumer."
79+
}
80+
},
81+
"description": "A collection of information about the state of the connection between service consumer and provider."
82+
},
83+
"PrivateEndpointServiceConnectionStatus": {
84+
"type": "string",
85+
"description": "The private endpoint connection status.",
86+
"enum": [
87+
"Pending",
88+
"Approved",
89+
"Rejected"
90+
],
91+
"x-ms-enum": {
92+
"name": "PrivateEndpointServiceConnectionStatus",
93+
"modelAsString": true
94+
}
95+
},
96+
"PrivateEndpointConnectionProvisioningState": {
97+
"type": "string",
98+
"readOnly": true,
99+
"description": "The current provisioning state.",
100+
"enum": [
101+
"Succeeded",
102+
"Creating",
103+
"Deleting",
104+
"Failed"
105+
],
106+
"x-ms-enum": {
107+
"name": "PrivateEndpointConnectionProvisioningState",
108+
"modelAsString": true
109+
}
110+
},
111+
"PrivateLinkResource": {
112+
"type": "object",
113+
"properties": {
114+
"properties": {
115+
"$ref": "#/definitions/PrivateLinkResourceProperties",
116+
"description": "Resource properties.",
117+
"x-ms-client-flatten": true
118+
}
119+
},
120+
"allOf": [
121+
{
122+
"$ref": "../v5/types.json#/definitions/Resource"
123+
}
124+
],
125+
"description": "A private link resource."
126+
},
127+
"PrivateLinkResourceProperties": {
128+
"type": "object",
129+
"properties": {
130+
"groupId": {
131+
"description": "The private link resource group id.",
132+
"type": "string",
133+
"readOnly": true
134+
},
135+
"requiredMembers": {
136+
"description": "The private link resource required member names.",
137+
"type": "array",
138+
"items": {
139+
"type": "string"
140+
},
141+
"readOnly": true
142+
},
143+
"requiredZoneNames": {
144+
"type": "array",
145+
"items": {
146+
"type": "string"
147+
},
148+
"description": "The private link resource private link DNS zone name."
149+
}
150+
},
151+
"description": "Properties of a private link resource."
152+
},
153+
"PrivateEndpointConnectionListResult": {
154+
"type": "object",
155+
"properties": {
156+
"value": {
157+
"type": "array",
158+
"description": "Array of private endpoint connections.",
159+
"items": {
160+
"$ref": "#/definitions/PrivateEndpointConnection"
161+
}
162+
}
163+
},
164+
"description": "List of private endpoint connections associated with the specified resource."
165+
},
166+
"PrivateLinkResourceListResult": {
167+
"type": "object",
168+
"properties": {
169+
"value": {
170+
"type": "array",
171+
"description": "Array of private link resources",
172+
"items": {
173+
"$ref": "#/definitions/PrivateLinkResource"
174+
}
175+
}
176+
},
177+
"description": "A list of private link resources."
178+
}
179+
},
180+
"parameters": {
181+
"PrivateEndpointConnectionName": {
182+
"name": "privateEndpointConnectionName",
183+
"in": "path",
184+
"required": true,
185+
"type": "string",
186+
"description": "The name of the private endpoint connection associated with the Azure resource.",
187+
"x-ms-parameter-location": "method"
188+
}
189+
}
190+
}

0 commit comments

Comments
 (0)