Class PluggableAuthCredentialSource

  • All Implemented Interfaces:
    java.io.Serializable

    public class PluggableAuthCredentialSource
    extends ExternalAccountCredentials.CredentialSource
    Encapsulates the credential source portion of the configuration for PluggableAuthCredentials.

    Command is the only required field. If timeout_millis is not specified, the library will default to a 30 second timeout.

     Sample credential source for Pluggable Auth credentials:
     {
       ...
       "credential_source": {
         "executable": {
           "command": "/path/to/get/credentials.sh --arg1=value1 --arg2=value2",
           "timeout_millis": 5000,
           "output_file": "/path/to/generated/cached/credentials"
         }
       }
     }
     
    See Also:
    Serialized Form
    • Field Detail

      • DEFAULT_EXECUTABLE_TIMEOUT_MS

        static final int DEFAULT_EXECUTABLE_TIMEOUT_MS
        See Also:
        Constant Field Values
      • MINIMUM_EXECUTABLE_TIMEOUT_MS

        static final int MINIMUM_EXECUTABLE_TIMEOUT_MS
        See Also:
        Constant Field Values
      • MAXIMUM_EXECUTABLE_TIMEOUT_MS

        static final int MAXIMUM_EXECUTABLE_TIMEOUT_MS
        See Also:
        Constant Field Values
      • executableCommand

        final java.lang.String executableCommand
      • executableTimeoutMs

        final int executableTimeoutMs
      • outputFilePath

        @Nullable
        final java.lang.String outputFilePath
    • Constructor Detail

      • PluggableAuthCredentialSource

        public PluggableAuthCredentialSource​(java.util.Map<java.lang.String,​java.lang.Object> credentialSourceMap)
    • Method Detail

      • getCommand

        java.lang.String getCommand()
      • getTimeoutMs

        int getTimeoutMs()
      • getOutputFilePath

        @Nullable
        java.lang.String getOutputFilePath()