Azure / Azure/azure-rest-api-specs
Identity enum in v2 common types - only has SystemAssigned? What to do about UserAssigned?
- Dominant language
- TypeSpec
- Stars
- 3.1k
- Forks
- 5.9k
- Avg merge
- 2d 22h
- Merged PRs (30d)
- 444
Description
Today the ResourceIdentityType 'string enum' in CommonTypes doesn't have 'UserAssigned' as a valid enum value. Or the combination 'UserAssigned, SystemAssigned'. The tricky bit as I see it is that many services would probably like it to define the other values with 'UserAssigned' also, and then they can't really do that by referencing 'Identity' in commonTypes - or can they?
(And if they *were* added in common-types that would look like a breaking doc/contract change for any RP using it today right?)
```
"Identity": {
"description": "Identity for the resource.",
"properties": {
"principalId": {
"readOnly": true,
"type": "string",
"description": "The principal ID of resource identity."
},
"tenantId": {
"readOnly": true,
"type": "string",
"description": "The tenant ID of resource."
},
"type": {
"type": "string",
"description": "The identity type.",
"enum": [
"SystemAssigned"
],
"x-ms-enum": {
"name": "ResourceIdentityType",
"modelAsString": false
}
}
}
```
Contributor guide
Research direction
Start by reviewing the Identity definition in CommonTypes and searching for ResourceIdentityType usages across the specifications. Determine whether UserAssigned and combined identity values can be represented without breaking existing resource-provider contracts. Done means the compatibility concern and the supported contract approach are resolved, with the relevant specification changes identified.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- openapi
- Domain
- api, backend-api-design
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100