Python で記述される Web アプリ用の MySQL DB を構築しています。ユーザー機能を分離して、セキュリティを強化し、パフォーマンスを向上させたいと考えていました。私はこの方法でそれを行うことを考えています: 2 セットのテーブル:
- 1 アプリユーザー管理用テーブル
- 1 情報を格納するためのテーブルのセット
アプリからデータにアクセスして操作するために、4 人の mysql ユーザーを作成したいと考えています。
- ユーザー テーブルの選択権限を持つ 1 人のユーザー
- Users テーブルの挿入/更新権限を持つ 1 人のユーザー
- 情報を格納する一連のテーブルに対する選択権限を持つ 1 人のユーザー
- 情報を格納する一連のテーブルに対する挿入/更新権限を持つ 1 人のユーザー
したがって、各テーブルの読み取り/書き込みを行う各 Python モジュールは、必要なユーザーを使用します。
私の推論は、ユーザーまたは挿入フィールドが何らかの理由で危険にさらされた場合、操作/取得できる損害と情報が制限されるということです。DBへの正しい接続のみを使用し、モジュールごとに1回だけ行うため、アプリを複雑にするべきではありません。
それはやり過ぎだろうか?パフォーマンスに影響を与える可能性はありますか? 他の考えはありますか?