Package net.sourceforge.jnlp.security
Class JNLPAppVerifier
- java.lang.Object
-
- net.sourceforge.jnlp.security.JNLPAppVerifier
-
- All Implemented Interfaces:
AppVerifier
public class JNLPAppVerifier extends java.lang.Object implements AppVerifier
-
-
Constructor Summary
Constructors Constructor Description JNLPAppVerifier()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidcheckTrustWithUser(SecurityDelegate securityDelegate, JarCertVerifier jcv, JNLPFile file)Prompt the user with requests for trusting the certificates used by this appbooleanhasAlreadyTrustedPublisher(java.util.Map<java.security.cert.CertPath,CertInformation> certs, java.util.Map<java.lang.String,java.lang.Integer> signedJars)Checks if the app has already found trust in its publisher(s).booleanhasCompletelySignedApp(CertInformation info, int sumOfSignableEntries)Find out if the CertPath with the given info has fully signed the app.booleanhasRootInCacerts(java.util.Map<java.security.cert.CertPath,CertInformation> certs, java.util.Map<java.lang.String,java.lang.Integer> signedJars)Checks if the app has signer(s) whose certs along their chains are in CA certs.booleanisFullySigned(java.util.Map<java.security.cert.CertPath,CertInformation> certs, java.util.Map<java.lang.String,java.lang.Integer> signedJars)Checks if the app's jars are covered by the provided certificates, enough to consider the app fully signed.
-
-
-
Method Detail
-
hasAlreadyTrustedPublisher
public boolean hasAlreadyTrustedPublisher(java.util.Map<java.security.cert.CertPath,CertInformation> certs, java.util.Map<java.lang.String,java.lang.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(java.util.Map<java.security.cert.CertPath,CertInformation> certs, java.util.Map<java.lang.String,java.lang.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
public boolean isFullySigned(java.util.Map<java.security.cert.CertPath,CertInformation> certs, java.util.Map<java.lang.String,java.lang.Integer> signedJars)
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
-
hasCompletelySignedApp
public boolean hasCompletelySignedApp(CertInformation info, int sumOfSignableEntries)
Find out if the CertPath with the given info has fully signed the app.- Parameters:
info- The information regarding the CertPath in questionsumOfSignableEntries- The total number of signable entries in the app.- Returns:
- True if the signer has fully signed this app.
-
-