diff --git a/user-manager-server/src/main/java/de/ozgcloud/user/UserService.java b/user-manager-server/src/main/java/de/ozgcloud/user/UserService.java
index 7e1bd7661be10bdd1f8a32999d862bc07630b25b..e32cdab3dc4d01a9733df08d49e930d0882cbe23 100644
--- a/user-manager-server/src/main/java/de/ozgcloud/user/UserService.java
+++ b/user-manager-server/src/main/java/de/ozgcloud/user/UserService.java
@@ -27,8 +27,6 @@ import java.util.Objects;
 import java.util.Optional;
 import java.util.stream.Stream;
 
-import jakarta.enterprise.context.ApplicationScoped;
-
 import org.apache.commons.lang3.StringUtils;
 
 import de.ozgcloud.user.common.errorhandling.FunctionalException;
@@ -37,8 +35,7 @@ import de.ozgcloud.user.common.errorhandling.TechnicalException;
 import de.ozgcloud.user.common.logging.OzgCloudLogging;
 import de.ozgcloud.user.keycloak.KeycloakUserRemoteService;
 import de.ozgcloud.user.settings.UserSettings;
-import io.smallrye.mutiny.Uni;
-import io.smallrye.mutiny.infrastructure.Infrastructure;
+import jakarta.enterprise.context.ApplicationScoped;
 import lombok.RequiredArgsConstructor;
 
 @ApplicationScoped
@@ -120,17 +117,7 @@ public class UserService {
 	}
 
 	private Optional<User> findInKeycloakAndSave(String externalId) {
-		return keycloakUserRemoteService.findUserById(externalId).map(this::saveAndSync);
-	}
-
-	public User saveAndSync(User user) {
-		var saved = save(user);
-		Uni.createFrom()
-		  .item(user)
-		  .runSubscriptionOn(Infrastructure.getDefaultWorkerPool())
-		  .subscribe()
-		  .with(u -> keycloakUserRemoteService.updateOzgCloudUserId(saved));
-		return saved;
+		return keycloakUserRemoteService.findUserById(externalId).map(this::save);
 	}
 
 	public Stream<String> findAllInactiveUserIds() {
diff --git a/user-manager-server/src/main/java/de/ozgcloud/user/keycloak/KeycloakApiService.java b/user-manager-server/src/main/java/de/ozgcloud/user/keycloak/KeycloakApiService.java
index ce3d7471dabc9db2573454eaec4034de5e1442d7..d70695d6cf069664040630ad42df12f392710f8d 100644
--- a/user-manager-server/src/main/java/de/ozgcloud/user/keycloak/KeycloakApiService.java
+++ b/user-manager-server/src/main/java/de/ozgcloud/user/keycloak/KeycloakApiService.java
@@ -29,17 +29,8 @@ import java.util.function.Supplier;
 import java.util.stream.Stream;
 import java.util.stream.StreamSupport;
 
-import jakarta.enterprise.context.ApplicationScoped;
-import jakarta.inject.Inject;
-import jakarta.ws.rs.BadRequestException;
-import jakarta.ws.rs.ClientErrorException;
-import jakarta.ws.rs.NotFoundException;
-import jakarta.ws.rs.ProcessingException;
-
-import org.apache.commons.lang3.ObjectUtils;
 import org.eclipse.microprofile.config.inject.ConfigProperty;
 import org.keycloak.admin.client.resource.RealmResource;
-import org.keycloak.admin.client.resource.UserResource;
 import org.keycloak.representations.idm.UserRepresentation;
 
 import de.ozgcloud.user.RemoteUserIterator;
@@ -47,6 +38,11 @@ import de.ozgcloud.user.User;
 import de.ozgcloud.user.UserResourceMapper;
 import de.ozgcloud.user.common.errorhandling.KeycloakUnavailableException;
 import de.ozgcloud.user.common.logging.OzgCloudLogging;
+import jakarta.enterprise.context.ApplicationScoped;
+import jakarta.inject.Inject;
+import jakarta.ws.rs.ClientErrorException;
+import jakarta.ws.rs.NotFoundException;
+import jakarta.ws.rs.ProcessingException;
 import lombok.extern.log4j.Log4j2;
 
 @ApplicationScoped
@@ -96,23 +92,4 @@ class KeycloakApiService {
 			throw new KeycloakUnavailableException(properties.user(), properties.realm(), keycloakUrl, e);
 		}
 	}
-
-	public void updateAttribute(String keycloakUserId, String attributeName, String attributeValue) {
-		var userResource = realmResource.users().get(keycloakUserId);
-		var userRepresentation = userResource.toRepresentation();
-		var ozgCloudUserIdInKeycloak = userRepresentation.firstAttribute(attributeName);
-		if (ObjectUtils.notEqual(ozgCloudUserIdInKeycloak, attributeValue)) {
-			userRepresentation.singleAttribute(attributeName, attributeValue);
-			tryUpdateUserResource(userResource, userRepresentation, attributeName);
-		}
-	}
-
-	void tryUpdateUserResource(UserResource userResource, UserRepresentation userRepresentation, String attributeName) {
-		try {
-			userResource.update(userRepresentation);
-		} catch (BadRequestException e) {
-			LOG.warn("Could not update user attribute {} in Keycloak.", attributeName, e);
-		}
-	}
-
 }
\ No newline at end of file
diff --git a/user-manager-server/src/main/java/de/ozgcloud/user/keycloak/KeycloakUserRemoteService.java b/user-manager-server/src/main/java/de/ozgcloud/user/keycloak/KeycloakUserRemoteService.java
index ed7610ad3f8c03e229477a411a98067dc24f1593..b9d520aa220b6891cb8d270eaa10b35fd3926760 100644
--- a/user-manager-server/src/main/java/de/ozgcloud/user/keycloak/KeycloakUserRemoteService.java
+++ b/user-manager-server/src/main/java/de/ozgcloud/user/keycloak/KeycloakUserRemoteService.java
@@ -26,18 +26,15 @@ package de.ozgcloud.user.keycloak;
 import java.util.Optional;
 import java.util.stream.Stream;
 
-import jakarta.enterprise.context.ApplicationScoped;
-import jakarta.inject.Inject;
-
 import de.ozgcloud.user.User;
 import de.ozgcloud.user.common.logging.OzgCloudLogging;
