Skip to content

Conversation

@Sebbo94BY
Copy link

  • Avoid the usage of "SHOW DATABASES" as this requires global privileges, which a restricted database user will not have in best case. The application should not be potentially able to see other databases on the host.
  • Avoid the usage of "DROP DATABASE" as an application should never delete itself. This also ensures, that the application does not accidently delete all data.
  • "CREATE DATABASE" only if it not exists yet. This ensures, that the application can create the database, if it does not exist yet, but it will not fail, if it already exists.
  • If the database already has the necessary tables, the following SQL statements will fail, so the "if database exists" check is not necessary.

- Avoid the usage of "SHOW DATABASES" as this requires global privileges, which a restricted database user will not have in best case. The application should not be potentially able to see other databases on the host.
- Avoid the usage of "DROP DATABASE" as an application should never delete itself. This also ensures, that the application does not accidently delete all data.
- "CREATE DATABASE" only if it not exists yet. This ensures, that the application can create the database, if it does not exist yet, but it will not fail, if it already exists.
- If the database already has the necessary tables, the following SQL statements will fail, so the "if database exists" check is not necessary.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant