sql >> データベース >  >> RDS >> Mysql

データベースの資格情報はどこに保管すればよいですか?

    まず、攻撃者がサーバーファイルにアクセスした場合、何をしても、攻撃者がパスワードを盗む可能性があることに注意する必要があります。

    アプリサーバーのデータソースを使用する場合は、プレーンテキストのパスワードの場所を別のファイルに移動するだけです。

    プレーンテキストのパスワードの保存を回避するために何らかの暗号化を使用する場合でも、アプリはすでに持っている別のパスワードでパスワードを復号化する必要があります。攻撃者がシステムにアクセスするために多大な労力を費やした場合、攻撃者もそれを知っているとかなり確信で​​きます。あなたがしていることは、実際にそれを保護するのではなく、難解にする(そして誤った安心感を得る)ことです。

    より安全な解決策は、ユーザーがアプリの起動時にパスワード(またはDBパスワードを復号化するためのパスワード)を提供することですが、それでは管理が非常に困難になります。また、誰かがサーバーにアクセスできることをすでにパラノイアしている場合(クレイジーな種類ではなく、優れたセキュリティの種類)、DBパスワードはシステムメモリに存在することを考慮する必要があります。

    それ以外の場合は、パスワードを構成ファイルに保存し(サーバーが外部に表示されないことをかなり確信で​​きます)、システムをロックダウンし、データベースユーザーに必要最小限の権限のみを付与します。



    1. MariaDBクラスター10.4の新機能

    2. oracle CASEWHENsqlステートメントにキーワードエラーがありません

    3. 配列MySQLとPHPから挿入クエリを作成する

    4. 更新部分で新しい値と古い値の両方を使用できるようにUPSERTを実行する方法