diff --git a/HIRS_AttestationCA/src/main/java/hirs/attestationca/persist/entity/manager/ComponentAttributeRepository.java b/HIRS_AttestationCA/src/main/java/hirs/attestationca/persist/entity/manager/ComponentAttributeRepository.java
index 69ac13a0..67245188 100644
--- a/HIRS_AttestationCA/src/main/java/hirs/attestationca/persist/entity/manager/ComponentAttributeRepository.java
+++ b/HIRS_AttestationCA/src/main/java/hirs/attestationca/persist/entity/manager/ComponentAttributeRepository.java
@@ -14,4 +14,11 @@ public interface ComponentAttributeRepository extends JpaRepository<ComponentAtt
      * @return a list of attribute results
      */
     List<ComponentAttributeResult> findByComponentId(UUID componentId);
+
+    /**
+     * Query to look up Attribute Results based on the validation id.
+     * @param provisionSessionId uuid for the supplychainvalidationsummary
+     * @return a list of attribute results
+     */
+    List<ComponentAttributeResult> findByProvisionSessionId(UUID provisionSessionId);
 }
diff --git a/HIRS_AttestationCA/src/main/java/hirs/attestationca/persist/entity/userdefined/SupplyChainValidationSummary.java b/HIRS_AttestationCA/src/main/java/hirs/attestationca/persist/entity/userdefined/SupplyChainValidationSummary.java
index 1fe1e0cf..8793fe37 100644
--- a/HIRS_AttestationCA/src/main/java/hirs/attestationca/persist/entity/userdefined/SupplyChainValidationSummary.java
+++ b/HIRS_AttestationCA/src/main/java/hirs/attestationca/persist/entity/userdefined/SupplyChainValidationSummary.java
@@ -46,6 +46,7 @@ public class SupplyChainValidationSummary extends ArchivableEntity {
 
     private static final String DEVICE_ID_FIELD = "device.id";
 
+    @Getter
     @Column
     @Enumerated(EnumType.STRING)
     private final AppraisalStatus.Status overallValidationResult;
@@ -58,6 +59,9 @@ public class SupplyChainValidationSummary extends ArchivableEntity {
             targetEntity = SupplyChainValidation.class, orphanRemoval = true)
     private final Set<SupplyChainValidation> validations;
 
+    @Column
+    private UUID provisionSessionId;
+
     /**
      * Default constructor necessary for Hibernate.
      */
@@ -177,6 +181,20 @@ public class SupplyChainValidationSummary extends ArchivableEntity {
         return new SupplyChainValidationSummary.Selector(certMan);
     }
 
+    /**
+     * Construct a new SupplyChainValidationSummary.
+     *
+     * @param device device that underwent supply chain validation
+     * @param validations a Collection of Validations that should comprise this summary; not null
+     * @param provisionSessionId randomly generated UUID to associate with results
+     */
+    public SupplyChainValidationSummary(final Device device,
+                                        final Collection<SupplyChainValidation> validations,
+                                        final UUID provisionSessionId) {
+        this(device, validations);
+        this.provisionSessionId = provisionSessionId;
+    }
+
     /**
      * Construct a new SupplyChainValidationSummary.
      *
@@ -212,13 +230,6 @@ public class SupplyChainValidationSummary extends ArchivableEntity {
         return new Device(this.device.getDeviceInfo());
     }
 
-    /**
-     * @return the overall appraisal result
-     */
-    public AppraisalStatus.Status getOverallValidationResult() {
-        return overallValidationResult;
-    }
-
     /**
      * @return the validations that this summary contains
      */
diff --git a/HIRS_AttestationCA/src/main/java/hirs/attestationca/persist/entity/userdefined/certificate/attributes/ComponentAttributeResult.java b/HIRS_AttestationCA/src/main/java/hirs/attestationca/persist/entity/userdefined/certificate/attributes/ComponentAttributeResult.java
index cc5ccc11..79b0ad52 100644
--- a/HIRS_AttestationCA/src/main/java/hirs/attestationca/persist/entity/userdefined/certificate/attributes/ComponentAttributeResult.java
+++ b/HIRS_AttestationCA/src/main/java/hirs/attestationca/persist/entity/userdefined/certificate/attributes/ComponentAttributeResult.java
@@ -5,6 +5,7 @@ import jakarta.persistence.Entity;
 import lombok.AccessLevel;
 import lombok.Getter;
 import lombok.NoArgsConstructor;
+import lombok.Setter;
 
 import java.util.UUID;
 
@@ -19,12 +20,14 @@ import java.util.UUID;
 public class ComponentAttributeResult  extends ArchivableEntity {
 
     private UUID componentId;
-    private UUID validationId;
+    @Setter
+    private UUID provisionSessionId;
     private String expectedValue;
     private String actualValue;
 
     /**
      * Default constructor that populates the expected and actual values.
+     * @param componentId id associated with component result
      * @param expectedValue platform certificate value
      * @param actualValue paccor value from the device
      */
diff --git a/HIRS_AttestationCA/src/main/java/hirs/attestationca/persist/service/SupplyChainValidationService.java b/HIRS_AttestationCA/src/main/java/hirs/attestationca/persist/service/SupplyChainValidationService.java
index 373e02d7..bdf23c46 100644
--- a/HIRS_AttestationCA/src/main/java/hirs/attestationca/persist/service/SupplyChainValidationService.java
+++ b/HIRS_AttestationCA/src/main/java/hirs/attestationca/persist/service/SupplyChainValidationService.java
@@ -35,6 +35,7 @@ import java.util.Iterator;
 import java.util.LinkedList;
 import java.util.List;
 import java.util.Map;
+import java.util.UUID;
 
 import static hirs.attestationca.persist.enums.AppraisalStatus.Status.FAIL;
 import static hirs.attestationca.persist.enums.AppraisalStatus.Status.PASS;
@@ -52,6 +53,7 @@ public class SupplyChainValidationService {
     private CertificateRepository certificateRepository;
     private SupplyChainValidationRepository supplyChainValidationRepository;
     private SupplyChainValidationSummaryRepository supplyChainValidationSummaryRepository;
+    private UUID provisionSessionId;
 
     /**
      * Constructor.
@@ -105,6 +107,7 @@ public class SupplyChainValidationService {
                                                             final Device device,
                                                             final List<ComponentInfo> componentInfos) {
         boolean acceptExpiredCerts = getPolicySettings().isExpiredCertificateValidationEnabled();
+        provisionSessionId = UUID.randomUUID();
         PlatformCredential baseCredential = null;
         SupplyChainValidation platformScv = null;
         SupplyChainValidation basePlatformScv = null;
@@ -235,7 +238,7 @@ public class SupplyChainValidationService {
                     platformScv = ValidationService.evaluatePCAttributesStatus(
                             baseCredential, device.getDeviceInfo(), ec,
                             certificateRepository, componentResultRepository,
-                            componentAttributeRepository, componentInfos);
+                            componentAttributeRepository, componentInfos, provisionSessionId);
                     validations.add(new SupplyChainValidation(
                             SupplyChainValidation.ValidationType.PLATFORM_CREDENTIAL,
                             platformScv.getValidationResult(), aes, platformScv.getMessage()));
@@ -262,7 +265,7 @@ public class SupplyChainValidationService {
         log.info("The validation finished, summarizing...");
         // Generate validation summary, save it, and return it.
         SupplyChainValidationSummary summary
-                = new SupplyChainValidationSummary(device, validations);
+                = new SupplyChainValidationSummary(device, validations, provisionSessionId);
         try {
             supplyChainValidationSummaryRepository.save(summary);
         } catch (DBManagerException dbMEx) {
diff --git a/HIRS_AttestationCA/src/main/java/hirs/attestationca/persist/service/ValidationService.java b/HIRS_AttestationCA/src/main/java/hirs/attestationca/persist/service/ValidationService.java
index 081ff71e..84b229f0 100644
--- a/HIRS_AttestationCA/src/main/java/hirs/attestationca/persist/service/ValidationService.java
+++ b/HIRS_AttestationCA/src/main/java/hirs/attestationca/persist/service/ValidationService.java
@@ -38,6 +38,7 @@ import java.util.LinkedList;
 import java.util.List;
 import java.util.Map;
 import java.util.Set;
+import java.util.UUID;
 
 @Log4j2
 public class ValidationService {
@@ -107,7 +108,8 @@ public class ValidationService {
             final CertificateRepository certificateRepository,
             final ComponentResultRepository componentResultRepository,
             final ComponentAttributeRepository componentAttributeRepository,
-            final List<ComponentInfo> componentInfos) {
+            final List<ComponentInfo> componentInfos,
+            final UUID provisionSessionId) {
         final SupplyChainValidation.ValidationType validationType
                 = SupplyChainValidation.ValidationType.PLATFORM_CREDENTIAL_ATTRIBUTES;
 
@@ -118,12 +120,10 @@ public class ValidationService {
                     null, Level.ERROR);
         }
         log.info("Validating platform credential attributes");
-//        List<ComponentResult> componentResults = componentResultRepository
-//                .findByCertificateSerialNumberAndBoardSerialNumber(
-//                        pc.getSerialNumber().toString(), pc.getPlatformSerial());
         AppraisalStatus result = CredentialValidator.
                 validatePlatformCredentialAttributes(pc, deviceInfoReport, ec,
-                        componentResultRepository, componentAttributeRepository, componentInfos);
+                        componentResultRepository, componentAttributeRepository,
+                        componentInfos, provisionSessionId);
         switch (result.getAppStatus()) {
             case PASS:
                 return buildValidationRecord(validationType, AppraisalStatus.Status.PASS,
diff --git a/HIRS_AttestationCA/src/main/java/hirs/attestationca/persist/validation/CertificateAttributeScvValidator.java b/HIRS_AttestationCA/src/main/java/hirs/attestationca/persist/validation/CertificateAttributeScvValidator.java
index a1ea00b5..1dbb3b3a 100644
--- a/HIRS_AttestationCA/src/main/java/hirs/attestationca/persist/validation/CertificateAttributeScvValidator.java
+++ b/HIRS_AttestationCA/src/main/java/hirs/attestationca/persist/validation/CertificateAttributeScvValidator.java
@@ -36,6 +36,7 @@ import java.util.List;
 import java.util.Map;
 import java.util.Optional;
 import java.util.Set;
+import java.util.UUID;
 import java.util.stream.Collectors;
 
 import static hirs.attestationca.persist.enums.AppraisalStatus.Status.ERROR;
@@ -196,6 +197,7 @@ public class CertificateAttributeScvValidator extends SupplyChainCredentialValid
      * @param componentResultRepository db access to component result of mismatching
      * @param componentAttributeRepository  db access to component attribute match status
      * @param componentInfos list of device components
+     * @param provisionSessionId UUID associated with the SCV Summary
      * @return either PASS or FAIL
      */
     public static AppraisalStatus validatePlatformCredentialAttributesV2p0(
@@ -203,7 +205,8 @@ public class CertificateAttributeScvValidator extends SupplyChainCredentialValid
             final DeviceInfoReport deviceInfoReport,
             final ComponentResultRepository componentResultRepository,
             final ComponentAttributeRepository componentAttributeRepository,
-            final List<ComponentInfo> componentInfos) {
+            final List<ComponentInfo> componentInfos,
+            final UUID provisionSessionId) {
         boolean passesValidation = true;
         StringBuilder resultMessage = new StringBuilder();
 
@@ -355,6 +358,7 @@ public class CertificateAttributeScvValidator extends SupplyChainCredentialValid
             }
 
             for (ComponentAttributeResult componentAttributeResult : attributeResults) {
+                componentAttributeResult.setProvisionSessionId(provisionSessionId);
                 componentAttributeRepository.save(componentAttributeResult);
                 fieldValidation &= componentAttributeResult.checkMatchedStatus();
             }
diff --git a/HIRS_AttestationCA/src/main/java/hirs/attestationca/persist/validation/CredentialValidator.java b/HIRS_AttestationCA/src/main/java/hirs/attestationca/persist/validation/CredentialValidator.java
index 95fe8b7a..5917e130 100644
--- a/HIRS_AttestationCA/src/main/java/hirs/attestationca/persist/validation/CredentialValidator.java
+++ b/HIRS_AttestationCA/src/main/java/hirs/attestationca/persist/validation/CredentialValidator.java
@@ -18,6 +18,7 @@ import java.security.cert.CertificateNotYetValidException;
 import java.security.cert.X509Certificate;
 import java.util.Date;
 import java.util.List;
+import java.util.UUID;
 
 import static hirs.attestationca.persist.enums.AppraisalStatus.Status.ERROR;
 import static hirs.attestationca.persist.enums.AppraisalStatus.Status.FAIL;
@@ -175,7 +176,8 @@ public class CredentialValidator extends SupplyChainCredentialValidator {
             final EndorsementCredential endorsementCredential,
             final ComponentResultRepository componentResultRepository,
             final ComponentAttributeRepository componentAttributeRepository,
-            final List<ComponentInfo> componentInfos) {
+            final List<ComponentInfo> componentInfos,
+            final UUID provisionSessionId) {
         final String baseErrorMessage = "Can't validate platform credential attributes without ";
         String message;
         if (platformCredential == null) {
@@ -207,7 +209,7 @@ public class CredentialValidator extends SupplyChainCredentialValidator {
         if (PlatformCredential.CERTIFICATE_TYPE_2_0.equals(credentialType)) {
             return CertificateAttributeScvValidator.validatePlatformCredentialAttributesV2p0(
                     platformCredential, deviceInfoReport, componentResultRepository,
-                    componentAttributeRepository, componentInfos);
+                    componentAttributeRepository, componentInfos, provisionSessionId);
         }
         return CertificateAttributeScvValidator.validatePlatformCredentialAttributesV1p2(
                 platformCredential, deviceInfoReport);
diff --git a/HIRS_AttestationCAPortal/src/main/java/hirs/attestationca/portal/page/utils/CertificateStringMapBuilder.java b/HIRS_AttestationCAPortal/src/main/java/hirs/attestationca/portal/page/utils/CertificateStringMapBuilder.java
index f6dab990..728cd965 100644
--- a/HIRS_AttestationCAPortal/src/main/java/hirs/attestationca/portal/page/utils/CertificateStringMapBuilder.java
+++ b/HIRS_AttestationCAPortal/src/main/java/hirs/attestationca/portal/page/utils/CertificateStringMapBuilder.java
@@ -5,6 +5,7 @@ import hirs.attestationca.persist.entity.manager.CertificateRepository;
 import hirs.attestationca.persist.entity.manager.ComponentResultRepository;
 import hirs.attestationca.persist.entity.userdefined.Certificate;
 import hirs.attestationca.persist.entity.userdefined.certificate.CertificateAuthorityCredential;
+import hirs.attestationca.persist.entity.userdefined.certificate.ComponentResult;
 import hirs.attestationca.persist.entity.userdefined.certificate.EndorsementCredential;
 import hirs.attestationca.persist.entity.userdefined.certificate.IssuedAttestationCertificate;
 import hirs.attestationca.persist.entity.userdefined.certificate.PlatformCredential;
@@ -363,8 +364,13 @@ public final class CertificateStringMapBuilder {
             data.put("x509Version", certificate.getX509CredentialVersion());
             //CPSuri
             data.put("CPSuri", certificate.getCPSuri());
-            data.put("componentResults", PciIds.translateResults(componentResultRepository
-                    .findByBoardSerialNumber(certificate.getPlatformSerial())));
+            List<ComponentResult> compResults = componentResultRepository
+                    .findByBoardSerialNumber(certificate.getPlatformSerial());
+            if (PciIds.DB.isReady()) {
+                data.put("componentResults", PciIds.translateResults(compResults));
+            } else {
+                data.put("componentResults", compResults);
+            }
 
             //Get platform Configuration values and set map with it
             PlatformConfiguration platformConfiguration = certificate.getPlatformConfiguration();
diff --git a/HIRS_AttestationCAPortal/src/main/webapp/WEB-INF/jsp/certificate-details.jsp b/HIRS_AttestationCAPortal/src/main/webapp/WEB-INF/jsp/certificate-details.jsp
index 434e7f14..5a45d1c5 100644
--- a/HIRS_AttestationCAPortal/src/main/webapp/WEB-INF/jsp/certificate-details.jsp
+++ b/HIRS_AttestationCAPortal/src/main/webapp/WEB-INF/jsp/certificate-details.jsp
@@ -628,7 +628,7 @@
                                                                 </c:choose>
                                                                     <c:choose>
                                                                         <c:when test="${component.isVersion2()=='TRUE'}">
-                                                                            <span data-toggle="tooltip" data-placement="top" title="Component Class">${component.getComponentClass()}</span>
+                                                                            <span data-toggle="tooltip" data-placement="top" title="Component Class">${component.getComponentClassValue()}</span>
                                                                         </c:when>
                                                                         <c:otherwise>
                                                                             <span data-toggle="tooltip" data-placement="top" title="Component Class">Platform Components</span>