diff --git a/Network Share Mounter/helper/ActivityController.swift b/Network Share Mounter/helper/ActivityController.swift
index 1d256efe45bb6f6ea8cf52d99b62ede8c6e1bfc0..978c28781c7ddfadef19817dcf515582ba497cbe 100644
--- a/Network Share Mounter/helper/ActivityController.swift	
+++ b/Network Share Mounter/helper/ActivityController.swift	
@@ -306,7 +306,7 @@ class ActivityController {
         }
     }
     
-    // MARK: - Helpers for utilizing the cliTaskAsync method
+    // MARK: - Helpers for utilizing the cliTask method
     
     /// Executes a CLI command asynchronously with error handling
     /// 
@@ -315,7 +315,7 @@ class ActivityController {
     /// - Throws: Any errors that occur during command execution
     private func executeCommand(_ command: String) async throws -> String {
         do {
-            return try await cliTaskAsync(command)
+            return try await cliTask(command)
         } catch {
             Logger.activityController.error("Command execution failed: \(command), error: \(error.localizedDescription)")
             throw error
diff --git a/Network Share Mounter/helper/AutomaticSignIn.swift b/Network Share Mounter/helper/AutomaticSignIn.swift
index 0b393ef94947362a00b1680323f44cf75df2561a..3c9efe5a3f921a4ac99aecb04f85ec49e17a9560 100644
--- a/Network Share Mounter/helper/AutomaticSignIn.swift	
+++ b/Network Share Mounter/helper/AutomaticSignIn.swift	
@@ -98,7 +98,7 @@ actor AutomaticSignIn {
         // Standard-Principal wiederherstellen
         if let defPrinc = defaultPrinc {
             do {
-                let output = try await cliTaskAsync("kswitch -p \(defPrinc)")
+                let output = try await cliTask("kswitch -p \(defPrinc)")
                 Logger.automaticSignIn.debug("kswitch Ausgabe: \(output)")
             } catch {
                 Logger.automaticSignIn.error("Fehler beim Umschalten auf Standard-Principal: \(error.localizedDescription)")
@@ -229,7 +229,7 @@ actor AutomaticSignInWorker: dogeADUserSessionDelegate {
     func getUserInfo() async {
         do {
             // Zum Benutzer-Principal wechseln
-            let output = try await cliTaskAsync("kswitch -p \(session.userPrincipal)")
+            let output = try await cliTask("kswitch -p \(session.userPrincipal)")
             Logger.automaticSignIn.debug("kswitch Ausgabe: \(output)")
             
             // Benutzerdaten abrufen
@@ -248,7 +248,7 @@ actor AutomaticSignInWorker: dogeADUserSessionDelegate {
         
         do {
             // Zum authentifizierten Benutzer wechseln
-            let output = try await cliTaskAsync("kswitch -p \(session.userPrincipal)")
+            let output = try await cliTask("kswitch -p \(session.userPrincipal)")
             Logger.automaticSignIn.debug("kswitch Ausgabe: \(output)")
             
             // Erfolg mitteilen
diff --git a/Network Share Mounter/helper/Logger.swift b/Network Share Mounter/helper/Logger.swift
index f6d0b5270ff252008accf5e7c7d659ed0c1b8452..a21b7b16fb612532168d8253b20104fc2f1cfc0f 100644
--- a/Network Share Mounter/helper/Logger.swift	
+++ b/Network Share Mounter/helper/Logger.swift	
@@ -29,4 +29,5 @@ extension Logger {
     static let authUI = Logger(subsystem: subsystem, category: "authUI")
     static let FAU = Logger(subsystem: subsystem, category: "FAU")
     static let preferences = Logger(subsystem: subsystem, category: "preferences")
+    static let login = Logger(subsystem: subsystem, category: "login")
 }
diff --git a/Network Share Mounter/helper/NSTaskWrapper.swift b/Network Share Mounter/helper/NSTaskWrapper.swift
index 0d46b0a7431321167e67890bc78dcbd8b07ce40d..80a907faadc2b357e5f27d1b2dcf497ba406712d 100644
--- a/Network Share Mounter/helper/NSTaskWrapper.swift	
+++ b/Network Share Mounter/helper/NSTaskWrapper.swift	
@@ -23,7 +23,7 @@ private actor ShellCommandQueue {
     /// - Throws: Any error that occurs during execution
     func execute<T>(_ operation: () async throws -> T) async throws -> T {
         while isExecuting {
-            try await Task.sleep(for: .milliseconds(100))
+            try await Task.sleep(nanoseconds: 100_000_000) // 100ms in Nanosekunden
         }
         isExecuting = true
         defer { isExecuting = false }
diff --git a/Network Share Mounter/preferences/FAU.swift b/Network Share Mounter/preferences/FAU.swift
index d945262661d54bdbc994ffb0a2a622270c7a9254..0cad25aec53500cbb01a9bd61416ead3baa340fe 100644
--- a/Network Share Mounter/preferences/FAU.swift	
+++ b/Network Share Mounter/preferences/FAU.swift	
@@ -61,10 +61,10 @@ class Migrator: dogeADUserSessionDelegate {
         }
         
         do {
-            let result = try await cliTaskAsync("kswitch -p \(principal)")
-            Logger.FAU.debug("Successfully switched Kerberos principal: \(result)")
+            let result = try await cliTask("kswitch -p \(principal)")
+            Logger.login.debug("Principal switch result: \(result)")
         } catch {
-            Logger.FAU.error("kswitch -p failed: \(error.localizedDescription)")
+            Logger.login.error("Failed to switch principal: \(error.localizedDescription)")
             // Continue despite error, as authentication still succeeded
         }
         
diff --git a/Network Share Mounter/view/KrbAuthViewController.swift b/Network Share Mounter/view/KrbAuthViewController.swift
index 1aa4c156c859e656a27e1a069b5c1afa90aa586f..be85ea0b8e5caaefd5b18326f86d75f75e3eb144 100644
--- a/Network Share Mounter/view/KrbAuthViewController.swift	
+++ b/Network Share Mounter/view/KrbAuthViewController.swift	
@@ -358,10 +358,20 @@ class KrbAuthViewController: NSViewController, AccountUpdate, NSTextFieldDelegat
 extension KrbAuthViewController: dogeADUserSessionDelegate {
     func dogeADAuthenticationSucceded() async {
         Logger.authUI.debug("Auth succeeded")
-        _ = await cliTask("kswitch -p \(self.session?.userPrincipal ?? "")")
         
-        await session?.userInfo()
-        await handleSuccessfulAuthentication()
+        do {
+            // Wechsel zum Benutzer-Principal
+            let output = try await cliTask("kswitch -p \(self.session?.userPrincipal ?? "")")
+            Logger.authUI.debug("kswitch Ausgabe: \(output)")
+            
+            await session?.userInfo()
+            await handleSuccessfulAuthentication()
+        } catch {
+            Logger.authUI.warning("Fehler beim Wechseln des Kerberos-Principal: \(error.localizedDescription)")
+            // Trotzdem mit Authentifizierung fortfahren, da der primäre Auth-Prozess erfolgreich war
+            await session?.userInfo()
+            await handleSuccessfulAuthentication()
+        }
     }
     
     func dogeADAuthenticationFailed(error: dogeADSessionError, description: String) async {
diff --git a/networkShareMounter.xcodeproj/project.pbxproj b/networkShareMounter.xcodeproj/project.pbxproj
index 9b4fa5fe6e4f488f74c0b844248fad1dce2296e7..ec3f74dd47fa698d123eadfe2e0f9a339a8f89b8 100644
--- a/networkShareMounter.xcodeproj/project.pbxproj
+++ b/networkShareMounter.xcodeproj/project.pbxproj
@@ -647,7 +647,7 @@
 				CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
 				CODE_SIGN_IDENTITY = "Apple Development";
 				CODE_SIGN_STYLE = Automatic;
-				CURRENT_PROJECT_VERSION = 200;
+				CURRENT_PROJECT_VERSION = 201;
 				DEVELOPMENT_TEAM = C8F68RFW4L;
 				ENABLE_USER_SCRIPT_SANDBOXING = YES;
 				GCC_C_LANGUAGE_STANDARD = gnu17;
@@ -677,7 +677,7 @@
 				CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
 				CODE_SIGN_IDENTITY = "Apple Development";
 				CODE_SIGN_STYLE = Automatic;
-				CURRENT_PROJECT_VERSION = 200;
+				CURRENT_PROJECT_VERSION = 201;
 				DEVELOPMENT_TEAM = C8F68RFW4L;
 				ENABLE_USER_SCRIPT_SANDBOXING = YES;
 				GCC_C_LANGUAGE_STANDARD = gnu17;