I don't work for Microsoft, but I reverse engineered what mstsc does for "redirectwebauthn". The code logic looks like this:
if (CTscSettings::GetWebAuthnRedirection()) {
WebAuthnRedirConfig::GetWebAuthnRedirDynVCPluginPath()
IMsTscAdvancedSettings::PluginDlls()
}
There's a webauthn plugin registered - see more info here https://learn.microsoft.com/en-us/windows/win32/termserv/dvc-plug-in-registration
and here https://learn.microsoft.com/en-us/windows/win32/termserv/imstscadvancedsettings-plugindlls
You can obtain the webauthn plugin dll path this way:
Get-ItemPropertyValue -Path "HKLM:\SOFTWARE\Microsoft\Terminal Server Client\Default\AddIns\webauthn" -Name "Name"
The default value is "C:\WINDOWS\System32\webauthn.dll"
Beyond this, there is a registry key to disable WebAuthn redirection globally:
Set-ItemPropertyValue -Path "HKLM:\SOFTWARE\Microsoft\Terminal Server Client" -Name "DisableWebAuthnRedirection" -Value 1
Get-ItemPropertyValue -Path "HKLM:\SOFTWARE\Microsoft\Terminal Server Client" -Name "DisableWebAuthnRedirection"
I hope this helps. As for enablerdsaadauth:i:1 I have done a lot of Azure Virtual Desktop reversing, and I really doubt it's possible to make it work outside of AVD. You would also need to use rdclientax.dll instead of mstscax.dll, but even then, I couldn't manage to get an AVD connection done through the RDP ActiveX interface.
https://blog.devolutions.net/2022/08/extending-the-microsoft-rdp-client-with-api-hooking/
Please let me know if you do make some progress on that front though!
Cheers