Skip to content

Commit f8407c7

Browse files
authored
Make SecretManagerkeyring the only allowed keyring (#2636)
Remove the support for custom keyrings. There is no pressing use case, and can be error-prone.
1 parent 693467a commit f8407c7

19 files changed

+153
-1073
lines changed

core/src/main/java/google/registry/beam/common/RegistryPipelineComponent.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
import google.registry.config.CredentialModule;
2121
import google.registry.config.RegistryConfig.Config;
2222
import google.registry.config.RegistryConfig.ConfigModule;
23+
import google.registry.keyring.KeyringModule;
2324
import google.registry.persistence.PersistenceModule;
2425
import google.registry.persistence.PersistenceModule.BeamJpaTm;
2526
import google.registry.persistence.PersistenceModule.BeamReadOnlyReplicaJpaTm;
@@ -36,6 +37,7 @@
3637
modules = {
3738
ConfigModule.class,
3839
CredentialModule.class,
40+
KeyringModule.class,
3941
PersistenceModule.class,
4042
SecretManagerModule.class,
4143
UtilsModule.class

core/src/main/java/google/registry/config/RegistryConfigSettings.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -215,6 +215,7 @@ public static class Misc {
215215
}
216216

217217
/** Configuration for keyrings (used to store secrets outside of source). */
218+
// TODO(b/388835696): remove section after updating config files.
218219
public static class Keyring {
219220
public String activeKeyring;
220221
}

core/src/main/java/google/registry/keyring/KeyringModule.java

Lines changed: 5 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -14,31 +14,22 @@
1414

1515
package google.registry.keyring;
1616

17-
import static com.google.common.base.Preconditions.checkState;
18-
17+
import dagger.Binds;
1918
import dagger.Module;
2019
import dagger.Provides;
2120
import google.registry.config.RegistryConfig.Config;
2221
import google.registry.keyring.api.Keyring;
23-
import java.util.Map;
22+
import google.registry.keyring.secretmanager.SecretManagerKeyring;
2423
import java.util.Optional;
2524
import javax.inject.Singleton;
2625

2726
/** Dagger module for {@link Keyring} */
2827
@Module
29-
public final class KeyringModule {
28+
public abstract class KeyringModule {
3029

31-
@Provides
30+
@Binds
3231
@Singleton
33-
public static Keyring provideKeyring(
34-
Map<String, Keyring> keyrings, @Config("activeKeyring") String activeKeyring) {
35-
checkState(
36-
keyrings.containsKey(activeKeyring),
37-
"Invalid Keyring %s is configured; valid choices are %s",
38-
activeKeyring,
39-
keyrings.keySet());
40-
return keyrings.get(activeKeyring);
41-
}
32+
public abstract Keyring provideKeyring(SecretManagerKeyring keyring);
4233

4334
@Provides
4435
@Config("cloudSqlInstanceConnectionName")

core/src/main/java/google/registry/keyring/api/ComparatorKeyring.java

Lines changed: 0 additions & 205 deletions
This file was deleted.

0 commit comments

Comments
 (0)