You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Don't try to focus the nonexistent Next button when holding Shift on a Hello TPM (PIN/biometrics) prompt. Initialize logging faster using reflection instead of stacktraces.
LOGGER.Trace("Found authenticator choices after {0:N3} sec",authenticatorChoicesStopwatch.Elapsed.TotalSeconds);
56
56
}catch(Exceptione)when(eis not OutOfMemoryException){
57
-
LOGGER.Error(e,"Could not find authenticator choices after retrying for {0:N3} sec due to the following exception. Giving up and not automatically selecting Security Key.",
57
+
LOGGER.Warn(e,"Could not find authenticator choices after retrying for {0:N3} sec due to the following exception. Giving up and not automatically selecting Security Key.",
LOGGER.Info("Use another device selected after {0:N3} sec",overallStopwatch.Elapsed.TotalSeconds);
81
-
return;
82
-
}else{
83
-
LOGGER.Info("USB security key selected");
84
-
}
79
+
LOGGER.Info("{choice} selected after {0:N3} sec",isLocalWindowsHelloTpmPrompt?"Use another device":"USB security key",overallStopwatch.Elapsed.TotalSeconds);
Copy file name to clipboardExpand all lines: Readme.md
+10-1Lines changed: 10 additions & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -39,6 +39,7 @@ This is a background program that runs headlessly in your Windows user session.
39
39
Internally, this program uses [Microsoft UI Automation](https://learn.microsoft.com/en-us/windows/win32/winauto/uiauto-uiautomationoverview) to read and interact with the dialog boxes.
40
40
41
41
### Overriding the automatic next behavior
42
+
42
43
By default, this program does not interfere with local TPM passkey prompts (like requesting your Windows Hello PIN or biometrics). It also does not automatically submit FIDO prompts that contain additional options besides a USB security key and pairing a new Bluetooth smartphone, such as the cases when you already have a paired phone, or you previously declined a Windows Hello factor like a PIN but want to try a PIN again from the authenticator choice dialog. However, you may override this behavior if you wish and force it to **_always_** choose the USB security key in all cases, even if there are other valid options like Windows Hello PIN/biometrics, by passing the command-line argument `--skip-all-non-security-key-options` when starting this program (see [Installation](#installation) for the recommended autostart registry paths if you want to change it there).
43
44
44
45
If a paired phone option appears in the dialog box and you want to remove it, [you can edit the registry to unpair an existing phone](https://github.com/Aldaviva/AuthenticatorChooser/wiki/Unpairing-Bluetooth-smartphone). This is useful if your old phone [bricked itself](https://en.wikipedia.org/wiki/Pixel_5a#Known_issues), or you just upgraded to a new phone.
@@ -83,6 +84,7 @@ Even if this program doesn't click the Next button (because an extra choice was
83
84
- Use `regedit.exe` interactively to go to the `HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run` key, and then add a new String value with the Name `AuthenticatorChooser` and the Value `"C:\Program Files\AuthenticatorChooser\AuthenticatorChooser.exe"`
84
85
85
86
## Demo
87
+
86
88
To test with a sample FIDO authentication prompt, visit [WebAuthn.io](https://webauthn.io) and click the **Authenticate** button.
87
89
88
90
## Building
@@ -98,6 +100,10 @@ If you want to build this application yourself instead of downloading precompile
98
100
```ps1
99
101
cd .\AuthenticatorChooser\AuthenticatorChooser\
100
102
```
103
+
1. Choose one of the [version tags](https://github.com/Aldaviva/AuthenticatorChooser/tags) to build, or skip this step to use the latest commit.
104
+
```ps1
105
+
git checkout 0.2.0
106
+
```
101
107
1. Build the program.
102
108
```ps1
103
109
dotnet publish -p:PublishSingleFile=true
@@ -106,4 +112,7 @@ If you want to build this application yourself instead of downloading precompile
106
112
The program will be compiled to the following path, assuming your CPU architecture is x64.
You can also use an IDE like [Visual Studio](https://visualstudio.microsoft.com/vs/) Community 2022 instead of the command line.
118
+
- Visual Studio Publishing Profiles have been broken for years unless certain other workloads (like ASP.NET Web Development) are installed, so if you can't publish from VS you'll have to use the `dotnet publish` command above.
0 commit comments