私のJavaコードに問題があります。大学で先生は、オンラインでのコード評価として「kiuwan」を使用するために私に尋ねた、彼は私のコードでこの問題を発見:[Java] [SQL]クエリのユーザー名とパスワードをハードコードしました
ハードコードの資格情報(ユーザー名/パスワード)のソースコードを読むすべての人に表示されます。 ハードコードされた資格情報で保護されたリソースが重要な場合、システムのセキュリティが損なわれる可能性があります。 ハードコードされた資格情報では、変更が困難です。ターゲットアカウントが侵害され、ソフトウェア が本番環境に配備されている場合は、コードの変更が必要となり、再配備が強制されます。 ソースコードにアクセスする必要は必ずしもないことに注意してください。攻撃者がJARファイルにアクセスする場合、 は、パスワードを回復するために解除することがあります。
そして、それは私の3つのquerysにこの問題を発見:
public static final String CHECK_USER = "SELECT nome FROM utenti WHERE nome=? AND password=?";
public static final String INSERT_USER = "INSERT INTO utenti (nome, password) VALUES (?, ?)";
public static final String CHECK_USER_NAME = "SELECT nome FROM utenti WHERE nome=?";
私はそれを解決することができますか?私はログインを行い、データベースをチェックするために、このようにして(テキストフィールドから情報を集めて)作った。
ありがとうございました!
実際には、あなたのSQLクエリがどのように構造化されているか、あなたの接続資格情報について言及していませんが、おそらくあなたはクリアなユーザー名とパスワード情報を使ってハードコードされたデータベース接続を使用しています。コーディングの選択肢。あなたのような例は、http://stackoverflow.com/questions/11634379/username-password-etc-hardcoded-into-program-how-to-pick-them-up-from-a-file – Hayra
になる可能性があります。 http://stackoverflow.com/questions/12937641/handling-passwords-used-for-auth-in-source-code –