誰でもデータベースのpostgresに関して私を助けることができますか?私は例以下などのデータのパスワードを非表示にする必要がありcreated.Iたテーブル内の値を非表示にする必要があり :データベース内の値を非表示にする方法PostgreSQL
ユーザ名・パスワードを ANA 123
私はパスワードをしたいが* のように表示することができ、誰助けて?前もって感謝します。
誰でもデータベースのpostgresに関して私を助けることができますか?私は例以下などのデータのパスワードを非表示にする必要がありcreated.Iたテーブル内の値を非表示にする必要があり :データベース内の値を非表示にする方法PostgreSQL
ユーザ名・パスワードを ANA 123
私はパスワードをしたいが* のように表示することができ、誰助けて?前もって感謝します。
パスワード列以外のすべての列(またはすべての列、次に '*'のパスワード)を使用して、そのような隠蔽を行う標準的な方法の1つはビューを作成することです。 dbユーザーの場合、アプリケーションは接続に使用し、ビューへの読取りアクセスを許可しますが、ソース表の読取りアクセスは削除します。そうすれば、アプリケーションがフィールドにアクセスする機会はありません。以下のような
何か:
CREATE VIEW visible_users AS
SELECT username, '***' as password
FROM users;
その後の権限が適切に管理されていることを確認してください。
REVOKE ALL ON users FOR app_user;
あなたはおそらく平文でデータベースにパスワードを保存してはならない、と述べた - それはです重大な潜在的なセキュリティ上の問題。
お返事ありがとうございます。私はパスワードとしてmd5を使用していました。しかし、jsp username:anaとpassword:123でプロセスログインを行うと、パスワードを読み取ることができません。md5にパスワードを設定しないと、スムーズに実行できません。別の構文に変更することにしました。それでも見つからない。どうですか? – ana
私はあなたの質問に従うか分からない。ハッシュ化されたパスワード記憶域を使用する場合、パスワードをデータベースに挿入するとハッシュされます。次に、ログインを確認するときに、同じ方法でユーザー入力をハッシュし、ハッシュ値を比較します。決して平文のパスワードを守っているわけではありません。そのため、出かける危険はありません。 – jmelesky
パスワードのMD5を保存し、それを入力されたパスワードのMD5と比較するのが普通です。それはかなり安全です(しかし、ブルートフォースは十分な時間が与えられればそれを打ち破ることができます)。
テーブルへのアクセスを制限することはできますが、ユーザーがテーブルを照会できる場合は、そのテーブルの内容を見ることができます。 –
パスワードをテーブルに書き込むプログラムの場合は、パスワードを暗号化してテーブルに書き込むことができます。したがって、テーブルを読み取るクエリが手動で送信されると、暗号化されたパスワードだけが表示されます。 – vpit3833
ログイン時にパスワードを確認するにはどうすればよいですか?常にMD5を使用する方が良いです。 – jordani