Skip to content

Commit

Permalink
Tweaks to file provider
Browse files Browse the repository at this point in the history
  • Loading branch information
stianst committed Mar 10, 2015
1 parent b791607 commit f6a2c23
Show file tree
Hide file tree
Showing 9 changed files with 48 additions and 37 deletions.
Expand Up @@ -727,7 +727,6 @@ private static void updateCredential(UserModel user, CredentialRepresentation cr
hashedCred.setHashIterations(cred.getHashIterations());
try {
if (cred.getSalt() != null) hashedCred.setSalt(Base64.decode(cred.getSalt()));
// hashedCred.setSalt(Base64.decode(cred.getSalt()));
} catch (IOException ioe) {
throw new RuntimeException(ioe);
}
Expand Down
Expand Up @@ -1028,13 +1028,17 @@ public ApplicationModel getMasterAdminApp() {

@Override
public void setMasterAdminApp(ApplicationModel app) {
if (app == null) throw new NullPointerException("app == null");
String appId = app.getId();
if (appId == null) {
throw new IllegalStateException("Master Admin app not initialized.");
if (app == null) {
realm.setAdminAppId(null);
this.masterAdminApp = null;
} else {
String appId = app.getId();
if (appId == null) {
throw new IllegalStateException("Master Admin app not initialized.");
}
realm.setAdminAppId(appId);
this.masterAdminApp = app;
}
realm.setAdminAppId(appId);
this.masterAdminApp = app;
}

@Override
Expand Down
Expand Up @@ -24,8 +24,6 @@
import org.keycloak.testsuite.rule.AbstractKeycloakRule;

import java.net.URL;
import org.keycloak.representations.idm.RealmRepresentation;
import org.keycloak.testutils.KeycloakServer;

/**
* @author pedroigor
Expand All @@ -34,9 +32,7 @@ public class BrokerKeyCloakRule extends AbstractKeycloakRule {

@Override
protected void configure(KeycloakSession session, RealmManager manager, RealmModel adminRealm) {
//server.importRealm(getClass().getResourceAsStream("/broker-test/test-realm-with-broker.json"));
RealmRepresentation realmWithBroker = KeycloakServer.loadJson(getClass().getResourceAsStream("/broker-test/test-realm-with-broker.json"), RealmRepresentation.class);
manager.importRealm(realmWithBroker);
server.importRealm(getClass().getResourceAsStream("/broker-test/test-realm-with-broker.json"));
URL url = getClass().getResource("/broker-test/test-app-keycloak.json");
deployApplication("test-app", "/test-app", UserSessionStatusServlet.class, url.getPath(), "manager");
deployApplication("test-app-allowed-providers", "/test-app-allowed-providers", UserSessionStatusServlet.class, url.getPath(), "manager");
Expand Down
Expand Up @@ -17,7 +17,6 @@

import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
import org.keycloak.representations.idm.RealmRepresentation;

/**
* @author pedroigor
Expand All @@ -37,9 +36,7 @@ protected void configureServer(KeycloakServer server) {

@Override
protected void configure(KeycloakSession session, RealmManager manager, RealmModel adminRealm) {
//server.importRealm(getClass().getResourceAsStream("/broker-test/test-broker-realm-with-kc-oidc.json"));
RealmRepresentation realmWithOIDC = KeycloakServer.loadJson(getClass().getResourceAsStream("/broker-test/test-broker-realm-with-kc-oidc.json"), RealmRepresentation.class);
manager.importRealm(realmWithOIDC);
server.importRealm(getClass().getResourceAsStream("/broker-test/test-broker-realm-with-kc-oidc.json"));
}
};

Expand Down
Expand Up @@ -15,7 +15,6 @@

import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.fail;
import org.keycloak.representations.idm.RealmRepresentation;

/**
* @author pedroigor
Expand All @@ -32,9 +31,7 @@ protected void configureServer(KeycloakServer server) {

@Override
protected void configure(KeycloakSession session, RealmManager manager, RealmModel adminRealm) {
//server.importRealm(getClass().getResourceAsStream("/broker-test/test-broker-realm-with-kc-oidc.json"));
RealmRepresentation realmWithOIDC = KeycloakServer.loadJson(getClass().getResourceAsStream("/broker-test/test-broker-realm-with-kc-oidc.json"), RealmRepresentation.class);
manager.importRealm(realmWithOIDC);
server.importRealm(getClass().getResourceAsStream("/broker-test/test-broker-realm-with-kc-oidc.json"));
}
};

Expand Down
Expand Up @@ -19,7 +19,6 @@
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertNull;
import static org.junit.Assert.fail;
import org.keycloak.representations.idm.RealmRepresentation;

/**
* @author pedroigor
Expand All @@ -36,9 +35,7 @@ protected void configureServer(KeycloakServer server) {

@Override
protected void configure(KeycloakSession session, RealmManager manager, RealmModel adminRealm) {
//server.importRealm(getClass().getResourceAsStream("/broker-test/test-broker-realm-with-saml.json"));
RealmRepresentation realmWithSAML = KeycloakServer.loadJson(getClass().getResourceAsStream("/broker-test/test-broker-realm-with-saml.json"), RealmRepresentation.class);
manager.importRealm(realmWithSAML);
server.importRealm(getClass().getResourceAsStream("/broker-test/test-broker-realm-with-saml.json"));
}
};

Expand Down
Expand Up @@ -19,7 +19,6 @@
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertNull;
import static org.junit.Assert.fail;
import org.keycloak.representations.idm.RealmRepresentation;

/**
* @author pedroigor
Expand All @@ -36,9 +35,7 @@ protected void configureServer(KeycloakServer server) {

@Override
protected void configure(KeycloakSession session, RealmManager manager, RealmModel adminRealm) {
//server.importRealm(getClass().getResourceAsStream("/broker-test/test-broker-realm-with-saml-with-signature.json"));
RealmRepresentation realmWithOIDC = KeycloakServer.loadJson(getClass().getResourceAsStream("/broker-test/test-broker-realm-with-saml-with-signature.json"), RealmRepresentation.class);
manager.importRealm(realmWithOIDC);
server.importRealm(getClass().getResourceAsStream("/broker-test/test-broker-realm-with-saml-with-signature.json"));
}
};

Expand Down
Expand Up @@ -20,6 +20,9 @@
import org.keycloak.representations.idm.CredentialRepresentation;
import org.keycloak.services.managers.RealmManager;

import java.security.KeyPair;
import java.security.KeyPairGenerator;
import java.security.NoSuchAlgorithmException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashSet;
Expand All @@ -44,20 +47,26 @@ public void test1CreateRealm() throws Exception {
realmModel.setAccessCodeLifespanUserAction(600);
realmModel.setEnabled(true);
realmModel.setName("JUGGLER");
// realmModel.setPrivateKeyPem("0234234");
// realmModel.setPublicKeyPem("0234234");

KeyPair keyPair = generateKeypair();

realmModel.setPrivateKey(keyPair.getPrivate());
realmModel.setPublicKey(keyPair.getPublic());
realmModel.setAccessTokenLifespan(1000);
realmModel.addDefaultRole("foo");

session.getTransaction().commit();
resetSession();

realmModel = realmManager.getRealm(realmModel.getId());
assertNotNull(realmModel);
Assert.assertEquals(realmModel.getAccessCodeLifespan(), 100);
Assert.assertEquals(600, realmModel.getAccessCodeLifespanUserAction());
Assert.assertEquals(realmModel.getAccessTokenLifespan(), 1000);
Assert.assertEquals(realmModel.isEnabled(), true);
Assert.assertEquals(realmModel.getName(), "JUGGLER");
// Assert.assertEquals(realmModel.getPrivateKeyPem(), "0234234");
// Assert.assertEquals(realmModel.getPublicKeyPem(), "0234234");
Assert.assertArrayEquals(realmModel.getPrivateKey().getEncoded(), keyPair.getPrivate().getEncoded());
Assert.assertArrayEquals(realmModel.getPublicKey().getEncoded(), keyPair.getPublic().getEncoded());
Assert.assertEquals(1, realmModel.getDefaultRoles().size());
Assert.assertEquals("foo", realmModel.getDefaultRoles().get(0));
}
Expand All @@ -69,8 +78,9 @@ public void testRealmListing() throws Exception {
realmModel.setAccessCodeLifespanUserAction(600);
realmModel.setEnabled(true);
realmModel.setName("JUGGLER");
// realmModel.setPrivateKeyPem("0234234");
// realmModel.setPublicKeyPem("0234234");
KeyPair keyPair = generateKeypair();
realmModel.setPrivateKey(keyPair.getPrivate());
realmModel.setPublicKey(keyPair.getPublic());
realmModel.setAccessTokenLifespan(1000);
realmModel.addDefaultRole("foo");

Expand All @@ -81,16 +91,16 @@ public void testRealmListing() throws Exception {
Assert.assertEquals(realmModel.getAccessTokenLifespan(), 1000);
Assert.assertEquals(realmModel.isEnabled(), true);
Assert.assertEquals(realmModel.getName(), "JUGGLER");
// Assert.assertEquals(realmModel.getPrivateKeyPem(), "0234234");
// Assert.assertEquals(realmModel.getPublicKeyPem(), "0234234");
Assert.assertArrayEquals(realmModel.getPrivateKey().getEncoded(), keyPair.getPrivate().getEncoded());
Assert.assertArrayEquals(realmModel.getPublicKey().getEncoded(), keyPair.getPublic().getEncoded());
Assert.assertEquals(1, realmModel.getDefaultRoles().size());
Assert.assertEquals("foo", realmModel.getDefaultRoles().get(0));

realmModel.getId();

commit();
List<RealmModel> realms = model.getRealms();
// Assert.assertEquals(realms.size(), 2);
Assert.assertEquals(realms.size(), 2);
}


Expand Down Expand Up @@ -738,4 +748,8 @@ public void testRealmRoleCollisions() throws Exception {
resetSession();
}

private KeyPair generateKeypair() throws NoSuchAlgorithmException {
return KeyPairGenerator.getInstance("RSA").generateKeyPair();
}

}
Expand Up @@ -8,6 +8,7 @@
import io.undertow.servlet.api.WebResourceCollection;
import org.jboss.resteasy.spi.ResteasyDeployment;
import org.junit.rules.ExternalResource;
import org.junit.rules.TemporaryFolder;
import org.keycloak.Config;
import org.keycloak.adapters.KeycloakConfigResolver;
import org.keycloak.models.KeycloakSession;
Expand Down Expand Up @@ -37,9 +38,15 @@
*/
public abstract class AbstractKeycloakRule extends ExternalResource {

protected TemporaryFolder temporaryFolder;

protected KeycloakServer server;

protected void before() throws Throwable {
temporaryFolder = new TemporaryFolder();
temporaryFolder.create();
System.setProperty("keycloak.tmp.dir", temporaryFolder.newFolder().getAbsolutePath());

server = new KeycloakServer();

configureServer(server);
Expand Down Expand Up @@ -210,6 +217,9 @@ protected void after() {
removeTestRealms();
stopServer();
Time.setOffset(0);

temporaryFolder.delete();
System.getProperties().remove("keycloak.tmp.dir");
}

protected void removeTestRealms() {
Expand Down

0 comments on commit f6a2c23

Please sign in to comment.