Search in sources :

Example 6 with LoginModuleConfig

use of com.hazelcast.config.LoginModuleConfig in project hazelcast by hazelcast.

the class ClientConfigXmlGenerator method appendLoginModules.

private static void appendLoginModules(XmlGenerator gen, String tag, List<LoginModuleConfig> loginModuleConfigs) {
    gen.open(tag);
    for (LoginModuleConfig lm : loginModuleConfigs) {
        List<String> attrs = new ArrayList<>();
        attrs.add("class-name");
        attrs.add(lm.getClassName());
        if (lm.getUsage() != null) {
            attrs.add("usage");
            attrs.add(lm.getUsage().name());
        }
        gen.open("login-module", attrs.toArray()).appendProperties(lm.getProperties()).close();
    }
    gen.close();
}
Also used : LoginModuleConfig(com.hazelcast.config.LoginModuleConfig) ArrayList(java.util.ArrayList)

Example 7 with LoginModuleConfig

use of com.hazelcast.config.LoginModuleConfig in project hazelcast by hazelcast.

the class AbstractClientConfigBuilderTest method testSecurityConfig.

@Test
public void testSecurityConfig() {
    ClientSecurityConfig securityConfig = fullClientConfig.getSecurityConfig();
    assertNull(securityConfig.getUsernamePasswordIdentityConfig());
    CredentialsFactoryConfig credentialsFactoryConfig = securityConfig.getCredentialsFactoryConfig();
    assertEquals("com.hazelcast.examples.MyCredentialsFactory", credentialsFactoryConfig.getClassName());
    Properties properties = credentialsFactoryConfig.getProperties();
    assertEquals("value", properties.getProperty("property"));
    RealmConfig realmConfig = securityConfig.getRealmConfig("krb5Initiator");
    assertNotNull(realmConfig);
    JaasAuthenticationConfig jaasConf = realmConfig.getJaasAuthenticationConfig();
    assertNotNull(jaasConf);
    List<LoginModuleConfig> loginModuleConfigs = jaasConf.getLoginModuleConfigs();
    assertNotNull(loginModuleConfigs);
    assertEquals(1, loginModuleConfigs.size());
    LoginModuleConfig loginModuleConfig = loginModuleConfigs.get(0);
    assertEquals("com.sun.security.auth.module.Krb5LoginModule", loginModuleConfig.getClassName());
    assertEquals(LoginModuleUsage.REQUIRED, loginModuleConfig.getUsage());
    assertEquals("jduke@HAZELCAST.COM", loginModuleConfig.getProperties().get("principal"));
}
Also used : RealmConfig(com.hazelcast.config.security.RealmConfig) CredentialsFactoryConfig(com.hazelcast.config.CredentialsFactoryConfig) LoginModuleConfig(com.hazelcast.config.LoginModuleConfig) Properties(java.util.Properties) JaasAuthenticationConfig(com.hazelcast.config.security.JaasAuthenticationConfig) Test(org.junit.Test) XMLConfigBuilderTest(com.hazelcast.config.XMLConfigBuilderTest)

Example 8 with LoginModuleConfig

use of com.hazelcast.config.LoginModuleConfig in project hazelcast by hazelcast.

the class ClientConfigXmlGeneratorTest method kerberosIdentity.

@Test
public void kerberosIdentity() {
    KerberosIdentityConfig identityConfig = new KerberosIdentityConfig().setRealm("realm").setSecurityRealm("security-realm").setPrincipal("jduke").setKeytabFile("/opt/keytab").setServiceNamePrefix("prefix").setSpn("spn");
    RealmConfig realmConfig = new RealmConfig().setJaasAuthenticationConfig(new JaasAuthenticationConfig().addLoginModuleConfig(new LoginModuleConfig("test.Krb5LoginModule", LoginModuleUsage.REQUIRED).setProperty("principal", "jduke")));
    ClientSecurityConfig securityConfig = clientConfig.getSecurityConfig().setKerberosIdentityConfig(identityConfig).addRealmConfig("kerberos", realmConfig);
    ClientConfig actual = newConfigViaGenerator();
    assertEquals(securityConfig, actual.getSecurityConfig());
}
Also used : RealmConfig(com.hazelcast.config.security.RealmConfig) LoginModuleConfig(com.hazelcast.config.LoginModuleConfig) KerberosIdentityConfig(com.hazelcast.config.security.KerberosIdentityConfig) JaasAuthenticationConfig(com.hazelcast.config.security.JaasAuthenticationConfig) ParallelJVMTest(com.hazelcast.test.annotation.ParallelJVMTest) QuickTest(com.hazelcast.test.annotation.QuickTest) Test(org.junit.Test)

