file_validator
¶
AppleScript file validation module.
This module provides security validation for AppleScript file paths and ensures secure file access.
AppleScriptFileValidator
¶
Validates AppleScript file paths and ensures secure file access.
This class handles security validation for AppleScript execution: - Path traversal prevention - Symlink rejection - File existence and access checks
Initialize the file validator.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
apple_scripts_directory
|
str | None
|
Base directory containing AppleScript files |
required |
error_logger
|
Logger
|
Logger for error messages |
required |
console_logger
|
Logger
|
Logger for debug/info messages |
required |
Source code in src/services/apple/file_validator.py
validate_script_path
¶
Validate that the script path is safe to execute.
Ensures the path is within the allowed scripts directory and doesn't contain suspicious patterns like directory traversal.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
script_path
|
str
|
Path to the script to validate |
required |
Returns:
| Type | Description |
|---|---|
bool
|
True if the path is safe, False otherwise |
Source code in src/services/apple/file_validator.py
validate_script_file_access
¶
Validate script file exists and is accessible.
Checks that the file exists, is not a symlink (to prevent path traversal attacks), resolves to allowed directory, and is readable.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
script_path
|
str
|
Path to the script file |
required |
Returns:
| Type | Description |
|---|---|
bool
|
True if the file is valid and accessible |