Package org.apache.pulsar.functions.auth
Class KubernetesSecretsTokenAuthProvider
- java.lang.Object
-
- org.apache.pulsar.functions.auth.KubernetesSecretsTokenAuthProvider
-
- All Implemented Interfaces:
FunctionAuthProvider,KubernetesFunctionAuthProvider
public class KubernetesSecretsTokenAuthProvider extends java.lang.Object implements KubernetesFunctionAuthProvider
-
-
Constructor Summary
Constructors Constructor Description 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 authenticationvoidcleanUpAuthData(org.apache.pulsar.functions.proto.Function.FunctionDetails funcDetails, java.util.Optional<FunctionAuthData> functionAuthData)Clean up operation for auth when function is terminatedvoidconfigureAuthDataStatefulSet(io.kubernetes.client.openapi.models.V1StatefulSet statefulSet, java.util.Optional<FunctionAuthData> functionAuthData)Configure function statefulset spec based on function auth datavoidconfigureAuthenticationConfig(org.apache.pulsar.functions.instance.AuthenticationConfig authConfig, java.util.Optional<FunctionAuthData> functionAuthData)Set authentication configs for function instance based on the data in FunctionAuthenticationSpecvoidinitialize(io.kubernetes.client.openapi.apis.CoreV1Api coreClient)voidsetCaBytes(byte[] caBytes)voidsetNamespaceProviderFunc(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
-
Methods inherited from interface org.apache.pulsar.functions.auth.KubernetesFunctionAuthProvider
initialize
-
-
-
-
Method Detail
-
initialize
public void initialize(io.kubernetes.client.openapi.apis.CoreV1Api coreClient)
- Specified by:
initializein interfaceKubernetesFunctionAuthProvider
-
setCaBytes
public void setCaBytes(byte[] caBytes)
- Specified by:
setCaBytesin interfaceKubernetesFunctionAuthProvider
-
setNamespaceProviderFunc
public void setNamespaceProviderFunc(java.util.function.Function<org.apache.pulsar.functions.proto.Function.FunctionDetails,java.lang.String> getNamespaceFromDetails)
- Specified by:
setNamespaceProviderFuncin interfaceKubernetesFunctionAuthProvider
-
configureAuthDataStatefulSet
public void configureAuthDataStatefulSet(io.kubernetes.client.openapi.models.V1StatefulSet statefulSet, java.util.Optional<FunctionAuthData> functionAuthData)Description copied from interface:KubernetesFunctionAuthProviderConfigure function statefulset spec based on function auth data- Specified by:
configureAuthDataStatefulSetin interfaceKubernetesFunctionAuthProvider- Parameters:
statefulSet- statefulset spec for functionfunctionAuthData- function auth data
-
configureAuthenticationConfig
public void configureAuthenticationConfig(org.apache.pulsar.functions.instance.AuthenticationConfig authConfig, java.util.Optional<FunctionAuthData> functionAuthData)Description copied from interface:FunctionAuthProviderSet authentication configs for function instance based on the data in FunctionAuthenticationSpec- Specified by:
configureAuthenticationConfigin interfaceFunctionAuthProvider- Parameters:
authConfig- authentication configs passed to the function instancefunctionAuthData- 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:FunctionAuthProviderCache auth data in as part of function metadata for function that runtime may need to configure authentication- Specified by:
cacheAuthDatain interfaceFunctionAuthProvider- Parameters:
funcDetails- the function detailsauthenticationDataSource- auth data- Returns:
-
cleanUpAuthData
public void cleanUpAuthData(org.apache.pulsar.functions.proto.Function.FunctionDetails funcDetails, java.util.Optional<FunctionAuthData> functionAuthData) throws java.lang.ExceptionDescription copied from interface:FunctionAuthProviderClean up operation for auth when function is terminated- Specified by:
cleanUpAuthDatain interfaceFunctionAuthProvider- Parameters:
funcDetails- the function detailsfunctionAuthData- 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:
updateAuthDatain interfaceFunctionAuthProvider- Throws:
java.lang.Exception
-
-