THE DATABASE OWNS THE WRITE
Permission is part of the invariant.
The application role can call the posting function and read facts, but cannot directly change journal rows or account balances. Constraints reject incomplete, unbalanced or currency-mismatched entries.