Class AutoSSL

  • All Implemented Interfaces:
    IAutoCredentials

    public class AutoSSL
    extends Object
    implements IAutoCredentials
    This plugin is intended to be used for user topologies to send SSL keystore/truststore files to the remote workers. On the client side, this takes the files specified in ssl.credential.files, reads the file contents, base64's it, converts it to a String, and adds it to the credentials map. The key in the credentials map is the name of the file. On the worker side it uses the filenames from the ssl.credential.files config to lookup the keys in the credentials map and decodes it and writes it back out as a file.

    User is responsible for referencing them from the topology code as filename.

    • Constructor Detail

      • AutoSSL

        public AutoSSL()
    • Method Detail

      • serializeSSLFile

        public static void serializeSSLFile​(String readFile,
                                            Map<String,​String> credentials)
      • deserializeSSLFile

        public static void deserializeSSLFile​(String credsKey,
                                              String directory,
                                              Map<String,​String> credentials)
      • updateSubject

        public void updateSubject​(Subject subject,
                                  Map<String,​String> credentials)
        Description copied from interface: IAutoCredentials
        Called to update the subject on the worker side when new credentials are recieved. This means that populateSubject has already been called on this subject.
        Specified by:
        updateSubject in interface IAutoCredentials
        Parameters:
        subject - the subject to optionally put credentials in.
        credentials - the credentials to be used.
      • populateSubject

        public void populateSubject​(Subject subject,
                                    Map<String,​String> credentials)
        Description copied from interface: IAutoCredentials
        Called to initially populate the subject on the worker side with credentials passed in.
        Specified by:
        populateSubject in interface IAutoCredentials
        Parameters:
        subject - the subject to optionally put credentials in.
        credentials - the credentials to be used.