class PythonMiscAuthTagger

Defined in:

tagger/framework_taggers/python/python_misc_auth.cr

Constant Summary

SANIC_PATTERNS = [{/\@authorized\s*\(/, "Sanic @authorized decorator"}, {/\@protected\s*\(/, "Sanic @protected decorator"}, {/\@scoped\s*\(/, "Sanic @scoped decorator"}, {/sanic_jwt/, "Sanic JWT"}, {/\@auth\.login_required/, "Sanic auth login_required"}]

Sanic auth patterns

TORNADO_PATTERNS = [{/\@tornado\.web\.authenticated/, "Tornado @authenticated decorator"}, {/\@authenticated/, "Tornado @authenticated"}]

Tornado auth patterns. These are scanned only in the decorator window above a handler, so they must be decorators. The body/class signals (self.current_user, a def get_current_user override) are handled separately by check_class_auth; a bare current_user / a get_current_user( call in the decorator window is not an auth decorator and only produced false positives, so they're omitted here.

Constructors

Class Method Summary

Instance Method Summary

Instance methods inherited from class FrameworkTagger

collect_files_by_extension(extension : String) : Array(String) collect_files_by_extension, read_file(path : String) : String | Nil read_file, read_source_context(endpoint : Endpoint) : Array(SourceContext) read_source_context, static_asset_route?(url : String) : Bool static_asset_route?

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, anchors : Array(String) = ["shard.yml", "Gemfile"]) : Array(String) get_public_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]