diff options
Diffstat (limited to 'src/pragma.c')
-rw-r--r-- | src/pragma.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/pragma.c b/src/pragma.c index e65593c5f..734f4aa98 100644 --- a/src/pragma.c +++ b/src/pragma.c @@ -1422,6 +1422,12 @@ void sqlite3Pragma( ** in auto-commit mode. */ mask &= ~(SQLITE_ForeignKeys); } +#if SQLITE_USER_AUTHENTICATION + if( db->auth.authLevel==UAUTH_User ){ + /* Do not allow non-admin users to modify the schema arbitrarily */ + mask &= ~(SQLITE_WriteSchema); + } +#endif if( sqlite3GetBoolean(zRight, 0) ){ db->flags |= mask; |