4 Commits

Author SHA1 Message Date
b416bf5061 oauth2: teste automate pentru index.php + pick.php (php -S + HTTP)
Matricea ceruta: pick.php (state invalid/lipsa -> 400, pending, livrare
o singura data, TTL 600s, claim concurent) + index.php (refresh POST/GET
passthrough - regresia becbbe2, 302 authorize fara client_secret, state
invalid -> pagina eroare, callback ?error= cu/fara sesiune, flux complet
eroare pana la pick.php).

Rulare: php oauth2/tests/run_tests.php (34 asertiuni, exit 0/1).
Ruleaza pe copie in director temporar - nu atinge oauth2/tokens/ din repo.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-07 22:53:31 +03:00
becbbe2be4 oauth2: fix buton Actualizare - refresh_token acceptat si prin POST body
ROACONT refreshToken trimite refresh_token prin POST (anaf_efactura.prg:719),
iar originalul citea parametrii cu $_REQUEST (GET+POST). Citirea doar din
$_GET rupea butonul: cererea cadea pe redirectul authorize, logincert.anaf.ro
cerea certificat client si msxml6 dadea "Access is denied" (1429 nehandled).
Deploy-uit si verificat pe productie (POST si GET -> passthrough JSON ANAF).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-07 21:53:36 +03:00
1b94624a6d oauth2: flux automat token ANAF (FR-1..FR-11) + arhivare fisiere vechi
- index.php: schimb code->token cu tratare completa erori, sesiune
  PHP pentru legare state (CSRF), stocare atomica tokenuri in fisier
- pick.php: endpoint polling pentru ROACONT (preluare automata token)
- oauth2_tokens mutat in oauth2/tokens/ + .htaccess Require all denied
  (locatia initiala "extra-docroot" era de fapt in interiorul
  public_html, deci web-accesibila fara aceasta protectie)
- index1.php/index2.php/info.php (versiuni vechi) arhivate in
  _arhiva_oauth2/ cu .htaccess care blocheaza accesul HTTP

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-07 21:10:32 +03:00
8d0eaf7af1 commit initial 2025-08-13 22:47:45 +03:00