さて、この質問は非常に広範囲であるため、事前にお詫び申し上げます。
基本的に、私は以下を含むシステムを開発しています:
- ユーザーがアカウントを登録できる Web サイト。このプロセスにより、サーバー上にそのアカウントの新しいデータベースが作成されます。
- Java で記述されたクライアント側の外部アプリケーション。これは、ユーザーにとって有用な操作を実行するために、データベース内のデータにアクセスします。
- 最初のポイントで作成されたデータベース自体。
私の質問は、データベースを安全に保つために実装する必要があるセキュリティ対策と、データを安全に転送する方法についてです。
私の懸念は次のとおりです。
- MySQL データベースは実際にどのように保護されていますか? アカウント登録時にデータベースを作成する場合、そのデータベースにパスワードを設定する必要がありますか? これはデータベースを暗号化しますか? これは、誰かがデータにアクセスするのを防ぐのに十分ですか?
- Java は非常に簡単に逆コンパイルできます。アカウント データベースのログイン データをマスター データベースに保存すると仮定すると、そのデータベースを保護し、そのデータベースに接続するための詳細をハード コーディングする必要がない方法でアプリケーションから接続するにはどうすればよいでしょうか。アプリケーションで。アプリケーションの実行時にそのような変数を取得するために誰かがメモリダンプを実行するだけでよいため、これはネイティブコードにコンパイルされる言語でも問題になるに違いないと思います(私は思います)。
- サーバーからクライアントにデータを送受信するとき、またはその逆のときに、誰かがネットワークの盗聴やデータの取得を防ぐにはどうすればよいですか (これがログイン資格情報であろうと、データベースからの他のデータであろうと)。これがSSLの目的だと思いますが、それだけで十分ですか?
これらの質問に対する考えられる答えは、Javascript と MySQL データベースの間で PHP を使用するのとほぼ同じ方法で、Java クライアント側アプリケーションとデータベースの間で仲介者サービスを使用することです (ただし、この場合 PHP は必要です)。 . この仲介者サービスには、マスターデータベースなどのログイン資格情報が含まれ、不正アクセスを防止するための独自の方法が含まれると思います。これが正しい場合、そのようなサービスを設定するにはどうすればよいですか? Java アプリケーションから PHP スクリプトを使用してデータを転送することはできますか?
私の質問が理にかなっていて、あいまいすぎないことを願っています。お時間をいただきありがとうございます。