Package io.grpc.xds
Class RbacFilter
java.lang.Object
io.grpc.xds.RbacFilter
- All Implemented Interfaces:
Filter,Filter.ServerInterceptorBuilder
RBAC Http filter implementation.
-
Nested Class Summary
Nested classes/interfaces inherited from interface io.grpc.xds.Filter
Filter.ClientInterceptorBuilder, Filter.FilterConfig, Filter.NamedFilterConfig, Filter.ServerInterceptorBuilder -
Field Summary
FieldsModifier and TypeFieldDescription(package private) static final RbacFilterprivate static final Logger(package private) static final Stringprivate static final String -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionio.grpc.ServerInterceptorbuildServerInterceptor(Filter.FilterConfig config, Filter.FilterConfig overrideConfig) private static GrpcAuthorizationEngine.DestinationIpMatchercreateDestinationIpMatcher(CidrRange cidrRange) private static GrpcAuthorizationEngine.DestinationPortMatchercreateDestinationPortMatcher(int port) private static GrpcAuthorizationEngine.SourceIpMatchercreateSourceIpMatcher(CidrRange cidrRange) private io.grpc.ServerInterceptorprivate static GrpcAuthorizationEngine.AuthenticatedMatcherprivate static GrpcAuthorizationEngine.DestinationPortRangeMatcherparseFilterConfig(com.google.protobuf.Message rawProtoMessage) Parses the top-level filter config from raw proto message.parseFilterConfigOverride(com.google.protobuf.Message rawProtoMessage) Parses the per-filter override filter config from raw proto message.private static GrpcAuthorizationEngine.AuthHeaderMatcherparseHeaderMatcher(HeaderMatcher proto) private static GrpcAuthorizationEngine.PathMatcherparsePathMatcher(PathMatcher proto) private static GrpcAuthorizationEngine.MatcherparsePermission(Permission permission) private static GrpcAuthorizationEngine.OrMatcherparsePermissionList(List<Permission> permissions) private static GrpcAuthorizationEngine.MatcherparsePrincipal(Principal principal) private static GrpcAuthorizationEngine.OrMatcherparsePrincipalList(List<Principal> principals) (package private) static ConfigOrError<RbacConfig> parseRbacConfig(RBAC rbac) private static GrpcAuthorizationEngine.RequestedServerNameMatcherprivate static InetAddressString[]typeUrls()The proto message types supported by this filter.
-
Field Details
-
logger
-
INSTANCE
-
TYPE_URL
- See Also:
-
TYPE_URL_OVERRIDE_CONFIG
- See Also:
-
-
Constructor Details
-
RbacFilter
RbacFilter()
-
-
Method Details
-
typeUrls
Description copied from interface:FilterThe proto message types supported by this filter. A filter will be registered by each of its supported message types. -
parseFilterConfig
Description copied from interface:FilterParses the top-level filter config from raw proto message. The message may be either aAnyor aStruct.- Specified by:
parseFilterConfigin interfaceFilter
-
parseRbacConfig
-
parseFilterConfigOverride
public ConfigOrError<RbacConfig> parseFilterConfigOverride(com.google.protobuf.Message rawProtoMessage) Description copied from interface:FilterParses the per-filter override filter config from raw proto message. The message may be either aAnyor aStruct.- Specified by:
parseFilterConfigOverridein interfaceFilter
-
buildServerInterceptor
@Nullable public io.grpc.ServerInterceptor buildServerInterceptor(Filter.FilterConfig config, @Nullable Filter.FilterConfig overrideConfig) - Specified by:
buildServerInterceptorin interfaceFilter.ServerInterceptorBuilder
-
generateAuthorizationInterceptor
private io.grpc.ServerInterceptor generateAuthorizationInterceptor(GrpcAuthorizationEngine.AuthConfig config) -
parsePermissionList
-
parsePermission
-
parsePrincipalList
-
parsePrincipal
-
parsePathMatcher
-
parseRequestedServerNameMatcher
private static GrpcAuthorizationEngine.RequestedServerNameMatcher parseRequestedServerNameMatcher(StringMatcher proto) -
parseHeaderMatcher
-
parseAuthenticatedMatcher
private static GrpcAuthorizationEngine.AuthenticatedMatcher parseAuthenticatedMatcher(Principal.Authenticated proto) -
createDestinationPortMatcher
private static GrpcAuthorizationEngine.DestinationPortMatcher createDestinationPortMatcher(int port) -
parseDestinationPortRangeMatcher
private static GrpcAuthorizationEngine.DestinationPortRangeMatcher parseDestinationPortRangeMatcher(Int32Range range) -
createDestinationIpMatcher
private static GrpcAuthorizationEngine.DestinationIpMatcher createDestinationIpMatcher(CidrRange cidrRange) -
createSourceIpMatcher
-
resolve
-