Project: chromium Issues People Development process History Sign in
New issue
Advanced search Search tips
Starred by 2 users
Status: Fixed
Owner:
Closed: May 22
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 2
Type: Launch-OWP
Launch-Accessibility: ----
Launch-Legal: ----
Launch-M-Approved: ----
Launch-M-Target: ----
Launch-Privacy: ----
Launch-Security: ----
Launch-Status: ----
Launch-Test: ----
Launch-UI: ----
Product-Review: ----

Blocking:
issue 715077



Sign in to add a comment
Ship `mediation` enum argument to `CredentialsContainer::get()` and Deprecate `unmediated` flag
Project Member Reported by jdoerrie@chromium.org, May 11 Back to list
IMPORTANT:
- This launch issue is used for standards and implementation tracking only.
It is NOT for Chrome approval regarding privacy, security, legal, UI,
testing,
accessibility etc.
- An overview of the different launch issues can be found here:
http://bit.ly/2ncKZfp
- If your feature requires security / privacy / etc approval then seek a PM
to guide you through the go/newchromefeature process

See http://www.chromium.org/blink#launch-process for an overview of the
Blink launch process, but note this doesn't cover security / privacy / etc
reviews as discussed above.

----------

Change description:
This change introduces an `CredentialMediationRequirement` enum argument to `CredentialsContainer::get()` that is intended to replace the currently existing boolean flag `unmediated`. The enum will have three states ("silent", "optional", "required") with "silent" and "optional" directly mapping to the existing boolean states, "required" is a novel option.

Changes to API surface:
- Ship `CredentialsContainer::get(mediation)`
- Deprecate `CredentialsContainer::get(unmediated)`

Links:
Public standards discussion: https://github.com/w3c/webappsec-credential-management/issues
Relevant Spec Section: https://w3c.github.io/webappsec-credential-management/#enumdef-credentialmediationrequirement

Support in other browsers:
Internet Explorer: NA
Firefox: NA
Safari: NA
 
Description: Show this description
Project Member Comment 2 by bugdroid1@chromium.org, May 22
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/46feffcdbeca2da9245a3c48ff6d81d08f26d5d8

commit 46feffcdbeca2da9245a3c48ff6d81d08f26d5d8
Author: jdoerrie <jdoerrie@chromium.org>
Date: Mon May 22 09:37:37 2017

Deprecate CredentialRequestOptions.unmediated in favor mediation enum

This change introduces an `CredentialMediationRequirement` enum argument to
`CredentialsContainer::get()` that is intended to replace the currently existing
boolean flag `unmediated`. The enum will have three states ("silent",
"optional", "required") with "silent" and "optional" directly mapping to the
existing boolean states, "required" is a novel option.

Intent to Ship:
https://groups.google.com/a/chromium.org/d/msg/blink-dev/veCKBk1NguM/ctyHrdVWAwAJ

BUG= 721399 

