Azure / Azure/azure-rest-api-specs
[BUG] The `Identity` block is referenced with wrong type
- Dominant language
- TypeSpec
- Stars
- 3.1k
- Forks
- 5.9k
- Avg merge
- 2d 22h
- Merged PRs (30d)
- 444
Description
### API Spec link
https://github.com/Azure/azure-rest-api-specs/blob/main/specification/paloaltonetworks/resource-manager/PaloAltoNetworks.Cloudngfw/stable/2025-05-23/PaloAltoNetworks.Cloudngfw.json#L5400C1-L5403C11
### API Spec version
2025-05-23, 2025-10-08
### Describe the bug
The identity block [only supports](https://learn.microsoft.com/en-us/rest/api/cloudngfw/firewalls/create-or-update?view=rest-cloudngfw-2025-05-23&tabs=HTTP#azure.resourcemanager.managedidentityproperties) `UserAssignedIdentity`. But it's defined as [ManagedServiceIdentity](https://github.com/Azure/azure-rest-api-specs/blob/main/specification/paloaltonetworks/resource-manager/PaloAltoNetworks.Cloudngfw/stable/2025-05-23/PaloAltoNetworks.Cloudngfw.json#L5400C1-L5403C11), which accepts `SystemAssigned`, `UserAssignedIdentity` and `SystemAssigned, UserAssignedIdentity`. The consequence is that downstream SDKs will match a wrong type for this property and causing confusions during development.
Relevant with https://github.com/Azure/azure-rest-api-specs/issues/22634
### Expected behavior
Correct type should be used for the identity block.
For example: https://github.com/Azure/azure-rest-api-specs/blob/main/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2022-05-15/managedCassandra.json#L771
https://github.com/Azure/azure-rest-api-specs/blob/main/specification/network/resource-manager/Microsoft.Network/stable/2022-07-01/firewallPolicy.json#L955
### Actual behavior
Wrong type is used for `Identity`
### Reproduction Steps
As indicated in Microsoft learn and Swagger above
### Environment
_No response_
Contributor guide
Research direction
Open specification/paloaltonetworks/resource-manager/PaloAltoNetworks.Cloudngfw/stable/2025-05-23/PaloAltoNetworks.Cloudngfw.json around lines 5400-5403 and review the linked API documentation. Compare the identity definitions in the referenced Cosmos DB and Network examples. Done means the Identity block uses a type that supports only UserAssignedIdentity, with the specification validating successfully.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- json, openapi
- Domain
- api
- Issue type
- Bug
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Stale
- Clarity
- Clearly specified
- Newbie friendliness
- 52/100