class

JavaMiscAuthTagger

Inherits PrefixScope < FrameworkTagger < FileHelper < Tagger < Reference < Object

Constants

ALL_PATTERNS = (VERTX_AUTH_PATTERNS + ARMERIA_AUTH_PATTERNS) + JSP_AUTH_PATTERNS
ARMERIA_AUTH_PATTERNS = [{/AuthService/, "Armeria AuthService decorator"}, {/\.decorator\s*\(\s*AuthService/, "Armeria AuthService"}, {/Authorizer/, "Armeria Authorizer"}, {/BasicToken/, "Armeria BasicToken auth"}, {/OAuth2Token/, "Armeria OAuth2Token auth"}]

Armeria auth patterns

ARMERIA_BUILDER_ROUTE = /\.\s*(?:service|serviceUnder|serviceIf|route|withRoute)\s*\(/

One registration in an Armeria Server.builder() chain. The analyzer reads that chain's decorators itself (ArmeriaChainGuards); the lines around a registration are other routes' and other servers' calls, so this tagger leaves those routes alone.

JSP_AUTH_PATTERNS = [{/request\.getUserPrincipal\s*\(\)/, "Servlet getUserPrincipal"}, {/request\.isUserInRole\s*\(/, "Servlet isUserInRole"}, {/request\.getRemoteUser\s*\(\)/, "Servlet getRemoteUser"}, {/HttpServletRequest.*getSession/, "Servlet session check"}, {/<security-constraint>/, "web.xml security-constraint"}, {/<auth-constraint>/, "web.xml auth-constraint"}]

JSP/Servlet auth patterns

VERTX_AUTH_PATTERNS = [{/AuthHandler/, "Vert.x AuthHandler"}, {/JWTAuth/, "Vert.x JWTAuth"}, {/BasicAuthHandler/, "Vert.x BasicAuthHandler"}, {/OAuth2AuthHandler/, "Vert.x OAuth2AuthHandler"}, {/RedirectAuthHandler/, "Vert.x RedirectAuthHandler"}, {/SessionHandler/, "Vert.x SessionHandler"}, {/routingContext\.user\(\)/, "Vert.x user() check"}]

Vert.x auth patterns

VERTX_ROUTE = /\b\w+\s*\.\s*(?:route|get|post|put|delete|patch|head|options|trace|connect)\s*\(\s*(?:"([^"]*)"\s*)?\)\s*(?:\.\s*(?:handler|blockingHandler|respond|failureHandler|produces|consumes|order|subRouter)\b|$)/

A Vert.x route registration, router.route("/private/*").handler(...); group 1 is its path (absent for router.route(), which covers every route).

Class methods

target_techs
Source