Require scoped, single-use verification for account bindings and password operations. Bind OAuth authorization and email confirmations to the initiating session; preserve the last usable login method and audit operation outcomes. Apply Unicode-aware password length limits, Argon2id writes with bcrypt compatibility, and long-password encryption. Return has_password with the existing profile SELECT without extra queries. Reuse the existing security dialogs and add all seven locale translations. Validation: - Go: go test ./common ./model ./service ./middleware ./controller ./router -count=1 - DB: SQLite 3.50.4, MySQL 8.4.11, PostgreSQL 16.15; separate main/log databases - MySQL/PostgreSQL: TEST_SECURITY_DIALECT=<dialect> with TEST_<DIALECT>_DSN, go test ./controller -run '^(TestSecurityAccount|TestSecurityEnrollment|TestGenerateOAuthCode|TestOAuthBind|TestTelegramOAuth)' -count=1 -v - Web: relevant Vitest suites, bun run typecheck, targeted oxlint/format, bun run i18n:sync, and bun run build Roll out dual-format readers to every instance with ACCOUNT_PASSWORD_HASH_ALGORITHM=bcrypt before enabling Argon2id writes and the new UI. Rollbacks must retain Argon2id and v2 envelope readers. Relevant controls: ASVS 5.0.0 6.2.1-6.2.3, 6.2.5-6.2.9, 6.3.7, 7.4.3, 7.5.1; this change does not assert application-wide ASVS certification.
| Name |
Last commit
|
Last Update |
|---|---|---|
| .. | ||
| audit.go | Loading commit data... | |
| auth.go | Loading commit data... | |
| auth_origin.go | Loading commit data... | |
| auth_origin_test.go | Loading commit data... | |
| auth_test.go | Loading commit data... | |
| body_cleanup.go | Loading commit data... | |
| cache.go | Loading commit data... | |
| cors.go | Loading commit data... | |
| disable-cache.go | Loading commit data... | |
| distributor.go | Loading commit data... | |
| distributor_test.go | Loading commit data... | |
| email-verification-rate-limit.go | Loading commit data... | |
| gzip.go | Loading commit data... | |
| header_nav.go | Loading commit data... | |
| header_nav_test.go | Loading commit data... | |
| i18n.go | Loading commit data... | |
| logger.go | Loading commit data... | |
| model-rate-limit.go | Loading commit data... | |
| model_rate_limit_test.go | Loading commit data... | |
| performance.go | Loading commit data... | |
| rate-limit.go | Loading commit data... | |
| rate_limit_test.go | Loading commit data... | |
| recover.go | Loading commit data... | |
| request-id.go | Loading commit data... | |
| request_body_limit.go | Loading commit data... | |
| secure_verification.go | Loading commit data... | |
| stats.go | Loading commit data... | |
| task_artifact_access.go | Loading commit data... | |
| task_artifact_access_test.go | Loading commit data... | |
| task_plugin.go | Loading commit data... | |
| task_plugin_model.go | Loading commit data... | |
| task_plugin_origin_task_test.go | Loading commit data... | |
| task_plugin_test.go | Loading commit data... | |
| token_auto_groups_context_test.go | Loading commit data... | |
| trusted_proxies.go | Loading commit data... | |
| trusted_proxies_test.go | Loading commit data... | |
| turnstile-check.go | Loading commit data... | |
| utils.go | Loading commit data... |