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(JNLPClassLoader.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(JNLPClassLoader.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 fiel 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.
-
-