Remove experiment associated with auth1->auth2 rollout.
This commit is contained in:
parent
b17f41c3e8
commit
ae1edf3c5c
|
@ -477,8 +477,8 @@ public class WhisperServerService extends Application<WhisperServerConfiguration
|
||||||
ReportedMessageMetricsListener reportedMessageMetricsListener = new ReportedMessageMetricsListener(accountsManager);
|
ReportedMessageMetricsListener reportedMessageMetricsListener = new ReportedMessageMetricsListener(accountsManager);
|
||||||
reportMessageManager.addListener(reportedMessageMetricsListener);
|
reportMessageManager.addListener(reportedMessageMetricsListener);
|
||||||
|
|
||||||
AccountAuthenticator accountAuthenticator = new AccountAuthenticator(accountsManager, experimentEnrollmentManager);
|
AccountAuthenticator accountAuthenticator = new AccountAuthenticator(accountsManager);
|
||||||
DisabledPermittedAccountAuthenticator disabledPermittedAccountAuthenticator = new DisabledPermittedAccountAuthenticator(accountsManager, experimentEnrollmentManager);
|
DisabledPermittedAccountAuthenticator disabledPermittedAccountAuthenticator = new DisabledPermittedAccountAuthenticator(accountsManager);
|
||||||
|
|
||||||
TwilioSmsSender twilioSmsSender = new TwilioSmsSender(config.getTwilioConfiguration(), dynamicConfigurationManager);
|
TwilioSmsSender twilioSmsSender = new TwilioSmsSender(config.getTwilioConfiguration(), dynamicConfigurationManager);
|
||||||
SmsSender smsSender = new SmsSender(twilioSmsSender);
|
SmsSender smsSender = new SmsSender(twilioSmsSender);
|
||||||
|
|
|
@ -13,8 +13,8 @@ import org.whispersystems.textsecuregcm.storage.AccountsManager;
|
||||||
public class AccountAuthenticator extends BaseAccountAuthenticator implements
|
public class AccountAuthenticator extends BaseAccountAuthenticator implements
|
||||||
Authenticator<BasicCredentials, AuthenticatedAccount> {
|
Authenticator<BasicCredentials, AuthenticatedAccount> {
|
||||||
|
|
||||||
public AccountAuthenticator(AccountsManager accountsManager, ExperimentEnrollmentManager enrollmentManager) {
|
public AccountAuthenticator(AccountsManager accountsManager) {
|
||||||
super(accountsManager, enrollmentManager);
|
super(accountsManager);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -17,7 +17,6 @@ import java.time.temporal.ChronoUnit;
|
||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.whispersystems.textsecuregcm.experiment.ExperimentEnrollmentManager;
|
|
||||||
import org.whispersystems.textsecuregcm.storage.Account;
|
import org.whispersystems.textsecuregcm.storage.Account;
|
||||||
import org.whispersystems.textsecuregcm.storage.AccountsManager;
|
import org.whispersystems.textsecuregcm.storage.AccountsManager;
|
||||||
import org.whispersystems.textsecuregcm.storage.Device;
|
import org.whispersystems.textsecuregcm.storage.Device;
|
||||||
|
@ -34,21 +33,18 @@ public class BaseAccountAuthenticator {
|
||||||
|
|
||||||
private static final String DAYS_SINCE_LAST_SEEN_DISTRIBUTION_NAME = name(BaseAccountAuthenticator.class, "daysSinceLastSeen");
|
private static final String DAYS_SINCE_LAST_SEEN_DISTRIBUTION_NAME = name(BaseAccountAuthenticator.class, "daysSinceLastSeen");
|
||||||
private static final String IS_PRIMARY_DEVICE_TAG = "isPrimary";
|
private static final String IS_PRIMARY_DEVICE_TAG = "isPrimary";
|
||||||
private static final String AUTH_V2_REWRITE_EXPERIMENT_NAME = "authv2-rewrite";
|
|
||||||
|
|
||||||
private final AccountsManager accountsManager;
|
private final AccountsManager accountsManager;
|
||||||
private final Clock clock;
|
private final Clock clock;
|
||||||
private final ExperimentEnrollmentManager enrollmentManager;
|
|
||||||
|
|
||||||
public BaseAccountAuthenticator(AccountsManager accountsManager, ExperimentEnrollmentManager enrollmentManager) {
|
public BaseAccountAuthenticator(AccountsManager accountsManager) {
|
||||||
this(accountsManager, Clock.systemUTC(), enrollmentManager);
|
this(accountsManager, Clock.systemUTC());
|
||||||
}
|
}
|
||||||
|
|
||||||
@VisibleForTesting
|
@VisibleForTesting
|
||||||
public BaseAccountAuthenticator(AccountsManager accountsManager, Clock clock, ExperimentEnrollmentManager enrollmentManager) {
|
public BaseAccountAuthenticator(AccountsManager accountsManager, Clock clock) {
|
||||||
this.accountsManager = accountsManager;
|
this.accountsManager = accountsManager;
|
||||||
this.clock = clock;
|
this.clock = clock;
|
||||||
this.enrollmentManager = enrollmentManager;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static Pair<String, Long> getIdentifierAndDeviceId(final String basicUsername) {
|
static Pair<String, Long> getIdentifierAndDeviceId(final String basicUsername) {
|
||||||
|
@ -112,8 +108,7 @@ public class BaseAccountAuthenticator {
|
||||||
if (deviceAuthenticationCredentials.verify(basicCredentials.getPassword())) {
|
if (deviceAuthenticationCredentials.verify(basicCredentials.getPassword())) {
|
||||||
succeeded = true;
|
succeeded = true;
|
||||||
Account authenticatedAccount = updateLastSeen(account.get(), device.get());
|
Account authenticatedAccount = updateLastSeen(account.get(), device.get());
|
||||||
if (deviceAuthenticationCredentials.getVersion() != AuthenticationCredentials.CURRENT_VERSION
|
if (deviceAuthenticationCredentials.getVersion() != AuthenticationCredentials.CURRENT_VERSION) {
|
||||||
&& enrollmentManager.isEnrolled(accountUuid, AUTH_V2_REWRITE_EXPERIMENT_NAME)) {
|
|
||||||
authenticatedAccount = accountsManager.updateDeviceAuthentication(
|
authenticatedAccount = accountsManager.updateDeviceAuthentication(
|
||||||
authenticatedAccount,
|
authenticatedAccount,
|
||||||
device.get(),
|
device.get(),
|
||||||
|
|
|
@ -14,8 +14,8 @@ import org.whispersystems.textsecuregcm.storage.AccountsManager;
|
||||||
public class DisabledPermittedAccountAuthenticator extends BaseAccountAuthenticator implements
|
public class DisabledPermittedAccountAuthenticator extends BaseAccountAuthenticator implements
|
||||||
Authenticator<BasicCredentials, DisabledPermittedAuthenticatedAccount> {
|
Authenticator<BasicCredentials, DisabledPermittedAuthenticatedAccount> {
|
||||||
|
|
||||||
public DisabledPermittedAccountAuthenticator(AccountsManager accountsManager, ExperimentEnrollmentManager enrollmentManager) {
|
public DisabledPermittedAccountAuthenticator(AccountsManager accountsManager) {
|
||||||
super(accountsManager, enrollmentManager);
|
super(accountsManager);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -56,9 +56,7 @@ class BaseAccountAuthenticatorTest {
|
||||||
void setup() {
|
void setup() {
|
||||||
accountsManager = mock(AccountsManager.class);
|
accountsManager = mock(AccountsManager.class);
|
||||||
clock = mock(Clock.class);
|
clock = mock(Clock.class);
|
||||||
ExperimentEnrollmentManager enrollmentManager = mock(ExperimentEnrollmentManager.class);
|
baseAccountAuthenticator = new BaseAccountAuthenticator(accountsManager, clock);
|
||||||
when(enrollmentManager.isEnrolled(any(UUID.class), any())).thenReturn(true);
|
|
||||||
baseAccountAuthenticator = new BaseAccountAuthenticator(accountsManager, clock, enrollmentManager);
|
|
||||||
|
|
||||||
// We use static UUIDs here because the UUID affects the "date last seen" offset
|
// We use static UUIDs here because the UUID affects the "date last seen" offset
|
||||||
acct1 = AccountsHelper.generateTestAccount("+14088675309", UUID.fromString("c139cb3e-f70c-4460-b221-815e8bdf778f"), UUID.randomUUID(), List.of(generateTestDevice(yesterday)), null);
|
acct1 = AccountsHelper.generateTestAccount("+14088675309", UUID.fromString("c139cb3e-f70c-4460-b221-815e8bdf778f"), UUID.randomUUID(), List.of(generateTestDevice(yesterday)), null);
|
||||||
|
|
|
@ -191,12 +191,10 @@ public class AuthHelper {
|
||||||
testAccount.setup(ACCOUNTS_MANAGER);
|
testAccount.setup(ACCOUNTS_MANAGER);
|
||||||
}
|
}
|
||||||
|
|
||||||
ExperimentEnrollmentManager experimentEnrollmentManager = mock(ExperimentEnrollmentManager.class);
|
|
||||||
when(experimentEnrollmentManager.isEnrolled(any(UUID.class), any())).thenReturn(true);
|
|
||||||
AuthFilter<BasicCredentials, AuthenticatedAccount> accountAuthFilter = new BasicCredentialAuthFilter.Builder<AuthenticatedAccount>().setAuthenticator(
|
AuthFilter<BasicCredentials, AuthenticatedAccount> accountAuthFilter = new BasicCredentialAuthFilter.Builder<AuthenticatedAccount>().setAuthenticator(
|
||||||
new AccountAuthenticator(ACCOUNTS_MANAGER, experimentEnrollmentManager)).buildAuthFilter();
|
new AccountAuthenticator(ACCOUNTS_MANAGER)).buildAuthFilter();
|
||||||
AuthFilter<BasicCredentials, DisabledPermittedAuthenticatedAccount> disabledPermittedAccountAuthFilter = new BasicCredentialAuthFilter.Builder<DisabledPermittedAuthenticatedAccount>().setAuthenticator(
|
AuthFilter<BasicCredentials, DisabledPermittedAuthenticatedAccount> disabledPermittedAccountAuthFilter = new BasicCredentialAuthFilter.Builder<DisabledPermittedAuthenticatedAccount>().setAuthenticator(
|
||||||
new DisabledPermittedAccountAuthenticator(ACCOUNTS_MANAGER, experimentEnrollmentManager)).buildAuthFilter();
|
new DisabledPermittedAccountAuthenticator(ACCOUNTS_MANAGER)).buildAuthFilter();
|
||||||
|
|
||||||
return new PolymorphicAuthDynamicFeature<>(ImmutableMap.of(AuthenticatedAccount.class, accountAuthFilter,
|
return new PolymorphicAuthDynamicFeature<>(ImmutableMap.of(AuthenticatedAccount.class, accountAuthFilter,
|
||||||
DisabledPermittedAuthenticatedAccount.class, disabledPermittedAccountAuthFilter));
|
DisabledPermittedAuthenticatedAccount.class, disabledPermittedAccountAuthFilter));
|
||||||
|
|
Loading…
Reference in New Issue