class RustAuthTagger

Defined in:

tagger/framework_taggers/rust/rust_auth.cr

Constant Summary

ACTIX_AUTH_PATTERNS = [/HttpAuthentication/, /BearerAuth/, /BasicAuth/, /Identity/]

Actix-Web auth middleware/extractor patterns

AXUM_EXTRACTOR_PATTERNS = [/Extension<.*(?:Auth|Claims|Token|User|Session).*>/, /TypedHeader<.*(?:Authorization|Bearer).*>/]

Axum extractor patterns

GUARD_ATTRIBUTE_PATTERNS = [/#\[guard\s*=\s*"(\w+)"\]/, /#\[.*guard.*\]/i]

Guard/middleware attribute patterns

GUARD_TYPE_PATTERNS = [/\b(?:Auth|Authenticated|AuthGuard|AuthUser|AuthToken)\b/, /\b(?:ApiKey|ApiToken|BearerToken|AccessToken)\b/, /\b(?:Claims|JwtClaims|TokenClaims|JwtToken)\b/, /\b(?:AdminUser|AdminGuard|Admin)\b/, /\b(?:UserGuard|UserToken|CurrentUser|LoggedInUser)\b/, /\b(?:Session|SessionUser|CookieAuth)\b/, /\b(?:RoleGuard|Permission|Authorized)\b/]

Rocket request guard types (in function signatures)

MIDDLEWARE_LAYER_PATTERNS = [/\.wrap\s*\(\s*(\w*[Aa]uth\w*)/, /\.wrap\s*\(\s*HttpAuthentication/, /\.layer\s*\(\s*(\w*[Aa]uth\w*)/, /\.layer\s*\(\s*middleware::from_fn\s*\(\s*(\w*auth\w*)/i]

Middleware layer patterns (in Router/App setup)

Constructors

Class Method Summary

Instance Method Summary

Instance methods inherited from class FrameworkTagger

read_file(path : String) : String | Nil read_file, read_source_context(endpoint : Endpoint) : Array(SourceContext) read_source_context

Constructor methods inherited from class FrameworkTagger

new(options : Hash(String, YAML::Any)) new

Class methods inherited from class FrameworkTagger

target_techs : Array(String) target_techs

Instance methods inherited from module FileHelper

all_files : Array(String) all_files, get_files_by_extension(extension : String) : Array(String) get_files_by_extension, get_files_by_prefix(prefix : String) : Array(String) get_files_by_prefix, get_files_by_prefix_and_extension(prefix : String, extension : String) : Array(String) get_files_by_prefix_and_extension, get_public_dir_files(base_path : String, folder : String) : Array(String) get_public_dir_files, get_public_files(base_path : String) : Array(String) get_public_files, populate_channel_with_files(channel : Channel(String)) populate_channel_with_files, populate_channel_with_filtered_files(channel : Channel(String), extension : String)
populate_channel_with_filtered_files(channel : Channel(String), extensions : Array(String))
populate_channel_with_filtered_files

Instance methods inherited from class Tagger

name : String name, perform(endpoints : Array(Endpoint)) : Array(Endpoint) perform

Constructor methods inherited from class Tagger

new(options : Hash(String, YAML::Any)) new

Constructor Detail

def self.new(options : Hash(String, YAML::Any)) #

[View source]

Class Method Detail

def self.target_techs : Array(String) #

[View source]

Instance Method Detail

def perform(endpoints : Array(Endpoint)) : Array(Endpoint) #

[View source]