mirror of
https://github.com/nsacyber/HIRS.git
synced 2025-02-21 18:06:42 +00:00
Latest changes that fixes little issues
This commit is contained in:
parent
9c0d934331
commit
c046851e07
@ -67,6 +67,9 @@ public abstract class AbstractEntity implements Serializable {
|
|||||||
* @return creation time
|
* @return creation time
|
||||||
*/
|
*/
|
||||||
public Date getCreateTime() {
|
public Date getCreateTime() {
|
||||||
|
if (createTime == null) {
|
||||||
|
createTime = new Date();
|
||||||
|
}
|
||||||
return (Date) createTime.clone();
|
return (Date) createTime.clone();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -8,6 +8,7 @@ import hirs.attestationca.persist.entity.manager.ComponentResultRepository;
|
|||||||
import hirs.attestationca.persist.entity.manager.PolicyRepository;
|
import hirs.attestationca.persist.entity.manager.PolicyRepository;
|
||||||
import hirs.attestationca.persist.entity.manager.ReferenceDigestValueRepository;
|
import hirs.attestationca.persist.entity.manager.ReferenceDigestValueRepository;
|
||||||
import hirs.attestationca.persist.entity.manager.ReferenceManifestRepository;
|
import hirs.attestationca.persist.entity.manager.ReferenceManifestRepository;
|
||||||
|
import hirs.attestationca.persist.entity.manager.SupplyChainValidationRepository;
|
||||||
import hirs.attestationca.persist.entity.manager.SupplyChainValidationSummaryRepository;
|
import hirs.attestationca.persist.entity.manager.SupplyChainValidationSummaryRepository;
|
||||||
import hirs.attestationca.persist.entity.userdefined.Device;
|
import hirs.attestationca.persist.entity.userdefined.Device;
|
||||||
import hirs.attestationca.persist.entity.userdefined.PolicySettings;
|
import hirs.attestationca.persist.entity.userdefined.PolicySettings;
|
||||||
@ -47,6 +48,7 @@ public class SupplyChainValidationService {
|
|||||||
private ReferenceDigestValueRepository referenceDigestValueRepository;
|
private ReferenceDigestValueRepository referenceDigestValueRepository;
|
||||||
private ComponentResultRepository componentResultRepository;
|
private ComponentResultRepository componentResultRepository;
|
||||||
private CertificateRepository certificateRepository;
|
private CertificateRepository certificateRepository;
|
||||||
|
private SupplyChainValidationRepository supplyChainValidationRepository;
|
||||||
private SupplyChainValidationSummaryRepository supplyChainValidationSummaryRepository;
|
private SupplyChainValidationSummaryRepository supplyChainValidationSummaryRepository;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -57,6 +59,7 @@ public class SupplyChainValidationService {
|
|||||||
* @param certificateRepository the cert manager
|
* @param certificateRepository the cert manager
|
||||||
* @param componentResultRepository the comp result manager
|
* @param componentResultRepository the comp result manager
|
||||||
* @param referenceManifestRepository the RIM manager
|
* @param referenceManifestRepository the RIM manager
|
||||||
|
* @param supplyChainValidationRepository the scv manager
|
||||||
* @param supplyChainValidationSummaryRepository the summary manager
|
* @param supplyChainValidationSummaryRepository the summary manager
|
||||||
* @param referenceDigestValueRepository the even manager
|
* @param referenceDigestValueRepository the even manager
|
||||||
*/
|
*/
|
||||||
@ -68,6 +71,7 @@ public class SupplyChainValidationService {
|
|||||||
final CertificateRepository certificateRepository,
|
final CertificateRepository certificateRepository,
|
||||||
final ComponentResultRepository componentResultRepository,
|
final ComponentResultRepository componentResultRepository,
|
||||||
final ReferenceManifestRepository referenceManifestRepository,
|
final ReferenceManifestRepository referenceManifestRepository,
|
||||||
|
final SupplyChainValidationRepository supplyChainValidationRepository,
|
||||||
final SupplyChainValidationSummaryRepository supplyChainValidationSummaryRepository,
|
final SupplyChainValidationSummaryRepository supplyChainValidationSummaryRepository,
|
||||||
final ReferenceDigestValueRepository referenceDigestValueRepository) {
|
final ReferenceDigestValueRepository referenceDigestValueRepository) {
|
||||||
this.caCredentialRepository = caCredentialRepository;
|
this.caCredentialRepository = caCredentialRepository;
|
||||||
@ -75,6 +79,7 @@ public class SupplyChainValidationService {
|
|||||||
this.certificateRepository = certificateRepository;
|
this.certificateRepository = certificateRepository;
|
||||||
this.componentResultRepository = componentResultRepository;
|
this.componentResultRepository = componentResultRepository;
|
||||||
this.referenceManifestRepository = referenceManifestRepository;
|
this.referenceManifestRepository = referenceManifestRepository;
|
||||||
|
this.supplyChainValidationRepository = supplyChainValidationRepository;
|
||||||
this.supplyChainValidationSummaryRepository = supplyChainValidationSummaryRepository;
|
this.supplyChainValidationSummaryRepository = supplyChainValidationSummaryRepository;
|
||||||
this.referenceDigestValueRepository = referenceDigestValueRepository;
|
this.referenceDigestValueRepository = referenceDigestValueRepository;
|
||||||
}
|
}
|
||||||
|
@ -266,8 +266,8 @@ public class ReferenceManifestDetailsPageController extends PageController<Refer
|
|||||||
baseRim.setAssociatedRim(support.getId());
|
baseRim.setAssociatedRim(support.getId());
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
support = (SupportReferenceManifest) referenceManifestRepository
|
support = referenceManifestRepository
|
||||||
.getReferenceById(baseRim.getAssociatedRim());
|
.getSupportRimEntityById(baseRim.getAssociatedRim());
|
||||||
}
|
}
|
||||||
// going to have to pull the filename and grab that from the DB
|
// going to have to pull the filename and grab that from the DB
|
||||||
// to get the id to make the link
|
// to get the id to make the link
|
||||||
@ -319,8 +319,8 @@ public class ReferenceManifestDetailsPageController extends PageController<Refer
|
|||||||
data.put("issuerID", cert.getId().toString());
|
data.put("issuerID", cert.getId().toString());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} catch (NullPointerException e) {
|
} catch (NullPointerException npEx) {
|
||||||
log.warn("Unable to link signing certificate: " + e.getMessage());
|
log.warn("Unable to link signing certificate: " + npEx.getMessage());
|
||||||
}
|
}
|
||||||
return data;
|
return data;
|
||||||
}
|
}
|
||||||
|
@ -1,18 +1,15 @@
|
|||||||
package hirs.attestationca.portal.page.controllers;
|
package hirs.attestationca.portal.page.controllers;
|
||||||
|
|
||||||
import hirs.attestationca.persist.CriteriaModifier;
|
|
||||||
import hirs.attestationca.persist.DBManagerException;
|
import hirs.attestationca.persist.DBManagerException;
|
||||||
import hirs.attestationca.persist.FilteredRecordsList;
|
import hirs.attestationca.persist.FilteredRecordsList;
|
||||||
import hirs.attestationca.persist.entity.manager.ReferenceDigestValueRepository;
|
import hirs.attestationca.persist.entity.manager.ReferenceDigestValueRepository;
|
||||||
import hirs.attestationca.persist.entity.manager.ReferenceManifestRepository;
|
import hirs.attestationca.persist.entity.manager.ReferenceManifestRepository;
|
||||||
import hirs.attestationca.persist.entity.userdefined.Certificate;
|
|
||||||
import hirs.attestationca.persist.entity.userdefined.ReferenceManifest;
|
import hirs.attestationca.persist.entity.userdefined.ReferenceManifest;
|
||||||
import hirs.attestationca.persist.entity.userdefined.rim.BaseReferenceManifest;
|
import hirs.attestationca.persist.entity.userdefined.rim.BaseReferenceManifest;
|
||||||
import hirs.attestationca.persist.entity.userdefined.rim.ReferenceDigestValue;
|
import hirs.attestationca.persist.entity.userdefined.rim.ReferenceDigestValue;
|
||||||
import hirs.attestationca.persist.entity.userdefined.rim.SupportReferenceManifest;
|
import hirs.attestationca.persist.entity.userdefined.rim.SupportReferenceManifest;
|
||||||
import hirs.attestationca.portal.datatables.DataTableInput;
|
import hirs.attestationca.portal.datatables.DataTableInput;
|
||||||
import hirs.attestationca.portal.datatables.DataTableResponse;
|
import hirs.attestationca.portal.datatables.DataTableResponse;
|
||||||
import hirs.attestationca.portal.datatables.OrderedListQueryDataTableAdapter;
|
|
||||||
import hirs.attestationca.portal.page.Page;
|
import hirs.attestationca.portal.page.Page;
|
||||||
import hirs.attestationca.portal.page.PageController;
|
import hirs.attestationca.portal.page.PageController;
|
||||||
import hirs.attestationca.portal.page.PageMessages;
|
import hirs.attestationca.portal.page.PageMessages;
|
||||||
@ -20,13 +17,9 @@ import hirs.attestationca.portal.page.params.NoPageParams;
|
|||||||
import hirs.utils.tpm.eventlog.TCGEventLog;
|
import hirs.utils.tpm.eventlog.TCGEventLog;
|
||||||
import hirs.utils.tpm.eventlog.TpmPcrEvent;
|
import hirs.utils.tpm.eventlog.TpmPcrEvent;
|
||||||
import jakarta.persistence.EntityManager;
|
import jakarta.persistence.EntityManager;
|
||||||
import jakarta.persistence.criteria.CriteriaBuilder;
|
|
||||||
import jakarta.persistence.criteria.CriteriaQuery;
|
|
||||||
import jakarta.persistence.criteria.Root;
|
|
||||||
import jakarta.servlet.http.HttpServletResponse;
|
import jakarta.servlet.http.HttpServletResponse;
|
||||||
import jakarta.validation.Valid;
|
import jakarta.validation.Valid;
|
||||||
import lombok.extern.log4j.Log4j2;
|
import lombok.extern.log4j.Log4j2;
|
||||||
import org.hibernate.Session;
|
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.data.domain.PageRequest;
|
import org.springframework.data.domain.PageRequest;
|
||||||
import org.springframework.data.domain.Pageable;
|
import org.springframework.data.domain.Pageable;
|
||||||
@ -45,7 +38,6 @@ import org.springframework.web.servlet.mvc.support.RedirectAttributes;
|
|||||||
import org.springframework.web.servlet.view.RedirectView;
|
import org.springframework.web.servlet.view.RedirectView;
|
||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.lang.ref.Reference;
|
|
||||||
import java.net.URISyntaxException;
|
import java.net.URISyntaxException;
|
||||||
import java.nio.charset.StandardCharsets;
|
import java.nio.charset.StandardCharsets;
|
||||||
import java.security.NoSuchAlgorithmException;
|
import java.security.NoSuchAlgorithmException;
|
||||||
@ -124,18 +116,6 @@ public class ReferenceManifestPageController extends PageController<NoPageParams
|
|||||||
String orderColumnName = input.getOrderColumnName();
|
String orderColumnName = input.getOrderColumnName();
|
||||||
log.info("Ordering on column: " + orderColumnName);
|
log.info("Ordering on column: " + orderColumnName);
|
||||||
|
|
||||||
// check that the alert is not archived and that it is in the specified report
|
|
||||||
CriteriaModifier criteriaModifier = new CriteriaModifier() {
|
|
||||||
@Override
|
|
||||||
public void modify(final CriteriaQuery criteriaQuery) {
|
|
||||||
Session session = entityManager.unwrap(Session.class);
|
|
||||||
CriteriaBuilder cb = session.getCriteriaBuilder();
|
|
||||||
Root<ReferenceManifest> rimRoot = criteriaQuery.from(Reference.class);
|
|
||||||
|
|
||||||
criteriaQuery.select(rimRoot).distinct(true).where(cb.isNull(rimRoot.get(Certificate.ARCHIVE_FIELD)));
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
log.info("Querying with the following dataTableInput: " + input.toString());
|
log.info("Querying with the following dataTableInput: " + input.toString());
|
||||||
|
|
||||||
FilteredRecordsList<ReferenceManifest> records = new FilteredRecordsList<>();
|
FilteredRecordsList<ReferenceManifest> records = new FilteredRecordsList<>();
|
||||||
@ -144,15 +124,14 @@ public class ReferenceManifestPageController extends PageController<NoPageParams
|
|||||||
org.springframework.data.domain.Page<ReferenceManifest> pagedResult = referenceManifestRepository.findAll(paging);
|
org.springframework.data.domain.Page<ReferenceManifest> pagedResult = referenceManifestRepository.findAll(paging);
|
||||||
|
|
||||||
if (pagedResult.hasContent()) {
|
if (pagedResult.hasContent()) {
|
||||||
records.addAll(pagedResult.getContent());
|
for (ReferenceManifest manifest : pagedResult.getContent()) {
|
||||||
|
if (!manifest.getRimType().equals(ReferenceManifest.MEASUREMENT_RIM)) {
|
||||||
|
records.add(manifest);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
records.setRecordsTotal(input.getLength());
|
records.setRecordsTotal(input.getLength());
|
||||||
records.setRecordsFiltered(referenceManifestRepository.count());
|
records.setRecordsFiltered(referenceManifestRepository.count());
|
||||||
// FilteredRecordsList<ReferenceManifest> records
|
|
||||||
// = OrderedListQueryDataTableAdapter.getOrderedList(
|
|
||||||
// ReferenceManifest.class,
|
|
||||||
// this.referenceManifestRepository,
|
|
||||||
// input, orderColumnName, criteriaModifier);
|
|
||||||
|
|
||||||
log.debug("Returning list of size: " + records.size());
|
log.debug("Returning list of size: " + records.size());
|
||||||
return new DataTableResponse<>(records, input);
|
return new DataTableResponse<>(records, input);
|
||||||
|
@ -1,3 +1,15 @@
|
|||||||
<div class="container">
|
<%@page contentType="text/html" pageEncoding="UTF-8"%>
|
||||||
Page Not Found! <a href="/devices">Devices</a>
|
|
||||||
</div>
|
<%-- JSP TAGS --%>
|
||||||
|
<%@taglib prefix="c" uri="jakarta.tags.core" %>
|
||||||
|
<%@taglib prefix="my" tagdir="/WEB-INF/tags"%>
|
||||||
|
|
||||||
|
<%-- CONTENT --%>
|
||||||
|
<my:page>
|
||||||
|
<jsp:attribute name="pageHeaderTitle">Error - 404</jsp:attribute>
|
||||||
|
|
||||||
|
<jsp:body>
|
||||||
|
<!--<div> Exception Message: <c:out value="${exception}"</c:out></div>
|
||||||
|
<div> from URL -> <span th:text="${url}"</span></div>-->
|
||||||
|
</jsp:body>
|
||||||
|
</my:page>
|
@ -10,12 +10,16 @@
|
|||||||
<jsp:body>
|
<jsp:body>
|
||||||
<h3 class="content-subhead" id="alerttype">Documentation</h3>
|
<h3 class="content-subhead" id="alerttype">Documentation</h3>
|
||||||
|
|
||||||
|
<!--
|
||||||
<ul>
|
<ul>
|
||||||
<c:forEach items="${docs}" var="doc">
|
<c:forEach items="${docs}" var="doc">
|
||||||
<li><a href="${baseURL}/docs/${doc.name}">${doc.name}</a></li>
|
<li><a href="${baseURL}/docs/${doc.name}">${doc.name}</a></li>
|
||||||
</c:forEach>
|
</c:forEach>
|
||||||
</ul>
|
</ul>
|
||||||
|
-->
|
||||||
|
|
||||||
<p>For more documentation on the project, you may visit the wiki section of our code repository.</p>
|
<p>
|
||||||
|
For more documentation on the project, you may visit the wiki section of our <a href="https://github.com/nsacyber/HIRS/wiki">code repository</a>.
|
||||||
|
</p>
|
||||||
</jsp:body>
|
</jsp:body>
|
||||||
</my:page>
|
</my:page>
|
Loading…
x
Reference in New Issue
Block a user