rules/findings/azure/IAM/azure-custom-administrator-role-set.json
|
{
"provider": "Azure", "serviceType": "Subscription Identity", "serviceName": "Subscription", "displayName": "Ensure that no custom subscription administrator roles exist", "description": "The principle of least privilege should be followed and only necessary privileges should be assigned instead of allowing full administrative access.", "rationale": "Custom roles in Azure with administrative access can obfuscate the permissions granted and introduce complexity and blind spots to the management of privileged identities. For less mature security programs without regular identity audits, the creation of Custom roles should be avoided entirely. For more mature security programs with regular identity audits, Custom Roles should be audited for use and assignment, used minimally, and the principle of least privilege should be observed when granting permissions", "impact": "Subscriptions will need to be handled by Administrators with permissions.", "remediation": { "text": "Remediate from Azure Portal 1. From Azure Home select the Portal Menu. 2. Select Subscriptions. 3. Select a subscription. 4. Select Access control (IAM). 5. Select Roles. 6. Click Type and select Custom role from the drop-down menu. 7. Check the box next to each role which grants subscription administrator privileges. 8. Select Delete. 9. Select Yes. Remediate from Azure CLI List custom roles:", "code": { "powerShell": null, "iac": null, "terraform": null, "other": null } }, "recommendation": null, "references": [ "https://learn.microsoft.com/en-us/azure/cost-management-billing/manage/add-change-subscription-administrator", "https://learn.microsoft.com/en-us/security/benchmark/azure/mcsb-privileged-access#pa-1-separate-and-limit-highly-privilegedadministrative-users", "https://learn.microsoft.com/en-us/security/benchmark/azure/mcsb-privileged-access#pa-3-manage-lifecycle-of-identities-and-entitlements", "https://learn.microsoft.com/en-us/security/benchmark/azure/mcsb-governance-strategy#gs-2-define-and-implement-enterprise-segmentationseparation-of-duties-strategy", "https://learn.microsoft.com/en-us/security/benchmark/azure/mcsb-governance-strategy#gs-6-define-and-implement-identity-and-privileged-access-strategy", "https://learn.microsoft.com/en-us/security/benchmark/azure/mcsb-privileged-access#pa-7-follow-just-enough-administration-least-privilege-principle" ], "compliance": [ { "name": "CIS Microsoft Azure Foundations", "version": "6.0.0", "reference": "5.4", "profile": [ "Level 1" ] } ], "level": "high", "tags": [], "rule": { "path": "az_role_definitions", "subPath": null, "selectCondition": {}, "data": { "properties": { "id": "id", "properties.roleName": "Role", "properties.type": "Type", "properties.description": "Description", "properties": "properties" } }, "query": [ { "filter": [ { "include": "_ARG_0_" }, { "conditions": [ [ "properties.type", "eq", "CustomRole" ] ] } ], "operator": "and" } ], "shouldExist": null, "returnObject": null, "removeIfNotExists": null }, "output": { "html": { "data": { "properties": { "id": "Id", "Role": "Role", "Type": "Type", "Description": "Description" } }, "table": "default", "decorate": [], "emphasis": [], "actions": { "objectData": { "properties": [ "id", "properties" ], "expandObject": null, "limit": null }, "showGoToButton": "True", "showModalButton": "True", "directLink": null } }, "text": { "data": { "properties": { "id": "Id", "Role": "Role", "Type": "Type", "Description": "Description" } }, "status": { "keyName": [ "Role" ], "message": "The {Role} custom administrative role was detected", "defaultMessage": "Ensure that no custom subscription administrator roles exist" }, "properties": { "resourceName": "properties.roleName", "resourceId": "id", "resourceType": "azureRoleDefinition" }, "onlyStatus": false } }, "idSuffix": "azure_iam_custom_administrator_role_detected", "notes": [ ], "categories": [ ], "immutable_properties": [ "id" ], "id": "azure_iam_001" } |