Search in sources :

Example 11 with RealmConfig

use of com.hazelcast.config.security.RealmConfig in project hazelcast by hazelcast.

the class ClientCallbackHandler method handleCallback.

protected void handleCallback(Callback cb) throws UnsupportedCallbackException {
    if (cb instanceof RealmConfigCallback) {
        RealmConfigCallback realmCb = (RealmConfigCallback) cb;
        RealmConfig realmCfg = null;
        if (clientConfig != null && clientConfig.getSecurityConfig() != null) {
            realmCfg = clientConfig.getSecurityConfig().getRealmConfig(realmCb.getRealmName());
        }
        realmCb.setRealmConfig(realmCfg);
    } else {
        throw new UnsupportedCallbackException(cb);
    }
}
Also used : RealmConfig(com.hazelcast.config.security.RealmConfig) RealmConfigCallback(com.hazelcast.security.RealmConfigCallback) UnsupportedCallbackException(javax.security.auth.callback.UnsupportedCallbackException)

Example 12 with RealmConfig

use of com.hazelcast.config.security.RealmConfig 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 13 with RealmConfig

use of com.hazelcast.config.security.RealmConfig 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 14 with RealmConfig

use of com.hazelcast.config.security.RealmConfig 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 15 with RealmConfig

use of com.hazelcast.config.security.RealmConfig 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

RealmConfig (com.hazelcast.config.security.RealmConfig)23 Test (org.junit.Test)18 QuickTest (com.hazelcast.test.annotation.QuickTest)16 JaasAuthenticationConfig (com.hazelcast.config.security.JaasAuthenticationConfig)12 KerberosIdentityConfig (com.hazelcast.config.security.KerberosIdentityConfig)11 ParallelJVMTest (com.hazelcast.test.annotation.ParallelJVMTest)11 KerberosAuthenticationConfig (com.hazelcast.config.security.KerberosAuthenticationConfig)10 SimpleAuthenticationConfig (com.hazelcast.config.security.SimpleAuthenticationConfig)10 CPSubsystemConfig (com.hazelcast.config.cp.CPSubsystemConfig)9 FencedLockConfig (com.hazelcast.config.cp.FencedLockConfig)9 SemaphoreConfig (com.hazelcast.config.cp.SemaphoreConfig)9 LdapAuthenticationConfig (com.hazelcast.config.security.LdapAuthenticationConfig)9 TokenIdentityConfig (com.hazelcast.config.security.TokenIdentityConfig)9 TlsAuthenticationConfig (com.hazelcast.config.security.TlsAuthenticationConfig)7 JetConfig (com.hazelcast.jet.config.JetConfig)7 LoginModuleConfig (com.hazelcast.config.LoginModuleConfig)5 Config (com.hazelcast.config.Config)3 CredentialsFactoryConfig (com.hazelcast.config.CredentialsFactoryConfig)3 PartitionGroupConfig (com.hazelcast.config.PartitionGroupConfig)3 HashSet (java.util.HashSet)3