Review-Url: https://codereview.chromium.org/2864493003
Cr-Commit-Position: refs/heads/master@{#473532}

[modify] https://crrev.com/46feffcdbeca2da9245a3c48ff6d81d08f26d5d8/components/password_manager/content/browser/credential_manager_impl.cc
[modify] https://crrev.com/46feffcdbeca2da9245a3c48ff6d81d08f26d5d8/components/password_manager/content/browser/credential_manager_impl.h
[modify] https://crrev.com/46feffcdbeca2da9245a3c48ff6d81d08f26d5d8/components/password_manager/content/browser/credential_manager_impl_unittest.cc
[modify] https://crrev.com/46feffcdbeca2da9245a3c48ff6d81d08f26d5d8/components/password_manager/content/common/OWNERS
[modify] https://crrev.com/46feffcdbeca2da9245a3c48ff6d81d08f26d5d8/components/password_manager/content/common/credential_manager.mojom
[modify] https://crrev.com/46feffcdbeca2da9245a3c48ff6d81d08f26d5d8/components/password_manager/content/common/credential_manager.typemap
[modify] https://crrev.com/46feffcdbeca2da9245a3c48ff6d81d08f26d5d8/components/password_manager/content/common/credential_manager_struct_traits.cc
[modify] https://crrev.com/46feffcdbeca2da9245a3c48ff6d81d08f26d5d8/components/password_manager/content/common/credential_manager_struct_traits.h
[modify] https://crrev.com/46feffcdbeca2da9245a3c48ff6d81d08f26d5d8/components/password_manager/content/renderer/credential_manager_client.cc
[modify] https://crrev.com/46feffcdbeca2da9245a3c48ff6d81d08f26d5d8/components/password_manager/content/renderer/credential_manager_client.h
[modify] https://crrev.com/46feffcdbeca2da9245a3c48ff6d81d08f26d5d8/components/password_manager/content/renderer/credential_manager_client_browsertest.cc
[modify] https://crrev.com/46feffcdbeca2da9245a3c48ff6d81d08f26d5d8/components/password_manager/core/browser/credential_manager_logger.cc
[modify] https://crrev.com/46feffcdbeca2da9245a3c48ff6d81d08f26d5d8/components/password_manager/core/browser/credential_manager_logger.h
[modify] https://crrev.com/46feffcdbeca2da9245a3c48ff6d81d08f26d5d8/components/password_manager/core/browser/credential_manager_logger_unittest.cc
[modify] https://crrev.com/46feffcdbeca2da9245a3c48ff6d81d08f26d5d8/components/password_manager/core/browser/credential_manager_pending_request_task.cc
[modify] https://crrev.com/46feffcdbeca2da9245a3c48ff6d81d08f26d5d8/components/password_manager/core/browser/credential_manager_pending_request_task.h
[modify] https://crrev.com/46feffcdbeca2da9245a3c48ff6d81d08f26d5d8/components/password_manager/core/browser/password_manager_metrics_util.cc
[modify] https://crrev.com/46feffcdbeca2da9245a3c48ff6d81d08f26d5d8/components/password_manager/core/browser/password_manager_metrics_util.h
[modify] https://crrev.com/46feffcdbeca2da9245a3c48ff6d81d08f26d5d8/components/password_manager/core/common/credential_manager_types.h
[modify] https://crrev.com/46feffcdbeca2da9245a3c48ff6d81d08f26d5d8/content/shell/test_runner/mock_credential_manager_client.cc
[modify] https://crrev.com/46feffcdbeca2da9245a3c48ff6d81d08f26d5d8/content/shell/test_runner/mock_credential_manager_client.h
[modify] https://crrev.com/46feffcdbeca2da9245a3c48ff6d81d08f26d5d8/third_party/WebKit/LayoutTests/external/wpt/credential-management/idl.https.html
[modify] https://crrev.com/46feffcdbeca2da9245a3c48ff6d81d08f26d5d8/third_party/WebKit/LayoutTests/http/tests/credentialmanager/credentialscontainer-get-basics.html
[modify] https://crrev.com/46feffcdbeca2da9245a3c48ff6d81d08f26d5d8/third_party/WebKit/LayoutTests/http/tests/credentialmanager/credentialscontainer-get-errors.html
[add] https://crrev.com/46feffcdbeca2da9245a3c48ff6d81d08f26d5d8/third_party/WebKit/LayoutTests/http/tests/credentialmanager/credentialscontainer-get-warnings-expected.txt
[add] https://crrev.com/46feffcdbeca2da9245a3c48ff6d81d08f26d5d8/third_party/WebKit/LayoutTests/http/tests/credentialmanager/credentialscontainer-get-warnings.html
[modify] https://crrev.com/46feffcdbeca2da9245a3c48ff6d81d08f26d5d8/third_party/WebKit/Source/core/frame/Deprecation.cpp
[modify] https://crrev.com/46feffcdbeca2da9245a3c48ff6d81d08f26d5d8/third_party/WebKit/Source/core/frame/UseCounter.h
[modify] https://crrev.com/46feffcdbeca2da9245a3c48ff6d81d08f26d5d8/third_party/WebKit/Source/modules/credentialmanager/CredentialManagerClient.cpp
[modify] https://crrev.com/46feffcdbeca2da9245a3c48ff6d81d08f26d5d8/third_party/WebKit/Source/modules/credentialmanager/CredentialManagerClient.h
[modify] https://crrev.com/46feffcdbeca2da9245a3c48ff6d81d08f26d5d8/third_party/WebKit/Source/modules/credentialmanager/CredentialRequestOptions.idl
[modify] https://crrev.com/46feffcdbeca2da9245a3c48ff6d81d08f26d5d8/third_party/WebKit/Source/modules/credentialmanager/CredentialsContainer.cpp
[modify] https://crrev.com/46feffcdbeca2da9245a3c48ff6d81d08f26d5d8/third_party/WebKit/Source/modules/credentialmanager/CredentialsContainerTest.cpp
[modify] https://crrev.com/46feffcdbeca2da9245a3c48ff6d81d08f26d5d8/third_party/WebKit/public/BUILD.gn
[modify] https://crrev.com/46feffcdbeca2da9245a3c48ff6d81d08f26d5d8/third_party/WebKit/public/platform/WebCredentialManagerClient.h
[add] https://crrev.com/46feffcdbeca2da9245a3c48ff6d81d08f26d5d8/third_party/WebKit/public/platform/WebCredentialMediationRequirement.h
[modify] https://crrev.com/46feffcdbeca2da9245a3c48ff6d81d08f26d5d8/tools/metrics/histograms/enums.xml
[modify] https://crrev.com/46feffcdbeca2da9245a3c48ff6d81d08f26d5d8/tools/metrics/histograms/histograms.xml

Status: Fixed
Project Member Comment 4 by bugdroid1@chromium.org, May 23
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/0bc5d1bef8d597ac40ba96d4e783fc4dd0bd4958

commit 0bc5d1bef8d597ac40ba96d4e783fc4dd0bd4958
Author: jdoerrie <jdoerrie@chromium.org>
Date: Tue May 23 11:27:34 2017

Measure usage of only CredentialRequestOptions.unmediated

This change adds a counter to measure usages of only providing
CredentialRequestOptions.unmediated.

BUG= 721399 

Review-Url: https://codereview.chromium.org/2899763002
Cr-Commit-Position: refs/heads/master@{#473858}

[modify] https://crrev.com/0bc5d1bef8d597ac40ba96d4e783fc4dd0bd4958/third_party/WebKit/Source/core/frame/UseCounter.h
[modify] https://crrev.com/0bc5d1bef8d597ac40ba96d4e783fc4dd0bd4958/third_party/WebKit/Source/modules/credentialmanager/CredentialsContainer.cpp
[modify] https://crrev.com/0bc5d1bef8d597ac40ba96d4e783fc4dd0bd4958/tools/metrics/histograms/enums.xml

Sign in to add a comment