diff --git a/components/org.wso2.carbon.identity.organization.management.handler/src/main/java/org/wso2/carbon/identity/organization/management/handler/SharedRoleMgtHandler.java b/components/org.wso2.carbon.identity.organization.management.handler/src/main/java/org/wso2/carbon/identity/organization/management/handler/SharedRoleMgtHandler.java index 5bd4a6a9a..b04579bd8 100644 --- a/components/org.wso2.carbon.identity.organization.management.handler/src/main/java/org/wso2/carbon/identity/organization/management/handler/SharedRoleMgtHandler.java +++ b/components/org.wso2.carbon.identity.organization.management.handler/src/main/java/org/wso2/carbon/identity/organization/management/handler/SharedRoleMgtHandler.java @@ -271,7 +271,12 @@ private void createSharedRolesOnNewRoleCreation(Map eventPropert for (BasicOrganization organization : applicationSharedOrganizations) { String shareAppTenantDomain = getOrganizationManager().resolveTenantDomain(organization.getId()); - RoleBasicInfo sharedRoleInfo = getRoleManagementServiceV2().addRole(mainRoleName, + String sharedOrgRoleName = mainRoleName; + if (getRoleManagementServiceV2().isExistingRoleName(mainRoleName, RoleConstants.ORGANIZATION, + organization.getId(), shareAppTenantDomain)) { + sharedOrgRoleName = mainRoleName + "_shared_to_" + shareAppTenantDomain; + } + RoleBasicInfo sharedRoleInfo = getRoleManagementServiceV2().addRole(sharedOrgRoleName, Collections.emptyList(), Collections.emptyList(), Collections.emptyList(), RoleConstants.ORGANIZATION, organization.getId(),