Commit 09b15df9 authored by Nina Satragno's avatar Nina Satragno Committed by Commit Bot

[webauthn] Do not create virtual authenticator under devtools

Avoid creating a default virtual authenticator if the browser is not
running layout or WPT tests under content shell. This is not necessary
and confusing for anyone using the ChromeDriver API.

Fixed: 1019934
Change-Id: I4fc9f8a997df1f3c8bbf9120b6c1c1268259858c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1891466
Commit-Queue: Nina Satragno <nsatragno@chromium.org>
Reviewed-by: default avatarMartin Kreichgauer <martinkr@google.com>
Cr-Commit-Position: refs/heads/master@{#711523}
parent 9fe95bf2
...@@ -7,9 +7,11 @@ ...@@ -7,9 +7,11 @@
#include <utility> #include <utility>
#include <vector> #include <vector>
#include "base/command_line.h"
#include "base/stl_util.h" #include "base/stl_util.h"
#include "content/browser/webauth/virtual_authenticator.h" #include "content/browser/webauth/virtual_authenticator.h"
#include "content/browser/webauth/virtual_discovery.h" #include "content/browser/webauth/virtual_discovery.h"
#include "content/public/common/content_switches.h"
#include "device/fido/fido_discovery_base.h" #include "device/fido/fido_discovery_base.h"
#include "device/fido/virtual_ctap2_device.h" #include "device/fido/virtual_ctap2_device.h"
#include "device/fido/virtual_u2f_device.h" #include "device/fido/virtual_u2f_device.h"
...@@ -102,10 +104,12 @@ VirtualFidoDiscoveryFactory::Create(device::FidoTransportProtocol transport, ...@@ -102,10 +104,12 @@ VirtualFidoDiscoveryFactory::Create(device::FidoTransportProtocol transport,
::service_manager::Connector* connector) { ::service_manager::Connector* connector) {
auto discovery = std::make_unique<VirtualFidoDiscovery>(transport); auto discovery = std::make_unique<VirtualFidoDiscovery>(transport);
if (receivers_.empty() && authenticators_.empty()) { if (receivers_.empty() && authenticators_.empty() &&
base::CommandLine::ForCurrentProcess()->HasSwitch(
switches::kEnableWebAuthTestingAPI)) {
// If no bindings are active then create a virtual device. This is a // If no bindings are active then create a virtual device. This is a
// stop-gap measure for web-platform tests which assume that they can make // stop-gap measure for running web-platform tests on the chromium CI.
// webauthn calls until the WebAuthn Testing API is released. // See crbug.com/1020361
CreateAuthenticator( CreateAuthenticator(
::device::ProtocolVersion::kCtap2, ::device::ProtocolVersion::kCtap2,
::device::FidoTransportProtocol::kUsbHumanInterfaceDevice, ::device::FidoTransportProtocol::kUsbHumanInterfaceDevice,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment