You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by rl...@apache.org on 2018/01/19 14:52:42 UTC
[ambari] branch trunk updated: AMBARI-22697. Throw exception when
keytab creation fails due to wrong configuration of key encryption types
This is an automated email from the ASF dual-hosted git repository.
rlevas pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/ambari.git
The following commit(s) were added to refs/heads/trunk by this push:
new b434663 AMBARI-22697. Throw exception when keytab creation fails due to wrong configuration of key encryption types
b434663 is described below
commit b434663cc8f15852b11b8e8607b105f71c360832
Author: Akira Ajisaka <aa...@apache.org>
AuthorDate: Tue Jan 16 14:50:31 2018 +0900
AMBARI-22697. Throw exception when keytab creation fails due to wrong configuration of key encryption types
---
.../serveraction/kerberos/KerberosOperationHandler.java | 14 ++++++++++++--
.../kerberos/KerberosOperationHandlerTest.java | 6 ++++++
2 files changed, 18 insertions(+), 2 deletions(-)
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/serveraction/kerberos/KerberosOperationHandler.java b/ambari-server/src/main/java/org/apache/ambari/server/serveraction/kerberos/KerberosOperationHandler.java
index 948fd60..a159880 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/serveraction/kerberos/KerberosOperationHandler.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/serveraction/kerberos/KerberosOperationHandler.java
@@ -800,7 +800,12 @@ public abstract class KerberosOperationHandler {
encryptionTypes = ENCRYPTION_TYPE_TRANSLATION_MAP.get(name.toLowerCase());
}
- return (encryptionTypes == null) ? Collections.emptySet() : encryptionTypes;
+ if (encryptionTypes == null) {
+ LOG.warn("The given encryption type name ({}) is not supported.", name);
+ return Collections.emptySet();
+ }
+
+ return encryptionTypes;
}
/**
@@ -810,8 +815,10 @@ public abstract class KerberosOperationHandler {
* @param names a String containing a delimited list of encryption type names
* @param delimiter a String declaring the delimiter to use to split names, if null, " " is used.
* @return a Set of EncryptionType values
+ * @throws KerberosOperationException When all the encryption type names are not supported
*/
- protected Set<EncryptionType> translateEncryptionTypes(String names, String delimiter) {
+ protected Set<EncryptionType> translateEncryptionTypes(String names, String delimiter)
+ throws KerberosOperationException {
Set<EncryptionType> encryptionTypes = new HashSet<>();
if (!StringUtils.isEmpty(names)) {
@@ -820,6 +827,9 @@ public abstract class KerberosOperationHandler {
}
}
+ if (encryptionTypes.isEmpty()) {
+ throw new KerberosOperationException("All the encryption type names you set are not supported. Aborting.");
+ }
return encryptionTypes;
}
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/kerberos/KerberosOperationHandlerTest.java b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/kerberos/KerberosOperationHandlerTest.java
index 9d1e8e0..5a0ca79 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/kerberos/KerberosOperationHandlerTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/kerberos/KerberosOperationHandlerTest.java
@@ -351,6 +351,12 @@ public abstract class KerberosOperationHandlerTest extends EasyMockSupport {
);
}
+ @Test(expected = KerberosOperationException.class)
+ public void testTranslateWrongEncryptionTypes() throws Exception {
+ KerberosOperationHandler handler = createHandler();
+ handler.translateEncryptionTypes("aes-255", " ");
+ }
+
@Test
public void testEscapeCharacters() throws KerberosOperationException {
KerberosOperationHandler handler = createHandler();
--
To stop receiving notification emails like this one, please contact
['"commits@ambari.apache.org" <co...@ambari.apache.org>'].