diff --git a/lib/identity-search/identity-search-context.js b/lib/identity-search/identity-search-context.js
--- a/lib/identity-search/identity-search-context.js
+++ b/lib/identity-search/identity-search-context.js
@@ -109,13 +109,14 @@
 
     if (
       (!identitySearchAuthMessage || identitySearchAuthMessageChanged) &&
-      isSocketActive
+      isSocketActive &&
+      socket.current
     ) {
       socket.current?.close();
       return;
     }
 
-    if (connected || !identitySearchAuthMessage) {
+    if (connected || !identitySearchAuthMessage || socket.current) {
       return;
     }
 
@@ -127,6 +128,7 @@
 
     identitySearchSocket.onclose = () => {
       setConnected(false);
+      socket.current = null;
     };
 
     identitySearchSocket.onerror = e => {