-- ============================================================================= -- File purpose : Script de onboarding ROA_WEB pentru o schemă nouă (per-firmă) -- When to run : Rulat ca CONTAFIN_ORACLE (sau DBA) DUPĂ `impdp` al schemei -- Usage : Substituie `` (3 apariții pe linie sau per bloc) cu -- numele schemei reale (ex: MARIUSM_AUTO, ACME_AUTO) înainte -- de rulare. Un singur search-and-replace acoperă tot fișierul. -- Version : 2026-04-12 -- Prerequisite : ROA_WEB user creat O SINGURĂ DATĂ (vezi §2 de mai jos). -- Full procedure : docs/service-auto/deploy-schema-noua.md -- ============================================================================= -- -- ORDINE OPERAȚII pentru o schemă nouă: -- 1. impdp schema nouă (REMAP_SCHEMA, exclude sequences dacă există) -- 2. RULEAZĂ SECȚIUNEA §1 a acestui fișier (GRANT-uri per-schemă) -- 3. Adaugă `.env` → `ORACLE_SERVERS` dacă server nou + restart backend -- 4. Rulează migrațiile service-auto în ordine cronologică -- (docs/service-auto/migrations/ff_YYYY_MM_DD_NN_AUTO.sql) -- 5. Smoke test: /ping, /tip-deviz, /masini, /comenzi -- -- ============================================================================= -- §1. GRANT-uri per-schemă — RULAT PENTRU FIECARE FIRMĂ NOUĂ -- ============================================================================= -- Înlocuiește `` cu schema reală (ex: MARIUSM_AUTO) înainte de rulare. GRANT EXECUTE ON .PACK_AUTO TO ROA_WEB; GRANT SELECT ON .AUTO_VMASINICLIENTI TO ROA_WEB; GRANT SELECT ON .DEV_TIP_DEVIZ TO ROA_WEB; GRANT SELECT ON .CALENDAR TO ROA_WEB; -- period selector AppHeader GRANT SELECT ON .DEV_ORDL TO ROA_WEB; -- GET /api/service-auto/comenzi GRANT SELECT ON .NOM_LUCRARI TO ROA_WEB; -- JOIN cu DEV_ORDL pentru nrord -- Granturi adăugate de migrațiile service-auto (ff_2026_04_13_01_AUTO.sql). -- Dacă rulezi onboarding-ul INAINTE de migrații, aceste linii pot fi skipped -- (migrația le va aplica). Dacă rulezi DUPĂ migrații, sunt idempotente (GRANT e no-op). GRANT SELECT ON .DEV_NOM_NORME TO ROA_WEB; GRANT SELECT ON .DEV_NOM_INSPECTORI TO ROA_WEB; GRANT SELECT ON .DEV_NOM_ASIGURATORI TO ROA_WEB; GRANT SELECT ON .NOM_PARTENERI TO ROA_WEB; GRANT INSERT ON .NOM_PARTENERI TO ROA_WEB; GRANT EXECUTE ON .PACK_SERII_NUMERE TO ROA_WEB; -- ============================================================================= -- §2. ROA_WEB user creation — O SINGURĂ DATĂ pe instanță Oracle -- ============================================================================= -- NU rula pentru fiecare firmă nouă. Rulează doar la setup inițial al instanței. -- Parola reală se ia din vault și se salvează în `backend/secrets/.oracle_pass`. CREATE USER ROA_WEB IDENTIFIED BY ""; GRANT CREATE SESSION TO ROA_WEB; -- Fără alte privilegii sistem. Accesul la date = exclusiv prin granturi per-obiect.