IcedTea-Web
NetX

net.sourceforge.jnlp.security
Class PluginAppVerifier

java.lang.Object
  extended by net.sourceforge.jnlp.security.PluginAppVerifier
All Implemented Interfaces:
AppVerifier

public class PluginAppVerifier
extends java.lang.Object
implements AppVerifier


Constructor Summary
PluginAppVerifier()
           
 
Method Summary
 java.util.List<java.security.cert.CertPath> buildCertPathsList(JarCertVerifier jcv)
          Build a list of all the CertPaths that were detected in the provided JCV, placing them in the most trusted possible order.
 void checkTrustWithUser(JarCertVerifier jcv, JNLPFile file)
          Prompt the user with requests for trusting the certificates used by this app
 boolean hasAlreadyTrustedPublisher(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).
 boolean hasRootInCacerts(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.
 boolean isFullySigned(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.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PluginAppVerifier

public PluginAppVerifier()
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: AppVerifier
Checks if the app has already found trust in its publisher(s).

Specified by:
hasAlreadyTrustedPublisher in interface AppVerifier
Parameters:
certs - The certs to search through and their cert information
signedJars - 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: AppVerifier
Checks if the app has signer(s) whose certs along their chains are in CA certs.

Specified by:
hasRootInCacerts in interface AppVerifier
Parameters:
certs - The certs to search through and their cert information
signedJars - 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: AppVerifier
Checks if the app's jars are covered by the provided certificates, enough to consider the app fully signed.

Specified by:
isFullySigned in interface AppVerifier
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:

checkTrustWithUser

public void checkTrustWithUser(JarCertVerifier jcv,
                               JNLPFile file)
                        throws LaunchException
Description copied from interface: AppVerifier
Prompt the user with requests for trusting the certificates used by this app

Specified by:
checkTrustWithUser in interface AppVerifier
Throws:
LaunchException

buildCertPathsList

public java.util.List<java.security.cert.CertPath> buildCertPathsList(JarCertVerifier jcv)
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

IcedTea-Web
NetX

Submit a bug or feature