Example 9 with LoginModuleConfig

use of com.hazelcast.config.LoginModuleConfig in project hazelcast by hazelcast.

the class TestClientApplicationContext method testSecurityRealms.

@Test
public void testSecurityRealms() {
    assertNotNull(client5);
    RealmConfig realmConfig = client5.getClientConfig().getSecurityConfig().getRealmConfig("krb5Initiator");
    assertNotNull(realmConfig);
    JaasAuthenticationConfig jaasAuthenticationConfig = realmConfig.getJaasAuthenticationConfig();
    assertNotNull(jaasAuthenticationConfig);
    assertEquals(1, jaasAuthenticationConfig.getLoginModuleConfigs().size());
    LoginModuleConfig loginModuleConfig = jaasAuthenticationConfig.getLoginModuleConfigs().get(0);
    assertEquals("com.sun.security.auth.module.Krb5LoginModule", loginModuleConfig.getClassName());
    assertEquals("jduke@HAZELCAST.COM", loginModuleConfig.getProperties().getProperty("principal"));
}
Also used : RealmConfig(com.hazelcast.config.security.RealmConfig) LoginModuleConfig(com.hazelcast.config.LoginModuleConfig) JaasAuthenticationConfig(com.hazelcast.config.security.JaasAuthenticationConfig) QuickTest(com.hazelcast.test.annotation.QuickTest) Test(org.junit.Test)

Example 10 with LoginModuleConfig

use of com.hazelcast.config.LoginModuleConfig in project hazelcast by hazelcast.

the class SecureApplicationContextTest method testClientLoginConfigs.

@Test
public void testClientLoginConfigs() {
    RealmConfig realmConfig = securityConfig.getRealmConfig(securityConfig.getClientRealm());
    JaasAuthenticationConfig jaasAuthenticationConfig = realmConfig.getJaasAuthenticationConfig();
    assertNotNull(jaasAuthenticationConfig);
    List<LoginModuleConfig> list = jaasAuthenticationConfig.getLoginModuleConfigs();
    assertEquals(2, list.size());
    LoginModuleConfig lm1 = list.get(0);
    assertEquals("com.hazelcast.examples.MyOptionalLoginModule", lm1.getClassName());
    assertFalse(lm1.getProperties().isEmpty());
    assertEquals(LoginModuleUsage.OPTIONAL, lm1.getUsage());
    LoginModuleConfig lm2 = list.get(1);
    assertEquals("com.hazelcast.examples.MyRequiredLoginModule", lm2.getClassName());
    assertFalse(lm2.getProperties().isEmpty());
    assertEquals(LoginModuleUsage.REQUIRED, lm2.getUsage());
}
Also used : RealmConfig(com.hazelcast.config.security.RealmConfig) LoginModuleConfig(com.hazelcast.config.LoginModuleConfig) JaasAuthenticationConfig(com.hazelcast.config.security.JaasAuthenticationConfig) QuickTest(com.hazelcast.test.annotation.QuickTest) Test(org.junit.Test)

Aggregations

LoginModuleConfig (com.hazelcast.config.LoginModuleConfig)13 Test (org.junit.Test)7 QuickTest (com.hazelcast.test.annotation.QuickTest)6 JaasAuthenticationConfig (com.hazelcast.config.security.JaasAuthenticationConfig)5 RealmConfig (com.hazelcast.config.security.RealmConfig)5 CredentialsFactoryConfig (com.hazelcast.config.CredentialsFactoryConfig)2 XMLConfigBuilderTest (com.hazelcast.config.XMLConfigBuilderTest)1 KerberosIdentityConfig (com.hazelcast.config.security.KerberosIdentityConfig)1 ParallelJVMTest (com.hazelcast.test.annotation.ParallelJVMTest)1 ArrayList (java.util.ArrayList)1 Properties (java.util.Properties)1 Node (org.w3c.dom.Node)1