From ee5a2d39167c9b9d5b8575b3e9284e57e9b31fe1 Mon Sep 17 00:00:00 2001 From: gbrodman Date: Fri, 5 Sep 2025 16:37:23 -0400 Subject: [PATCH] Include internal registrars in the console (#2821) This allows us to also check / modify the CharlestonRoad registrar in the console, and also allows us to test actions (like password reset) using that registrar in the prod environment. --- .../registry/ui/server/console/RegistrarsAction.java | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/core/src/main/java/google/registry/ui/server/console/RegistrarsAction.java b/core/src/main/java/google/registry/ui/server/console/RegistrarsAction.java index 32d4b4e99..390ff39b3 100644 --- a/core/src/main/java/google/registry/ui/server/console/RegistrarsAction.java +++ b/core/src/main/java/google/registry/ui/server/console/RegistrarsAction.java @@ -53,8 +53,10 @@ import java.util.Optional; public class RegistrarsAction extends ConsoleApiAction { private static final int PASSWORD_LENGTH = 16; private static final int PASSCODE_LENGTH = 5; - private static final ImmutableList allowedRegistrarTypes = - ImmutableList.of(Registrar.Type.REAL, Registrar.Type.OTE); + private static final ImmutableSet TYPES_ALLOWED_FOR_USERS = + ImmutableSet.of(Registrar.Type.REAL, Registrar.Type.OTE); + private static final ImmutableSet TYPES_ALLOWED_FOR_ADMINS = + ImmutableSet.of(Registrar.Type.INTERNAL, Registrar.Type.REAL, Registrar.Type.OTE); private static final String SQL_TEMPLATE = """ SELECT * FROM "Registrar" @@ -80,6 +82,8 @@ public class RegistrarsAction extends ConsoleApiAction { @Override protected void getHandler(User user) { if (user.getUserRoles().hasGlobalPermission(ConsolePermission.VIEW_REGISTRARS)) { + ImmutableSet allowedRegistrarTypes = + user.getUserRoles().isAdmin() ? TYPES_ALLOWED_FOR_ADMINS : TYPES_ALLOWED_FOR_USERS; ImmutableList registrars = Streams.stream(Registrar.loadAll()) .filter(r -> allowedRegistrarTypes.contains(r.getType())) @@ -94,6 +98,7 @@ public class RegistrarsAction extends ConsoleApiAction { .map(Map.Entry::getKey) .collect(toImmutableSet()); + @SuppressWarnings("unchecked") List registrars = tm().transact( () ->