1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100
|
// Copyright 2023 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "chrome/browser/enterprise/profile_management/profile_management_features.h"
#include "build/build_config.h"
namespace profile_management::features {
BASE_FEATURE(kThirdPartyProfileManagement,
"ThirdPartyProfileManagement",
base::FEATURE_DISABLED_BY_DEFAULT);
BASE_FEATURE(kEnableProfileTokenManagement,
"EnableProfileTokenManagement",
base::FEATURE_DISABLED_BY_DEFAULT);
BASE_FEATURE(kOidcAuthProfileManagement,
"OidcAuthProfileManagement",
base::FEATURE_ENABLED_BY_DEFAULT);
BASE_FEATURE(kOidcAuthResponseInterception,
"OidcAuthResponseInterception",
base::FEATURE_ENABLED_BY_DEFAULT);
BASE_FEATURE(kOidcEnrollmentTimeout,
"kOidcEnrollmentTimeout",
base::FEATURE_ENABLED_BY_DEFAULT);
BASE_FEATURE(kEnableGenericOidcAuthProfileManagement,
"EnableGenericOidcAuthProfileManagement",
base::FEATURE_DISABLED_BY_DEFAULT);
BASE_FEATURE(kOidcEnrollmentAuthSource,
"OidcEnrollmentAuthSource",
base::FEATURE_DISABLED_BY_DEFAULT);
BASE_FEATURE(kOidcAuthHeaderInterception,
"OidcAuthHeaderInterception",
base::FEATURE_ENABLED_BY_DEFAULT);
// Allow Oidc Enrollment flow to use a stubbed DM token rather than fetching a
// real one from DM server, if one is supplied.
constexpr base::FeatureParam<std::string> kOidcAuthStubDmToken{
&kOidcAuthProfileManagement, "dm_token", ""};
// Allow Oidc Enrollment flow to use a stubbed profile id rather than generating
// one using regular workflow, if one is supplied.
constexpr base::FeatureParam<std::string> kOidcAuthStubProfileId{
&kOidcAuthProfileManagement, "profile_id", ""};
// Allow Oidc Enrollment flow to use a stubbed client id rather than generating
// one using regular workflow, if one is supplied.
constexpr base::FeatureParam<std::string> kOidcAuthStubClientId{
&kOidcAuthProfileManagement, "client_id", ""};
// Allow Oidc Enrollment flow to use a stubbed user display name instead of
// retrieving it from DM server.
constexpr base::FeatureParam<std::string> kOidcAuthStubUserName{
&kOidcAuthProfileManagement, "user_name", ""};
// Allow Oidc Enrollment flow to use a stubbed user display email instead of
// retrieving it from DM server.
constexpr base::FeatureParam<std::string> kOidcAuthStubUserEmail{
&kOidcAuthProfileManagement, "user_email", ""};
// Controls whether Oidc Enrollment flow follows dasherless flow or dasher-based
// flow. This param can only convert a dasher based flow to a dasherless one,
// and does not work the other way around.
constexpr base::FeatureParam<bool> kOidcAuthIsDasherBased{
&kOidcAuthProfileManagement, "is_dasher_based", true};
// This feature param forces OIDC enrollment failure, with the provided value.
/// The value corresponds to the value of `SigninChoiceErrorType`, `0` means no
/// error.
constexpr base::FeatureParam<int> kOidcAuthForceErrorUi{
&kOidcAuthProfileManagement, "force_error_ui", 0};
// If set to `true`, OIDC flow will always fail its policy fetch and trigger the
// Timeout dialog.
constexpr base::FeatureParam<bool> kOidcAuthForceTimeoutUi{
&kOidcAuthProfileManagement, "force_timeout_ui", false};
// Controls the timeout duration of client registration during OIDC enrollment
// flow, in seconds.
constexpr base::FeatureParam<base::TimeDelta> kOidcEnrollRegistrationTimeout{
&kOidcEnrollmentTimeout, "registration_timeout", base::Seconds(30)};
// Allow Oidc Enrollment URL flow to consider more hosts as eligible
// authentication sources.
constexpr base::FeatureParam<std::string> kOidcAuthAdditionalHosts{
&kOidcEnrollmentAuthSource, "hosts", ""};
// Allow Oidc Enrollment Header flow to consider more URLs as eligible
// authentication sources.
constexpr base::FeatureParam<std::string> kOidcAuthAdditionalUrls{
&kOidcAuthHeaderInterception, "urls", ""};
} // namespace profile_management::features
|