features.h 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. // Copyright 2018 The Chromium Authors. All rights reserved.
  2. // Use of this source code is governed by a BSD-style license that can be
  3. // found in the LICENSE file.
  4. #ifndef DEVICE_FIDO_FEATURES_H_
  5. #define DEVICE_FIDO_FEATURES_H_
  6. #include "base/component_export.h"
  7. #include "base/feature_list.h"
  8. #include "base/metrics/field_trial_params.h"
  9. #include "build/build_config.h"
  10. #include "build/chromeos_buildflags.h"
  11. namespace url {
  12. class Origin;
  13. }
  14. namespace device {
  15. #if BUILDFLAG(IS_WIN)
  16. // Controls whether on Windows, U2F/CTAP2 requests are forwarded to the
  17. // native WebAuthentication API, where available.
  18. COMPONENT_EXPORT(DEVICE_FIDO)
  19. extern const base::Feature kWebAuthUseNativeWinApi;
  20. #endif // BUILDFLAG(IS_WIN)
  21. // Support the caBLE extension in assertion requests from any origin.
  22. COMPONENT_EXPORT(DEVICE_FIDO)
  23. extern const base::Feature kWebAuthCableExtensionAnywhere;
  24. #if BUILDFLAG(IS_CHROMEOS)
  25. // Enable a ChromeOS platform authenticator
  26. COMPONENT_EXPORT(DEVICE_FIDO)
  27. extern const base::Feature kWebAuthCrosPlatformAuthenticator;
  28. #endif // BUILDFLAG(IS_CHROMEOS)
  29. COMPONENT_EXPORT(DEVICE_FIDO)
  30. extern const base::Feature kU2fPermissionPrompt;
  31. // Feature flag for the Google-internal
  32. // `WebAuthenticationAllowGoogleCorpRemoteRequestProxying` enterprise policy.
  33. COMPONENT_EXPORT(DEVICE_FIDO)
  34. extern const base::Feature kWebAuthnGoogleCorpRemoteDesktopClientPrivilege;
  35. // Enable some experimental UI changes
  36. COMPONENT_EXPORT(DEVICE_FIDO)
  37. extern const base::Feature kWebAuthPasskeysUI;
  38. // Reshuffle WebAuthn request UI to put account selection for discoverable
  39. // credentials on platform authenticators first, where applicable.
  40. COMPONENT_EXPORT(DEVICE_FIDO)
  41. extern const base::Feature kWebAuthnNewDiscoverableCredentialsUi;
  42. } // namespace device
  43. #endif // DEVICE_FIDO_FEATURES_H_