@Override public void release() throws KrbException { if (backend != null) { backend.stop(); } }
protected void testStore(IdentityBackend backend) throws KrbException { KrbIdentity kid = BackendTestUtil.createOneIdentity(TEST_PRINCIPAL); backend.addIdentity(kid); // clear the identity cache. backend.release(); KrbIdentity kid2 = backend.getIdentity(TEST_PRINCIPAL); assertThat(kid).isEqualTo(kid2); //tearDown backend.deleteIdentity(TEST_PRINCIPAL); }
protected void cleanIdentities(IdentityBackend backend) throws KrbException { Iterable<String> identities = backend.getIdentities(); Iterator<String> iterator = identities.iterator(); while (iterator.hasNext()) { backend.deleteIdentity(iterator.next()); } } }
@Override public void modifyPrincipal(String principal, KOptions kOptions) throws KrbException { principal = fixPrincipal(principal); KrbIdentity identity = backend.getIdentity(principal); if (identity == null) { throw new KrbException("Principal \"" + principal + "\" does not exist."); } AdminHelper.updateIdentity(identity, kOptions); backend.updateIdentity(identity); }
protected void testGetIdentities(IdentityBackend backend) throws KrbException { KrbIdentity[] identities = BackendTestUtil.createManyIdentities(); for (KrbIdentity identity : identities) { backend.addIdentity(identity); } // clear the identity cache. backend.release(); Iterable<String> principals = backend.getIdentities(); Iterator<String> iterator = principals.iterator(); List<String> principalList = new LinkedList<>(); while (iterator.hasNext()) { principalList.add(iterator.next()); } assertThat(principalList).hasSize(identities.length) .contains(identities[0].getPrincipalName()) .contains(identities[1].getPrincipalName()) .contains(identities[2].getPrincipalName()) .contains(identities[3].getPrincipalName()) .contains(identities[4].getPrincipalName()); //tearDown for (KrbIdentity identity : identities) { backend.deleteIdentity(identity.getPrincipalName()); } }
@Override public KrbIdentity getPrincipal(String principalName) throws KrbException { KrbIdentity identity = backend.getIdentity(principalName); return identity; }
@Override public void renamePrincipal(String oldPrincipalName, String newPrincipalName) throws KrbException { oldPrincipalName = fixPrincipal(oldPrincipalName); newPrincipalName = fixPrincipal(newPrincipalName); KrbIdentity oldIdentity = backend.getIdentity(newPrincipalName); if (oldIdentity != null) { throw new KrbException("Principal \"" + oldIdentity.getPrincipalName() + "\" is already exist."); } KrbIdentity identity = backend.getIdentity(oldPrincipalName); if (identity == null) { throw new KrbException("Principal \"" + oldPrincipalName + "\" does not exist."); } backend.deleteIdentity(oldPrincipalName); identity.setPrincipalName(newPrincipalName); identity.setPrincipal(new PrincipalName(newPrincipalName)); backend.addIdentity(identity); }
@Override public void exportKeytab(File keytabFile) throws KrbException { Keytab keytab = AdminHelper.createOrLoadKeytab(keytabFile); Iterable<String> principals = backend.getIdentities(); for (String principal : principals) { KrbIdentity identity = backend.getIdentity(principal); if (identity != null) { AdminHelper.exportToKeytab(keytab, identity); } } AdminHelper.storeKeytab(keytab, keytabFile); }
public static void createManyIdentities(IdentityBackend backend, int count) throws KrbException { int howMany = count > 0 ? count : 20; List<KrbIdentity> identities = createManyIdentities(howMany); for (KrbIdentity identity : identities) { backend.addIdentity(identity); } }
backend.setConfig(backendConfig); backend.initialize(); return backend;
protected void doStart() throws Exception { backend.start(); }
@Override public List<String> getPrincipals() throws KrbException { Iterable<String> principalNames = backend.getIdentities(); List<String> principalList = new LinkedList<>(); Iterator<String> iterator = principalNames.iterator(); while (iterator.hasNext()) { principalList.add(iterator.next()); } return principalList; }
@Override public void deletePrincipal(String principal) throws KrbException { principal = fixPrincipal(principal); backend.deleteIdentity(principal); }
private void prepareBackend() throws KrbException { File testDir = new File(System.getProperty("test.dir", "target")); jsonBackendFile = new File(testDir, "json-identity-backend-file"); String jsonBackendFileString = jsonBackendFile.getAbsolutePath(); Config backendConfig = new Conf(); backendConfig.setString(JsonIdentityBackend.JSON_IDENTITY_BACKEND_DIR, jsonBackendFileString); backend = new JsonIdentityBackend(backendConfig); backend.initialize(); }
@Override public void modifyPrincipal(String principal, KOptions kOptions) throws KrbException { principal = fixPrincipal(principal); KrbIdentity identity = backend.getIdentity(principal); if (identity == null) { throw new KrbException("Principal \"" + principal + "\" does not exist."); } AdminHelper.updateIdentity(identity, kOptions); backend.updateIdentity(identity); }
protected void testGetIdentities(IdentityBackend backend) throws KrbException { KrbIdentity[] identities = BackendTestUtil.createManyIdentities(); for (KrbIdentity identity : identities) { backend.addIdentity(identity); } // clear the identity cache. backend.release(); Iterable<String> principals = backend.getIdentities(); Iterator<String> iterator = principals.iterator(); List<String> principalList = new LinkedList<>(); while (iterator.hasNext()) { principalList.add(iterator.next()); } assertThat(principalList).hasSize(identities.length) .contains(identities[0].getPrincipalName()) .contains(identities[1].getPrincipalName()) .contains(identities[2].getPrincipalName()) .contains(identities[3].getPrincipalName()) .contains(identities[4].getPrincipalName()); //tearDown for (KrbIdentity identity : identities) { backend.deleteIdentity(identity.getPrincipalName()); } }
@Override public KrbIdentity getPrincipal(String principalName) throws KrbException { KrbIdentity identity = backend.getIdentity(principalName); return identity; }
@Override public void renamePrincipal(String oldPrincipalName, String newPrincipalName) throws KrbException { oldPrincipalName = fixPrincipal(oldPrincipalName); newPrincipalName = fixPrincipal(newPrincipalName); KrbIdentity oldIdentity = backend.getIdentity(newPrincipalName); if (oldIdentity != null) { throw new KrbException("Principal \"" + oldIdentity.getPrincipalName() + "\" is already exist."); } KrbIdentity identity = backend.getIdentity(oldPrincipalName); if (identity == null) { throw new KrbException("Principal \"" + oldPrincipalName + "\" does not exist."); } backend.deleteIdentity(oldPrincipalName); identity.setPrincipalName(newPrincipalName); identity.setPrincipal(new PrincipalName(newPrincipalName)); backend.addIdentity(identity); }