Class PluginAppVerifier
java.lang.Object
net.sourceforge.jnlp.security.PluginAppVerifier
- All Implemented Interfaces:
AppVerifier
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionBuild a list of all the CertPaths that were detected in the provided JCV, placing them in the most trusted possible order.voidcheckTrustWithUser(SecurityDelegate securityDelegate, JarCertVerifier jcv, JNLPFile file) Prompt the user with requests for trusting the certificates used by this appbooleanhasAlreadyTrustedPublisher(Map<CertPath, CertInformation> certs, Map<String, Integer> signedJars) Checks if the app has already found trust in its publisher(s).booleanhasRootInCacerts(Map<CertPath, CertInformation> certs, Map<String, Integer> signedJars) Checks if the app has signer(s) whose certs along their chains are in CA certs.booleanisFullySigned(Map<CertPath, CertInformation> certs, Map<String, Integer> signedJars) Checks if the app's jars are covered by the provided certificates, enough to consider the app fully signed.
-
Constructor Details
-
PluginAppVerifier
public PluginAppVerifier()
-
-
Method Details
-
hasAlreadyTrustedPublisher
public boolean hasAlreadyTrustedPublisher(Map<CertPath, CertInformation> certs, Map<String, Integer> signedJars) Description copied from interface:AppVerifierChecks if the app has already found trust in its publisher(s).- Specified by:
hasAlreadyTrustedPublisherin interfaceAppVerifier- Parameters:
certs- The certs to search through and their cert informationsignedJars- A map of all the jars of this app and the number of signed entries each one has.- Returns:
- True if the app trusts its publishers.
-
hasRootInCacerts
public boolean hasRootInCacerts(Map<CertPath, CertInformation> certs, Map<String, Integer> signedJars) Description copied from interface:AppVerifierChecks if the app has signer(s) whose certs along their chains are in CA certs.- Specified by:
hasRootInCacertsin interfaceAppVerifier- Parameters:
certs- The certs to search through and their cert informationsignedJars- A map of all the jars of this app and the number of signed entries each one has.- Returns:
- True if the app has a root in the CA certs store.
-
isFullySigned
Description copied from interface:AppVerifierChecks if the app's jars are covered by the provided certificates, enough to consider the app fully signed.- Specified by:
isFullySignedin interfaceAppVerifier- Parameters:
certs- Any possible signer and their respective information regarding this app.signedJars- A map of all the jars of this app and the number of signed entries each one has.- Returns:
- true if jar is fully signed
-
checkTrustWithUser
public void checkTrustWithUser(SecurityDelegate securityDelegate, JarCertVerifier jcv, JNLPFile file) throws LaunchException Description copied from interface:AppVerifierPrompt the user with requests for trusting the certificates used by this app- Specified by:
checkTrustWithUserin interfaceAppVerifier- Parameters:
securityDelegate- parental securityjcv- jar verifierfile- jnlp file to provide information- Throws:
LaunchException- if it fails to verify
-
buildCertPathsList
Build a list of all the CertPaths that were detected in the provided JCV, placing them in the most trusted possible order.- Parameters:
jcv- The verifier containing the CertPaths to examine.- Returns:
- A list of CertPaths sorted in the following order: Signers with 1. Already trusted publishers 2. Roots in the CA store and have no signing issues 3. Roots in the CA store but have signing issues 4. Everything else
-