Class IdTokenVerifier.PublicKeyLoader

  • Enclosing class:
    IdTokenVerifier

    static class IdTokenVerifier.PublicKeyLoader
    extends com.google.common.cache.CacheLoader<java.lang.String,​java.util.Map<java.lang.String,​java.security.PublicKey>>
    Custom CacheLoader for mapping certificate urls to the contained public keys.
    • Method Detail

      • load

        public java.util.Map<java.lang.String,​java.security.PublicKey> load​(java.lang.String certificateUrl)
                                                                           throws java.lang.Exception
        Specified by:
        load in class com.google.common.cache.CacheLoader<java.lang.String,​java.util.Map<java.lang.String,​java.security.PublicKey>>
        Throws:
        java.lang.Exception
      • buildPublicKey

        private java.security.PublicKey buildPublicKey​(IdTokenVerifier.PublicKeyLoader.JsonWebKey key)
                                                throws java.security.NoSuchAlgorithmException,
                                                       java.security.spec.InvalidParameterSpecException,
                                                       java.security.spec.InvalidKeySpecException
        Throws:
        java.security.NoSuchAlgorithmException
        java.security.spec.InvalidParameterSpecException
        java.security.spec.InvalidKeySpecException
      • buildPublicKey

        private java.security.PublicKey buildPublicKey​(java.lang.String publicPem)
                                                throws java.security.cert.CertificateException,
                                                       java.io.UnsupportedEncodingException
        Throws:
        java.security.cert.CertificateException
        java.io.UnsupportedEncodingException
      • buildRs256PublicKey

        private java.security.PublicKey buildRs256PublicKey​(IdTokenVerifier.PublicKeyLoader.JsonWebKey key)
                                                     throws java.security.NoSuchAlgorithmException,
                                                            java.security.spec.InvalidKeySpecException
        Throws:
        java.security.NoSuchAlgorithmException
        java.security.spec.InvalidKeySpecException
      • buildEs256PublicKey

        private java.security.PublicKey buildEs256PublicKey​(IdTokenVerifier.PublicKeyLoader.JsonWebKey key)
                                                     throws java.security.NoSuchAlgorithmException,
                                                            java.security.spec.InvalidParameterSpecException,
                                                            java.security.spec.InvalidKeySpecException
        Throws:
        java.security.NoSuchAlgorithmException
        java.security.spec.InvalidParameterSpecException
        java.security.spec.InvalidKeySpecException