Share via

WithSecure Integration to Azure Sentinel

Phumlani Zwane 60 Reputation points
2026-05-04T09:31:10.93+00:00

Hi kindly assist in resolving an error i get when i try to integrate withsecure and sentinel, the error i get on the deployment is "Tenant ID, application ID, principal ID, and scope are not allowed to be updated. (Code: RoleAssignmentUpdateNotPermitted)", The role assigned is "Select Monitoring Metrics Publisher > Next. You could instead create a custom action with the Microsoft.Insights/Telemetry/Write data action." from the guide "https://learn.microsoft.com/en-us/azure/azure-monitor/logs/tutorial-logs-ingestion-portal#assign-permissions-to-the-dcr" but still am getting an error, i even created a custom role but same error.

Azure Role-based access control
Azure Role-based access control

An Azure service that provides fine-grained access management for Azure resources, enabling you to grant users only the rights they need to perform their jobs.


1 answer

Sort by: Most helpful
  1. AI answer

    2026-05-04T09:31:25.1433333+00:00

    The error Tenant ID, application ID, principal ID, and scope are not allowed to be updated. (code: RoleAssignmentUpdateNotPermitted) occurs when a deployment tries to update an existing role assignment instead of creating a new one. Role assignments are immutable and uniquely identified by their name (a GUID). If the same name is reused with a different principal, role, or scope, Azure treats it as an update and blocks it.

    To resolve this in the WithSecure → Sentinel integration deployment, focus on the role assignment resource in the template/Bicep that grants Monitoring Metrics Publisher (or the custom role) and ensure:

    1. Use a unique, deterministic name for the role assignment
      • The name of the Microsoft.Authorization/roleAssignments resource must be unique for each combination of scope, principal ID, and role ID.
      • If redeploying after changing the principal or role, generate a different GUID for the role assignment name so it is treated as a new assignment, not an update.
      • In Bicep/ARM, use the guid() function with stable inputs (for example, scope, principalId, roleDefinitionId) to generate an idempotent but correct name:
        • Example pattern (conceptual): name: guid(subscription().id, principalId, roleDefinitionId).
    2. Do not attempt to change an existing role assignment in-place
      • If a role assignment already exists for that name, you cannot change its tenant, principal ID, application ID, or scope.
      • Either:
        • Delete the existing role assignment (if appropriate and allowed) and then redeploy, or
        • Keep the existing assignment and adjust the template to match it, or
        • Create a new role assignment with a new name.
    3. Check for previous deployments or manual assignments
      • If the WithSecure integration or another deployment previously created a role assignment at the same scope for the same identity, the current deployment may be reusing the same name.
      • Inspect existing role assignments on the target resource/subscription and compare their IDs with what the template is generating.
    4. If using Azure Developer CLI or ARM/Bicep pipelines
      • The same rule applies: ensure each Microsoft.Authorization/roleAssignments resource uses a proper, deterministic GUID for name so that redeployments are idempotent and do not try to “update” an assignment whose principal or scope has changed.

    The error is not caused by the specific role (Monitoring Metrics Publisher vs custom role) but by how the role assignment resource is defined and named in the deployment.


    References:

    AI-generated content may be incorrect. Read our transparency notes for more information.

    Was this answer helpful?

Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.