diff --git a/web_src/js/features/user-auth-webauthn.ts b/web_src/js/features/user-auth-webauthn.ts index b9ab2e2088f00..e6c37581e01c8 100644 --- a/web_src/js/features/user-auth-webauthn.ts +++ b/web_src/js/features/user-auth-webauthn.ts @@ -1,5 +1,5 @@ import {encodeURLEncodedBase64, decodeURLEncodedBase64} from '../utils.ts'; -import {showElem} from '../utils/dom.ts'; +import {hideElem, showElem} from '../utils/dom.ts'; import {GET, POST} from '../modules/fetch.ts'; const {appSubUrl} = window.config; @@ -11,6 +11,15 @@ export async function initUserAuthWebAuthn() { return; } + if (window.location.protocol === 'http:') { + // webauthn is only supported on secure contexts + const isLocalhost = ['localhost', '127.0.0.1'].includes(window.location.hostname); + if (!isLocalhost) { + hideElem(elSignInPasskeyBtn); + return; + } + } + if (!detectWebAuthnSupport()) { return; }