-
Schneller Einstieg
-
Grundlagen
-
Hilfsklassen
- Benchmark Klasse
- Cache Klasse
- Captcha Klasse
- cURL Klasse
- Database Klasse
- Date Klasse
- Errors Klasse
- FileSystem Klasse
- FTP Klasse
- Images Klasse
- Language Klasse
- Logger Klasse
- Number Klasse
- PayPal Klasse
- PHPMailer Klasse
- Plugins Klasse
- RestClient Klasse
- Security Klasse
- Template Klasse
- Text Klasse
- URL Klasse
- XML Klasse
- ZIP Klasse
Security Klasse
In den folgenden Abschnitten werden die einzelnen Methoden der Klasse erklärt.
control
public static mixed control ( mixed $variable, string $convert = null)
Überprüft den Inhalt der Übergebenen $variable
und gibt diese gesäubert wieder zurück. Ab v2.0.0 lässt sich auch schädlicher MySQL Code entfernen.
Parameterliste
variable
Die Variabel die auf Schadcode überprüft werden soll. Hierbei sind folgende PHP-Typen erlaubt:
- string
- boolean
- float, decimal
- integer
convert
Konvertiert die übergebene Variabel in das richtige PHP-Typen Format. Folgende Möglichkeiten stehen zur Verfügung:
ip
Validiert und Kontrolliert es als IP(4) Adresseemail
Validiert und Kontrolliert es als E-Mail Adressedecimal
Validiert, Konvertiert und Kontrolliert es als Dezimalzahlint
Validiert, Konvertiert und Kontrolliert es als Integer.bool
Validiert, Konvertiert und Kontrolliert es als Boolean.string
Validiert, Konvertiert und Kontrolliert es als String. Hierbei wird auch schädlicher XSS Code entfernt.
url
public static mixed url ( string $variable, string $input = null, string $convert = null)
Lädt den Inhalt einer Systemvariabel und Validiert, Kontrolliert und Konvertiert diesen.
Parameterliste
variable
Der Schlüssel der Systemvariabel. Als Beispiel möchte man den Benutzernamen aus einer $_POST['username']
Systemvariabel holen. Dann muss man in den Parameter $variable
folgendes eintragen: security::url('username', 'POST', 'string');
input
Aus welcher Systemvariabel soll der Inhalt geholt werden. Folgende stehen zur Verfügung:
post
- für$_POST
get
- für$_GET
session
- für$_SESSION
cookie
- für$_COOKIE
server
- für$_SERVER
env
- für$_ENV
request
- für$_REQUEST
convert
In was der Inhalt der Systemvariabel konvertiert werden soll. Dort stehen folgende Typen zur Verfügung:
ip
Validiert die IP Adresse. Handelt es sich um keine IP-Adresse, gibt dieser einfalse
zurück.email
Validiert die E-Mail Adresse. Ist es keine gültige E-Mail Adresse, wird einfalse
zurückgegeben.decimal
Validiert die Dezimalzahl. Ist es keine Dezimalzahl wird einfalse
zurückgegeben.int
Validiert das Integer. Ist es kein Integer wird einfalse
zurück gegeben.bool
Validiert das Boolean. Ist es kein Boolean wird einnull
zurück gegeben.string
Validiert den String. Ist die Validierung fehlgeschlagen oder tritt ein anderer Fehler auf, wird einfalse
zurück gegeben.
create_csrf_token (ab v2.6.0)
public static string|bool create_csrf_token(string $token_name, $token_duration = 0)
Erstellt einen CSRF Überprüfungs Token für z.b ein HTML Formular.
Parameterliste
token_name
Der Name den der Token tragen soll. Mit diesem Namen kann man anschließend das Token wieder abfragen.
token_duration
Die Lebensdauer eines Tokens. Wenn kein Wert eingestellt ist, wird der Wert automatisch auf 24 Stunden gesetzt.
exists_csrf_token (ab v2.6.0)
public static bool exists_csrf_token(string $token_name)
Kontrolliert ob ein Token mit dem übergebenen $token_name
existiert!
Parameterliste
token_name
Der Name des Tokens der kontrolliert werden soll.
get_csrf_token (ab v2.6.0)
public static string|bool get_csrf_token(string $token_name, bool $remove_token_after = false)
Gibt den Inhalt des Tokens zurück, dessen Name angegeben wurde. Anschließend kann der Token automatisch gelöscht werden.
Parameterliste
token_name
Der Name des Token dessen Inhalt zurück gegeben werden soll!
remove_token_after
Kann angegeben werden, ob der Token nach dieser Abfrage entfernt werden soll! Standartmäßig auf false
remove_csrf_token (ab v2.6.0)
public static bool remove_csrf_token(string $token_name)
Entfernt einen angegebenen Token.
Parameterliste
token_name
Der Name des Token, der entfernt werden soll.
get_mime_type
public static bool|mixed get_mime_type ( string $path)
Gibt den MIME-Type des absoluten Pfades zurück. Hierbei wird die finfo_open
und finfo_file
Funktion benötigt. Ist diese in PHP nicht installiert, wird ein Exception Fehler erzeugt.
Parameterliste
path
Der absolute Pfad zur Datei dessen MIME-Type zurück gegeben werden soll.
get_file_type
public static mixed get_file_type ( string $path)
Gibt die Dateiendung einer Datei zurück.
Parameterliste
path
Der absolute Pfad zur Datei, dessen Dateiendung zurückgegeben werden soll.
sha_sec
public static string sha_sec ( string $string)
Verschlüsselt einen String in 512 Byte mit der SECURITY_KEY
Konstante als Schlüssel.
Parameterliste
string
Der String der Verschlüsselt werden soll.
remove_invisible_characters
public static string remove_invisible_characters ( string $str, bool $url_encoded = true)
Entfernt alle Leerzeichen oder unsichtbare Elemente aus einem String. Hierbei können auch unsichtbare URL Kodierte Zeichen entfernt werden.
Parameterliste
str
Der String der auf unsichtbare Zeichen geprüft und gereinigt werden soll.
url_encode
Ob auch unsichtbare URL Kodierte Zeichen entfernt werden sollen.
is_bot
public static array is_bot ( )
Kontrolliert ob der aktuelle Benutzer ein Roboter(Bot) oder eine reale Person ist. Hierbei können vor allem Suchmaschinen Crawler identifiziert werden. Dabei wird ein Array zurück geliefert das auch die aktuelle Version des Bots mit zurück gibt.
get_ip_address
public static mixed get_ip_address ( )
Gibt die aktuelle IP-Adresse des Benutzer zurück. Dabei werden interne IP Adressen nicht berücksichtigt. Gleichzeitig wird auch kontrolliert ob es sich um eine Proxy IP-Adresse handelt oder nicht. Wurde keine IP-Adresse gefunden, wird ein false
zurück gegeben.