Class KubernetesSecretsTokenAuthProvider

    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.util.Optional<FunctionAuthData> cacheAuthData​(org.apache.pulsar.functions.proto.Function.FunctionDetails funcDetails, org.apache.pulsar.broker.authentication.AuthenticationDataSource authenticationDataSource)
      Cache auth data in as part of function metadata for function that runtime may need to configure authentication
      void cleanUpAuthData​(org.apache.pulsar.functions.proto.Function.FunctionDetails funcDetails, java.util.Optional<FunctionAuthData> functionAuthData)
      Clean up operation for auth when function is terminated
      void configureAuthDataStatefulSet​(io.kubernetes.client.openapi.models.V1StatefulSet statefulSet, java.util.Optional<FunctionAuthData> functionAuthData)
      Configure function statefulset spec based on function auth data
      void configureAuthenticationConfig​(org.apache.pulsar.functions.instance.AuthenticationConfig authConfig, java.util.Optional<FunctionAuthData> functionAuthData)
      Set authentication configs for function instance based on the data in FunctionAuthenticationSpec
      void initialize​(io.kubernetes.client.openapi.apis.CoreV1Api coreClient)  
      void setCaBytes​(byte[] caBytes)  
      void setNamespaceProviderFunc​(java.util.function.Function<org.apache.pulsar.functions.proto.Function.FunctionDetails,​java.lang.String> getNamespaceFromDetails)  
      java.util.Optional<FunctionAuthData> updateAuthData​(org.apache.pulsar.functions.proto.Function.FunctionDetails funcDetails, java.util.Optional<FunctionAuthData> existingFunctionAuthData, org.apache.pulsar.broker.authentication.AuthenticationDataSource authenticationDataSource)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • KubernetesSecretsTokenAuthProvider

        public KubernetesSecretsTokenAuthProvider()
    • Method Detail

      • setNamespaceProviderFunc

        public void setNamespaceProviderFunc​(java.util.function.Function<org.apache.pulsar.functions.proto.Function.FunctionDetails,​java.lang.String> getNamespaceFromDetails)
        Specified by:
        setNamespaceProviderFunc in interface KubernetesFunctionAuthProvider
      • configureAuthenticationConfig

        public void configureAuthenticationConfig​(org.apache.pulsar.functions.instance.AuthenticationConfig authConfig,
                                                  java.util.Optional<FunctionAuthData> functionAuthData)
        Description copied from interface: FunctionAuthProvider
        Set authentication configs for function instance based on the data in FunctionAuthenticationSpec
        Specified by:
        configureAuthenticationConfig in interface FunctionAuthProvider
        Parameters:
        authConfig - authentication configs passed to the function instance
        functionAuthData - function authentication data that is provider specific
      • cacheAuthData

        public java.util.Optional<FunctionAuthData> cacheAuthData​(org.apache.pulsar.functions.proto.Function.FunctionDetails funcDetails,
                                                                  org.apache.pulsar.broker.authentication.AuthenticationDataSource authenticationDataSource)
        Description copied from interface: FunctionAuthProvider
        Cache auth data in as part of function metadata for function that runtime may need to configure authentication
        Specified by:
        cacheAuthData in interface FunctionAuthProvider
        Parameters:
        funcDetails - the function details
        authenticationDataSource - auth data
        Returns:
      • cleanUpAuthData

        public void cleanUpAuthData​(org.apache.pulsar.functions.proto.Function.FunctionDetails funcDetails,
                                    java.util.Optional<FunctionAuthData> functionAuthData)
                             throws java.lang.Exception
        Description copied from interface: FunctionAuthProvider
        Clean up operation for auth when function is terminated
        Specified by:
        cleanUpAuthData in interface FunctionAuthProvider
        Parameters:
        funcDetails - the function details
        functionAuthData - function auth data
        Throws:
        java.lang.Exception
      • updateAuthData

        public java.util.Optional<FunctionAuthData> updateAuthData​(org.apache.pulsar.functions.proto.Function.FunctionDetails funcDetails,
                                                                   java.util.Optional<FunctionAuthData> existingFunctionAuthData,
                                                                   org.apache.pulsar.broker.authentication.AuthenticationDataSource authenticationDataSource)
                                                            throws java.lang.Exception
        Specified by:
        updateAuthData in interface FunctionAuthProvider
        Throws:
        java.lang.Exception