+import jakarta.enterprise.context.ApplicationScoped;
+import jakarta.inject.Inject;
 
 @ApplicationScoped
 @OzgCloudLogging
 public class KeycloakUserRemoteService {
 
-	public static final String ATTRIBUTE_NAME_OZG_CLOUD_USER_ID = "ozgCloudUserId";
-
 	@Inject
 	KeycloakApiService apiService;
 
@@ -45,10 +42,6 @@ public class KeycloakUserRemoteService {
 		return apiService.findAllUser();
 	}
 
-	public void updateOzgCloudUserId(User user) {
-		apiService.updateAttribute(user.getKeycloakUserId(), ATTRIBUTE_NAME_OZG_CLOUD_USER_ID, user.getId().toString());
-	}
-
 	public Optional<User> findUserById(String id) {
 		return apiService.findUserById(id);
 	}
diff --git a/user-manager-server/src/main/java/de/ozgcloud/user/sync/SyncService.java b/user-manager-server/src/main/java/de/ozgcloud/user/sync/SyncService.java
index 006cd983a77d172fb2616b98ac269252768f57d0..11fe3eb99d1c80b9ce9b4f9043f306bd10dea275 100644
--- a/user-manager-server/src/main/java/de/ozgcloud/user/sync/SyncService.java
+++ b/user-manager-server/src/main/java/de/ozgcloud/user/sync/SyncService.java
@@ -25,15 +25,14 @@ package de.ozgcloud.user.sync;
 
 import java.util.function.Predicate;
 
-import jakarta.enterprise.context.ApplicationScoped;
-import jakarta.inject.Inject;
-
 import org.apache.commons.collections4.CollectionUtils;
 
 import de.ozgcloud.user.User;
 import de.ozgcloud.user.UserService;
 import de.ozgcloud.user.common.logging.OzgCloudLogging;
 import de.ozgcloud.user.keycloak.KeycloakUserRemoteService;
+import jakarta.enterprise.context.ApplicationScoped;
+import jakarta.inject.Inject;
 
 @ApplicationScoped
 @OzgCloudLogging
@@ -49,7 +48,7 @@ class SyncService {
 	void sync(long syncTimestamp) {
 		keycloakService.getAllUsers()
 		  .filter(HAS_ANY_ROLE)
-		  .forEach(user -> userService.saveAndSync(addLastSyncTimestamp(user, syncTimestamp)));
+		  .forEach(user -> userService.save(addLastSyncTimestamp(user, syncTimestamp)));
 
 		userService.markUnsyncedUsersAsDeleted(syncTimestamp);
 	}
diff --git a/user-manager-server/src/test/java/de/ozgcloud/user/UserServiceTest.java b/user-manager-server/src/test/java/de/ozgcloud/user/UserServiceTest.java
index ee6c7fc84091ad2fbb53b764158c994ec80050ed..9a24a9dbf8018b41f388585528396170457ce77d 100644
--- a/user-manager-server/src/test/java/de/ozgcloud/user/UserServiceTest.java
+++ b/user-manager-server/src/test/java/de/ozgcloud/user/UserServiceTest.java
@@ -182,7 +182,7 @@ class UserServiceTest {
 		void shouldCallKeycloakRemoteService() {
 			var user = UserTestFactory.create();
 			when(keycloakRemoteService.findUserById(anyString())).thenReturn(Optional.of(user));
-			when(service.saveAndSync(user)).thenReturn(user);
+			when(service.save(user)).thenReturn(user);
 
 			service.findByExternalId(EXTERNAL_ID);
 
@@ -190,14 +190,14 @@ class UserServiceTest {
 		}
 
 		@Test
-		void shouldCallSaveAndSync() {
+		void shouldCallSave() {
 			var user = UserTestFactory.create();
 			when(keycloakRemoteService.findUserById(anyString())).thenReturn(Optional.of(user));
-			doReturn(user).when(service).saveAndSync(user);
+			doReturn(user).when(service).save(user);
 
 			service.findByExternalId(EXTERNAL_ID);
 
-			verify(service).saveAndSync(user);
+			verify(service).save(user);
 		}
 
 		@Test
@@ -206,28 +206,6 @@ class UserServiceTest {
 		}
 	}
 
-	@Nested
-	class TestSaveAndSync {
-
-		@Test
-		void shouldSaveUser() {
-			var user = UserTestFactory.create();
-
-			service.saveAndSync(user);
-
-			verify(service).save(user);
-		}
-
-		@Test
-		void shouldSyncUser() {
-			var user = UserTestFactory.create();
-
-			var saved = service.saveAndSync(user);
-
-			verify(keycloakRemoteService, timeout(1000)).updateOzgCloudUserId(saved);
-		}
-	}
-
 	@Nested
 	class TestFindActiveUsers {
 
diff --git a/user-manager-server/src/test/java/de/ozgcloud/user/keycloak/KeycloakApiServiceTest.java b/user-manager-server/src/test/java/de/ozgcloud/user/keycloak/KeycloakApiServiceTest.java
index dd502aafc722e39fa631ecb4d5d2cf148d66bfb7..bbd5196f6965938b2d3c2abb0e7a8d7652a92948 100644
--- a/user-manager-server/src/test/java/de/ozgcloud/user/keycloak/KeycloakApiServiceTest.java
+++ b/user-manager-server/src/test/java/de/ozgcloud/user/keycloak/KeycloakApiServiceTest.java
@@ -31,11 +31,6 @@ import static org.mockito.Mockito.*;
 import java.util.function.Supplier;
 import java.util.stream.Stream;
 
-import jakarta.ws.rs.BadRequestException;
-import jakarta.ws.rs.ClientErrorException;
-import jakarta.ws.rs.NotFoundException;
-import jakarta.ws.rs.ProcessingException;
-
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.DisplayName;
 import org.junit.jupiter.api.Nested;
@@ -44,8 +39,6 @@ import org.keycloak.admin.client.resource.RealmResource;
 import org.keycloak.admin.client.resource.UserResource;
 import org.keycloak.admin.client.resource.UsersResource;
 import org.keycloak.representations.idm.UserRepresentation;
-import org.mockito.ArgumentCaptor;
-import org.mockito.Captor;
 import org.mockito.InjectMocks;
 import org.mockito.Mock;
 import org.mockito.Spy;
@@ -56,6 +49,9 @@ import de.ozgcloud.user.UserRepresentationTestFactory;
 import de.ozgcloud.user.UserResourceMapper;
 import de.ozgcloud.user.UserTestFactory;
 import de.ozgcloud.user.common.errorhandling.KeycloakUnavailableException;
+import jakarta.ws.rs.ClientErrorException;
+import jakarta.ws.rs.NotFoundException;
+import jakarta.ws.rs.ProcessingException;
 
 class KeycloakApiServiceTest {
 
@@ -191,123 +187,4 @@ class KeycloakApiServiceTest {
 			return service.handlingKeycloakException(runnable);
 		}
 	}
-
-	@DisplayName("Set user attribute")
-	@Nested
-	class TestUpdateUserAttribute {
-
-		private static final String KEYCLOAK_USER_ID = "1ae2-b123";
-		private static final String ATTRIBUTE_NAME_USER_ID = "userId";
-		private static final String ATTRIBUTE_VALUE_USER_ID = "10";
-		private static final String NEW_USER_ID = "1010";
-
-		@Mock
-		private UsersResource usersResource;
-		@Mock
-		private UserResource userResource;
-		@Mock
-		private UserRepresentation userRepresentation;
-
-		@BeforeEach
-		void beforeEach() {
-			when(realmResource.users()).thenReturn(usersResource);
-			when(usersResource.get(KEYCLOAK_USER_ID)).thenReturn(userResource);
-			when(userResource.toRepresentation()).thenReturn(userRepresentation);
-			when(userRepresentation.firstAttribute(ATTRIBUTE_NAME_USER_ID)).thenReturn(ATTRIBUTE_VALUE_USER_ID);
-		}
-
-		@Test
-		void shouldGetUsersResource() {
-			service.updateAttribute(KEYCLOAK_USER_ID, ATTRIBUTE_NAME_USER_ID, ATTRIBUTE_VALUE_USER_ID);
-
-			verify(realmResource).users();
-		}
-
-		@Test
-		void shouldGetUserResource() {
-			service.updateAttribute(KEYCLOAK_USER_ID, ATTRIBUTE_NAME_USER_ID, ATTRIBUTE_VALUE_USER_ID);
-
-			verify(usersResource).get(KEYCLOAK_USER_ID);
-		}
-
-		@Test
-		void shouldGetUserRepresentation() {
-			service.updateAttribute(KEYCLOAK_USER_ID, ATTRIBUTE_NAME_USER_ID, ATTRIBUTE_VALUE_USER_ID);
-
-			verify(userResource).toRepresentation();
-		}
-
-		@Test
-		void shouldUpdateAttributeIfNotExist() {
-			when(userRepresentation.firstAttribute(ATTRIBUTE_NAME_USER_ID)).thenReturn(null);
-
-			service.updateAttribute(KEYCLOAK_USER_ID, ATTRIBUTE_NAME_USER_ID, ATTRIBUTE_VALUE_USER_ID);
-
-			verify(userRepresentation).singleAttribute(ATTRIBUTE_NAME_USER_ID, ATTRIBUTE_VALUE_USER_ID);
-			verify(service).tryUpdateUserResource(userResource, userRepresentation, ATTRIBUTE_NAME_USER_ID);
-		}
-
-		@Test
-		void shouldUpdateAttributeIfExistsWithDifferentValue() {
-			when(userRepresentation.firstAttribute(ATTRIBUTE_NAME_USER_ID)).thenReturn(NEW_USER_ID);
-
-			service.updateAttribute(KEYCLOAK_USER_ID, ATTRIBUTE_NAME_USER_ID, ATTRIBUTE_VALUE_USER_ID);
-
-			verify(userRepresentation).singleAttribute(ATTRIBUTE_NAME_USER_ID, ATTRIBUTE_VALUE_USER_ID);
-			verify(service).tryUpdateUserResource(userResource, userRepresentation, ATTRIBUTE_NAME_USER_ID);
-		}
-
-		@Test
-		void shouldUpdateAttributeIfNewOneGiven() {
-			service.updateAttribute(KEYCLOAK_USER_ID, ATTRIBUTE_NAME_USER_ID, NEW_USER_ID);
-
-			verify(userRepresentation).singleAttribute(ATTRIBUTE_NAME_USER_ID, NEW_USER_ID);
-			verify(service).tryUpdateUserResource(userResource, userRepresentation, ATTRIBUTE_NAME_USER_ID);
-		}
-
-		@Test
-		void shouldNotSetAttributeIfExistsWithSameValue() {
-			service.updateAttribute(KEYCLOAK_USER_ID, ATTRIBUTE_NAME_USER_ID, ATTRIBUTE_VALUE_USER_ID);
-
-			verify(userRepresentation, never()).singleAttribute(ATTRIBUTE_NAME_USER_ID, ATTRIBUTE_VALUE_USER_ID);
-			verify(service, never()).tryUpdateUserResource(userResource, userRepresentation, ATTRIBUTE_NAME_USER_ID);
-		}
-
-		@Test
-		void shouldCatchBadRequestException() {
-			when(userRepresentation.firstAttribute(ATTRIBUTE_NAME_USER_ID)).thenReturn(NEW_USER_ID);
-			doThrow(new BadRequestException("error message")).when(userResource).update(any(UserRepresentation.class));
-
-			assertThatCode(
-					() -> service.updateAttribute(KEYCLOAK_USER_ID, ATTRIBUTE_NAME_USER_ID, ATTRIBUTE_VALUE_USER_ID)).doesNotThrowAnyException();
-		}
-	}
-
-	@Nested
-	class TestTryUpdateUserResource {
-
-		private static final String ATTRIBUTE_NAME_USER_ID = "userId";
-
-		@Captor
-		private ArgumentCaptor<UserRepresentation> userRepresentationArgumentCaptor;
-
-		@Mock
-		private UserRepresentation userRepresentation;
-
-		@Test
-		void shouldUpdateUserResource() {
-			service.tryUpdateUserResource(userResource, userRepresentation, ATTRIBUTE_NAME_USER_ID);
-
-			verify(userResource).update(any(UserRepresentation.class));
-		}
-
-		@Test
-		void shouldCreateOlderUserRepresentation() {
-			service.tryUpdateUserResource(userResource, UserRepresentationTestFactory.create(), ATTRIBUTE_NAME_USER_ID);
-
-			verify(userResource).update(userRepresentationArgumentCaptor.capture());
-			assertThat(userRepresentationArgumentCaptor.getValue()).usingRecursiveComparison().isEqualTo(UserRepresentationTestFactory.create());
-		}
-
-	}
 }
\ No newline at end of file
diff --git a/user-manager-server/src/test/java/de/ozgcloud/user/keycloak/KeycloakUserRemoteServiceITCase.java b/user-manager-server/src/test/java/de/ozgcloud/user/keycloak/KeycloakUserRemoteServiceITCase.java
deleted file mode 100644
index a1c3fc8a3c1e428e489bb8627ae6debe8df3045e..0000000000000000000000000000000000000000
--- a/user-manager-server/src/test/java/de/ozgcloud/user/keycloak/KeycloakUserRemoteServiceITCase.java
+++ /dev/null
@@ -1,119 +0,0 @@
-/*
- * Copyright (C) 2023 Das Land Schleswig-Holstein vertreten durch den
- * Ministerpräsidenten des Landes Schleswig-Holstein
- * Staatskanzlei
- * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung
- *
- * Lizenziert unter der EUPL, Version 1.2 oder - sobald
- * diese von der Europäischen Kommission genehmigt wurden -
- * Folgeversionen der EUPL ("Lizenz");
- * Sie dürfen dieses Werk ausschließlich gemäß
- * dieser Lizenz nutzen.
- * Eine Kopie der Lizenz finden Sie hier:
- *
- * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
- *
- * Sofern nicht durch anwendbare Rechtsvorschriften
- * gefordert oder in schriftlicher Form vereinbart, wird
- * die unter der Lizenz verbreitete Software "so wie sie
- * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN -
- * ausdrücklich oder stillschweigend - verbreitet.
- * Die sprachspezifischen Genehmigungen und Beschränkungen
- * unter der Lizenz sind dem Lizenztext zu entnehmen.
- */
-package de.ozgcloud.user.keycloak;
-
-import static de.ozgcloud.user.keycloak.KeycloakUserRemoteService.*;
-import static org.assertj.core.api.Assertions.*;
-import static org.mockito.Mockito.*;
-
-import java.util.List;
-
-import jakarta.inject.Inject;
-
-import org.bson.types.ObjectId;
-import org.junit.jupiter.api.DisplayName;
-import org.junit.jupiter.api.MethodOrderer;
-import org.junit.jupiter.api.Nested;
-import org.junit.jupiter.api.Order;
-import org.junit.jupiter.api.Test;
-import org.junit.jupiter.api.TestMethodOrder;
-import org.keycloak.admin.client.resource.RealmResource;
-
-import de.ozgcloud.user.User;
-import de.ozgcloud.user.UserTestFactory;
-import io.quarkus.test.junit.QuarkusTest;
-import io.quarkus.test.junit.TestProfile;
-import io.quarkus.test.junit.mockito.InjectSpy;
-
-@QuarkusTest
-@TestProfile(KeycloakTestProfile.class)
-class KeycloakUserRemoteServiceITCase {
-
-	@InjectSpy
-	KeycloakUserRemoteService service;
-	@InjectSpy
-	KeycloakApiService apiService;
-	@Inject
-	RealmResource realmResource;
-
-	@Test
-	void shouldCallGetAllUsers() {
-		service.getAllUsers();
-
-		verify(apiService).findAllUser();
-	}
-
-	@Nested
-	@TestMethodOrder(MethodOrderer.OrderAnnotation.class)
-	class TestUpdateOzgCloudUserId {
-
-		private static final String KEYCLOAK_USER_ID = "90748555-7894-4854-8292-1f6106826962";
-
-		@DisplayName("Set ozgCloudUserId attribute in keycloak on new user")
-		@Test
-		@Order(1)
-		void shouldSetOzgCloudUserId() {
-			User user = prepareUser();
-			service.updateOzgCloudUserId(user);
-
-			var ozgCloudUserId = getOzgCloudUserIdFromKeycloak();
-
-			assertThat(user.getId().toString()).isEqualTo(ozgCloudUserId);
-		}
-
-		@DisplayName("Update ozgCloudUserId attribute in keycloak on existing user")
-		@Test
-		@Order(2)
-		void shouldUpdateOzgCloudUserId() {
-			var oldCloudUserId = getOzgCloudUserIdFromKeycloak();
-			service.updateOzgCloudUserId(prepareUser());
-
-			var newCloudUserId = getOzgCloudUserIdFromKeycloak();
-
-			assertThat(oldCloudUserId).isNotEqualTo(newCloudUserId);
-		}
-
-		private User prepareUser() {
-			return UserTestFactory.createBuilder()
-			  .id(new ObjectId())
-			  .externalId(KEYCLOAK_USER_ID)
-			  .keycloakUserId(KEYCLOAK_USER_ID)
-			  .email("dorothea@test.local")
-			  .firstName("Dorothea")
-			  .lastName("Doe")
-			  .fullName("Dorothea Doe")
-			  .fullNameReversed("Doe Dorothea")
-			  .username("dorothea")
-			  .organisationsEinheitIds(List.of("248240886", "9030229", "10363455"))
-			  .build();
-		}
-
-		private String getOzgCloudUserIdFromKeycloak() {
-			var userResource = realmResource.users().get(KEYCLOAK_USER_ID);
-			return userResource.toRepresentation().getAttributes().get(ATTRIBUTE_NAME_OZG_CLOUD_USER_ID).getFirst();
-		}
-
-	}
-
-}
\ No newline at end of file
diff --git a/user-manager-server/src/test/java/de/ozgcloud/user/keycloak/KeycloakUserRemoteServiceTest.java b/user-manager-server/src/test/java/de/ozgcloud/user/keycloak/KeycloakUserRemoteServiceTest.java
index d52a814ea299242c879cbee10c396fe2b36da901..bea58008d452f1a9107e1a19b8a1ae86e59e8f34 100644
--- a/user-manager-server/src/test/java/de/ozgcloud/user/keycloak/KeycloakUserRemoteServiceTest.java
+++ b/user-manager-server/src/test/java/de/ozgcloud/user/keycloak/KeycloakUserRemoteServiceTest.java
@@ -54,21 +54,6 @@ class KeycloakUserRemoteServiceTest {
 		}
 	}
 
-	@DisplayName("Update ozgCloudUserId attribute in keycloak")
-	@Nested
-	class TestUpdateOzgCloudUserId {
-
-		@Test
-		void shouldCallApiService() {
-			remoteService.updateOzgCloudUserId(UserTestFactory.create());
-
-			verify(apiService).updateAttribute(
-					UserTestFactory.KEYCLOAK_USER_ID,
-					KeycloakUserRemoteService.ATTRIBUTE_NAME_OZG_CLOUD_USER_ID,
-					UserTestFactory.ID.toString());
-		}
-	}
-
 	@Nested
 	@DisplayName("Get user by id")
 	class TestGetUser {
diff --git a/user-manager-server/src/test/java/de/ozgcloud/user/sync/SyncServiceTest.java b/user-manager-server/src/test/java/de/ozgcloud/user/sync/SyncServiceTest.java
index ef53ee7ba5cf3849418dd2d1c7967cbf533621ba..8cb3273d0ac4f88ec08aeed75469ae41978c9d89 100644
--- a/user-manager-server/src/test/java/de/ozgcloud/user/sync/SyncServiceTest.java
+++ b/user-manager-server/src/test/java/de/ozgcloud/user/sync/SyncServiceTest.java
@@ -76,7 +76,7 @@ class SyncServiceTest {
 		}
 
 		@Test
-		void shouldCallSaveAndSync() {
+		void shouldCallSave() {
 			var syncTimestamp = Instant.now().toEpochMilli();
 			var updatedUser = UserTestFactory.createBuilder().lastSyncTimestamp(syncTimestamp).build();
 			when(keycloakService.getAllUsers()).thenReturn(Stream.of(user, user));
@@ -84,19 +84,19 @@ class SyncServiceTest {
 
 			service.sync(syncTimestamp);
 
-			verify(userService, times(2)).saveAndSync(updatedUser);
+			verify(userService, times(2)).save(updatedUser);
 		}
 
 		@Test
 		void shouldAddLasSyncToUser() {
 			when(keycloakService.getAllUsers()).thenReturn(Stream.of(user));
-			when(userService.saveAndSync(any())).thenReturn(user);
+			when(userService.save(any())).thenReturn(user);
 
 			var timestamp = Instant.now().toEpochMilli();
 
 			service.sync(timestamp);
 
-			verify(userService).saveAndSync(userCaptor.capture());
+			verify(userService).save(userCaptor.capture());
 			assertThat(userCaptor.getValue().getLastSyncTimestamp()).isEqualTo(timestamp);
 		}
 
diff --git a/user-manager-server/src/test/resources/keycloak/realm-export.json b/user-manager-server/src/test/resources/keycloak/realm-export.json
index 570206097ccd6e220f94da720c8d35cce979873f..bbe911983d224d5d3a20df1a7c76f4c28d32946d 100755
--- a/user-manager-server/src/test/resources/keycloak/realm-export.json
+++ b/user-manager-server/src/test/resources/keycloak/realm-export.json
@@ -811,22 +811,6 @@
             "jsonType.label": "int"
           }
         },
-        {
-          "id": "e068b24d-9731-4b81-a49a-8107e3053daa",
-          "name": "ozgCloudUserId",
-          "protocol": "openid-connect",
-          "protocolMapper": "oidc-usermodel-attribute-mapper",
-          "consentRequired": false,
-          "config": {
-            "aggregate.attrs": "false",
-            "multivalued": "false",
-            "userinfo.token.claim": "true",
-            "user.attribute": "ozgCloudUserId",
-            "id.token.claim": "true",
-            "access.token.claim": "true",
-            "claim.name": "ozgCloudUserId"
-          }
-        },
         {
           "id": "9ed930aa-7dfd-441b-b4c1-829c8abc060e",
           "name": "organisationseinheitIdMapper",
@@ -1003,22 +987,6 @@
             "claim.name": "resource_access.${client_id}.roles",
             "multivalued": "true"
           }
-        },
-        {
-          "id": "14117f93-bf7a-4c20-a8cf-b46d96598c57",
-          "name": "ozgCloudUserId",
-          "protocol": "openid-connect",
-          "protocolMapper": "oidc-usermodel-attribute-mapper",
-          "consentRequired": false,
-          "config": {
-            "aggregate.attrs": "false",
-            "multivalued": "false",
-            "userinfo.token.claim": "true",
-            "user.attribute": "ozgCloudUserId",
-            "id.token.claim": "true",
-            "access.token.claim": "true",
-            "claim.name": "ozgCloudUserId"
-          }
         }
       ],
       "defaultClientScopes": [