Tighten up restrictions on domain/host naming on EPP resources

All domain/host names should be stored in their canonical forms (puny-
coded and lower-cased). This validation is already in the flows, but
this adds protection against bad data from other sources, e.g. admin
consoles or RDE imports.

This also removes an old work-around that temporarily suspended this
validation for superusers, because we used to have non-canonicalized
data in the system. The non-canonicalized data has since all been
cleaned up, so this work-around is no longer necessary.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=146799558
This commit is contained in:
mcilwain 2017-02-07 10:06:38 -08:00 committed by Ben McIlwain
parent ec55aa5361
commit d2bc569b4b
11 changed files with 49 additions and 31 deletions

View file

@ -123,11 +123,7 @@ public final class HostUpdateFlow implements TransactionalFlow {
Change change = command.getInnerChange();
String suppliedNewHostName = change.getFullyQualifiedHostName();
DateTime now = ofy().getTransactionTime();
// Validation is disabled for superusers to allow renaming of existing invalid hostnames.
// TODO(b/32328995): Remove superuser override once all bad data in prod has been fixed.
if (!isSuperuser) {
validateHostName(targetId);
}
validateHostName(targetId);
HostResource existingHost = loadAndVerifyExistence(HostResource.class, targetId, now);
boolean isHostRename = suppliedNewHostName != null;
String oldHostName = targetId;