Azure Containers built-in role

Azure Red Hat OpenShift Cloud Controller Manager

Azure Red Hat OpenShift Cloud Controller Manager is a service-agent role for the user-assigned managed identity associated with the Cloud Controller Manager operator. It allows that operator to manage load balancers, public IPs, network interfaces, security groups, subnets, and related cloud-controller infrastructure. Azure Red Hat OpenShift creates a separate assignment of this role on the ARO managed resource group for the service-managed resources. Its published permissions are Azure control-plane Actions with no DataActions; it is not a human OpenShift administration role.

Role-definition permissions are imported from Microsoft Learn. Practical scope, use cases, prerequisites, best practices, security considerations, assignment guidance, and relationships have been reviewed against the official sources below.

Role definition ID: a1f96423-95ce-4224-ab27-4e3dc72facd4

Control-plane actions (29)

Data-plane actions (0)

None — this role grants no data-plane (data access) actions.

Excluded actions (0)

None

Assignable scopes (1)

Practical scope

The ARO service creates the assignment on the managed resource group. For customer-owned resources outside that group, Microsoft documents customer-created assignments to the corresponding Cloud Controller Manager operator identity only at the control-plane and worker subnets plus the documented optional NSG, route table, and NAT gateway resources. Do not infer additional external assignment scopes from the role's Actions.

Common use cases (1)

Prerequisites (2)

Best practices (2)

Security considerations (2)

Assignment guidance

Allow the ARO service to create Azure Red Hat OpenShift Cloud Controller Manager on the managed resource group. For customer-owned infrastructure, assign it only to the dedicated Cloud Controller Manager operator identity at the control-plane and worker subnets plus the documented optional NSG, route table, and NAT gateway resources, exactly as listed in the current identity architecture and deployment examples. Do not duplicate the managed-resource-group assignment or extrapolate other external scopes from Actions, and do not grant the role to human administrators.

Related roles (1)

Common questions

When should I assign the Azure Red Hat OpenShift Cloud Controller Manager Azure role?

Assign Azure Red Hat OpenShift Cloud Controller Manager when you need to: Allow the ARO Cloud Controller Manager operator identity to operate service-managed resources in the managed resource group and only the documented customer-owned resources required by the cluster architecture.. Practical scope: The ARO service creates the assignment on the managed resource group. For customer-owned resources outside that group, Microsoft documents customer-created assignments to the corresponding Cloud Controller Manager operator identity only at the control-plane and worker subnets plus the documented optional NSG, route table, and NAT gateway resources. Do not infer additional external assignment scopes from the role's Actions.

What permissions does the Azure Red Hat OpenShift Cloud Controller Manager Azure role grant?

The role definition grants 29 combined control-plane and data-plane actions. Representative operations include: Microsoft.Compute/virtualMachines/read; Microsoft.Network/loadBalancers/backendAddressPools/join/action; Microsoft.Network/loadBalancers/read; Microsoft.Network/loadBalancers/write; Microsoft.Network/networkInterfaces/read; and Microsoft.Network/networkInterfaces/write. Review the permission sections above for the complete definition and exclusions.

What are the security risks of the Azure Red Hat OpenShift Cloud Controller Manager Azure role?

Key considerations when assigning Azure Red Hat OpenShift Cloud Controller Manager: The operator can change cluster load-balancing and network infrastructure, which can expose, reroute, or disrupt cluster traffic.; and A broader customer-created external assignment or a human assignment would grant infrastructure permissions outside the documented ARO component boundary and bypass the separation among core operator identities.. Follow the assignment guidance above and use the narrowest practical scope.

Editorial sources (7)

Official Microsoft Learn documentation →