Skip to content
Snippets Groups Projects
Commit f00bfe4f authored by OZGCloud's avatar OZGCloud
Browse files

OZG-3961 decode secret content

parent 4c496398
No related branches found
No related tags found
No related merge requests found
......@@ -24,6 +24,9 @@
package de.ozgcloud.operator.keycloak.user;
import java.io.IOException;
import org.keycloak.common.util.Base64;
import org.springframework.stereotype.Component;
import io.fabric8.kubernetes.api.model.Secret;
......@@ -32,6 +35,15 @@ import io.fabric8.kubernetes.api.model.Secret;
class UserSecretReader {
public String getPasswortFromSecret(Secret secret) {
return secret.getStringData().get(UserSecretBuilder.SECRET_PASSWORD_FIELD);
String encodedPassword = secret.getData().get(UserSecretBuilder.SECRET_PASSWORD_FIELD);
return decode(encodedPassword, secret);
}
private String decode(String encodedPassword, Secret secret) {
try {
return new String(Base64.decode(encodedPassword));
} catch (IOException e) {
throw new RuntimeException("Could not decode content from secret (base64) for secret " + secret.getFullResourceName());
}
}
}
......@@ -26,6 +26,7 @@ package de.ozgcloud.operator.keycloak.user;
import static org.assertj.core.api.Assertions.*;
import java.util.Base64;
import java.util.Map;
import org.junit.jupiter.api.Test;
......@@ -49,6 +50,13 @@ class UserSecretReaderTest {
}
private Secret buildSecret() {
return new SecretBuilder().addToStringData(Map.of(UserSecretBuilder.SECRET_PASSWORD_FIELD, SecretTestFactory.PASSWORD)).build();
return new SecretBuilder()
.addToData(Map.of(UserSecretBuilder.SECRET_PASSWORD_FIELD,
encodeStringBase64(SecretTestFactory.PASSWORD)))
.build();
}
private String encodeStringBase64(String string) {
return Base64.getEncoder().encodeToString(string.getBytes());
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment