Class ControllerRequestContext
java.lang.Object
com.linkedin.venice.controller.server.ControllerRequestContext
Transport-agnostic request context that carries client identity information.
Both HTTP and gRPC layers populate this before calling handlers.
-
Constructor Summary
ConstructorsConstructorDescriptionControllerRequestContext(X509Certificate clientCertificate, String clientPrincipalId) -
Method Summary
Modifier and TypeMethodDescriptionstatic ControllerRequestContextCreates a context for unauthenticated/internal requestsstatic ControllerRequestContextfromGrpcContext(io.grpc.Context context) Builds a ControllerRequestContext from a gRPC context.static ControllerRequestContextfromHttpRequest(spark.Request request, boolean sslEnabled, Optional<DynamicAccessController> accessController) Builds a ControllerRequestContext from an HTTP request.
-
Constructor Details
-
ControllerRequestContext
-
-
Method Details
-
getClientCertificate
-
getClientPrincipalId
-
anonymous
Creates a context for unauthenticated/internal requests -
fromGrpcContext
Builds a ControllerRequestContext from a gRPC context. Extracts client certificate and client address for request tracking and potential ACL checks.- Parameters:
context- the gRPC context containing client details- Returns:
- a ControllerRequestContext with client information
-
fromHttpRequest
public static ControllerRequestContext fromHttpRequest(spark.Request request, boolean sslEnabled, Optional<DynamicAccessController> accessController) Builds a ControllerRequestContext from an HTTP request. Extracts client certificate and principal ID for request tracking and potential ACL checks.- Parameters:
request- the HTTP requestsslEnabled- whether SSL is enabledaccessController- optional access controller for principal ID extraction- Returns:
- a ControllerRequestContext with client information
-