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 and Description
    `JNLPAppVerifier()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `checkTrustWithUser(JNLPClassLoader.SecurityDelegate securityDelegate, 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` | `hasCompletelySignedApp(CertInformation info, int sumOfSignableEntries)` Find out if the CertPath with the given info has fully signed the app.
    `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

    - #### JNLPAppVerifier

          public JNLPAppVerifier()

  - ### 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:
        true if jar is fully signed

    - #### checkTrustWithUser

          public void checkTrustWithUser(JNLPClassLoader.SecurityDelegate securityDelegate,
                                         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`
      Parameters:
        `securityDelegate` - parental security
        `jcv` - jar verifier
        `file` - 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 question
        `sumOfSignableEntries` - The total number of signable entries in the app.
      Returns:
        True if the signer has fully signed this app.

Submit a bug or feature