Profil für Passwortrichtlinien anlegen und Benutzern zuweisen
OracleSicherheitBefehl
-- Hardened profile for application/human users:
CREATE PROFILE app_user_prf LIMIT
FAILED_LOGIN_ATTEMPTS 5
PASSWORD_LOCK_TIME 1/24 -- 1 hour lock
PASSWORD_LIFE_TIME 90
PASSWORD_GRACE_TIME 7
PASSWORD_REUSE_TIME 365
PASSWORD_REUSE_MAX 10
INACTIVE_ACCOUNT_TIME 60 -- accounts unused for 60 days are locked
PASSWORD_VERIFY_FUNCTION ora12c_strong_verify_function;
-- Service accounts: password never expires, gradual password rollover enabled:
CREATE PROFILE service_account_prf LIMIT
FAILED_LOGIN_ATTEMPTS UNLIMITED
PASSWORD_LIFE_TIME UNLIMITED
PASSWORD_ROLLOVER_TIME 1; -- old and new password both valid for 1 day
ALTER USER customer_app PROFILE app_user_prf;
-- Check:
SELECT username, profile, account_status,
TO_CHAR(expiry_date,'YYYY-MM-DD') AS expiry_date, lock_date
FROM dba_users
WHERE profile IN ('APP_USER_PRF', 'SERVICE_ACCOUNT_PRF');
SELECT profile, resource_name, limit
FROM dba_profiles
WHERE profile = 'APP_USER_PRF' AND resource_type = 'PASSWORD'
ORDER BY resource_name;Was es tut
Ein Profil wendet auf eine Benutzergruppe Regeln für Sperrung nach Fehlanmeldungen, Passwortlaufzeit, Wiederverwendung, Komplexität (Verify-Funktion) und Sperrung inaktiver Konten an. PASSWORD_ROLLOVER_TIME lässt Anwendungen ohne Ausfall umstellen, während das Passwort eines Dienstkontos geändert wird.
Wann einsetzen
Für Anforderungen aus Sicherheitsaudits/CIS-Benchmarks, beim Anlegen neuer Anwendungsbenutzer und um die lockeren Werte des DEFAULT-Profils je Benutzergruppe zu trennen.
Vorsicht
Keine Zusatzlizenz. Mit einem FAILED_LOGIN_ATTEMPTS-Limit auf einem Dienstkonto kann ein einziger App-Server mit falschem Passwort das Konto sperren und einen Produktionsausfall verursachen. PASSWORD_LIFE_TIME auf Anwendungskonten kann einen unerwarteten Status EXPIRED verursachen. Die Verify-Funktion muss unter SYS existieren (sonst @?/rdbms/admin/utlpwdmg.sql; dieses Skript ändert auch das DEFAULT-Profil). Eine Profiländerung validiert bestehende Passwörter nicht neu.
Verwandte Einträge
- TDE-Keystore anlegen, öffnen, Master Key setzen und sichern (ab 19c)
- Tablespaces mit TDE verschlüsseln (neu und bestehend, online/offline)
- Unified-Auditing-Policy anlegen, bedingt aktivieren, Einträge prüfen und entfernen
- Zugriffs-Policy auf Zeilenebene mit VPD hinzufügen (DBMS_RLS)
- Ungenutzte Privilegien mit Privilege Analysis finden