2017-05-21 14 views
1

私を助けることができるかどうかは疑問です。私は教会のボランティアに関する情報を保存するプロジェクトに取り組んできました。それは、ユーザー名、パスワード、権限を設定して、特定の人がシステムを使用するためのアクセス権を与えることができるため、コントロールパネルを通じて管理されます。しかし、我々はcPanelにアクセスしてPHPmyAdminを使用する少数の人々がいます。保存されたすべての情報を暗号化してPHPmyAdminで読み取ることができないようにする方法はありますか?コントロールパネルで見ることができるように解読してください。PHPmyAdminを使用してMySQLデータベースを暗号化/復号化する

氏名、住所、電話番号や電子メールなどの連絡先情報、将来の銀行口座の詳細情報などを保存します。PHPmyAdminにアクセスする人にはアクセスできないようにします。

Thans :)

+0

[PHPマニュアル](http://php.net/manual/en/faq.passwords.php) – FluxCoder

+0

*「氏名、住所、電話番号、電子メールなどの連絡先情報を格納しています。将来の銀行口座の詳細とPHPmyAdminにアクセスする誰も望んでいない "* - それは非常に危険な音。自分が行っていることを正確に把握していない限り、銀行口座の詳細を保管するべきではありません。 –

+0

特定の人にのみphpmyadminにアクセスしたい場合は、特定の特権だけに付与することができます。 –

答えて

2

観察:あなたは、あなたのシステム内の個人情報を保存するために提案されています。銀行口座の詳細を保管すると、侵入者がシステムに侵入し、情報が記録されている人物に対して身元盗難と銀行詐欺を行うことができます。これは非常に危険なです。私が任命された牧師でもあり、コンピュータープログラマーでもある人として話すことができれば、私はあなたにこれをしないことを勧めます。あなたの教会のメンバーは、このような危険にさらされていることは、単に公平ではありません。メールアドレス、名前、住所OK。これはあなたの公開ディレクトリにあるものと同じものです。しかし、名前、性別、年齢に注意してください。

いずれにしても、このプロジェクトの教会のリーダーシップの承認を得てください。あなたはこれのために唯一の責任を望んでいません。

私は、あなたのスタッフやボランティアの間で個人情報を知る必要がない人には、個人情報を見えないようにしていただき、ありがとうございます。誘惑を避けることについての教会の仕事には何かがあります:-)、あなたはそれを助けています。良い。

しかし、あなたの最も危険な脅威は、スタッフとボランティアあなたのphpMyadminページを見ることができません。サイバー犯罪者です。誰かがあなたのシステムをひどく壊した場合、おそらくあなたのWebアプリケーションである "コントロールパネル"がクラックされます。彼らがそれをするなら、それらの銀行口座番号を暗号化したかどうかは関係ありません。 Webアプリケーションでそのデータを使用するには、そのデータを解読するためのキーが必要です。サイバー犯罪者はそのようなものを見つける方法を知っています。 (Matthew 10:16.真剣に参照してください。)

複数のMySQLアカウントを設定してください。データベースにアクセスする人それぞれに1つずつ設定することをお勧めします。これを行うには、phpMyadminのユーザ管理ページを使用してください。 https://docs.phpmyadmin.net/en/latest/privileges.html

次に、各ユーザーに、彼女が見ることができるデータベースとテーブルへのアクセスを許可します。ユーザーに表が表示されないようにするには、その表に対してSELECT特権を付与しないでください。

通常のSQLでもこれを行うことができます。

CREATE USER 'JackTheTeacher'@'*' IDENTIFIED BY 'secret-password'; 
GRANT SHOW DATABASES ON *.* TO 'JackTheTeacher'@'*'; 
GRANT INSERT, UPDATE, DELETE ON `mydb`.`students` TO 'JackTheTeacher'@'*'; 

CREATE USER 'SallyTreasurer'@'*' IDENTIFIED BY 'another-secret-password'; 
GRANT SHOW DATABASES ON *.* TO 'SallyTreasurer'@'*'; 
GRANT INSERT, UPDATE, DELETE ON `mydb`.`pledges` TO 'SallyTreasurer'@'*'; 
GRANT INSERT, UPDATE, DELETE ON `mydb`.`donations` TO 'SallyTreasurer'@'*'; 

FLUSH PRIVILEGES; 

この例では、ジャックに彼がphpMyAdminのを使っているときstudentsテーブルを操作する権利を付与します。それは次のようになります。また、Sallyはpledgesdonationsテーブルへのアクセスを許可します。これらは、ファイングレインのGRANT操作の使用方法を示す単なる例です。

また、特定の列の内容を暗号化することもできます。しかし、その方向では、あなたのWebアプリケーションが使用するカラムを解読する鍵を必要とするため、誤った安全感があり、おそらくWebアプリケーションはシステムをクラックさせる最も簡単なルートです。

+0

@ o-jones - 素晴らしいアドバイスありがとう!これは間違いなく考慮すべき点であり、行く最善の方法のようです。あなたのご協力ありがとうございます。 :)あなたがどんな賃金労働を求めているのなら、あなたは私にメッセージを落とすことができますか? – Keiran

+0

stripe.comと呼ばれる会社は、クレジット/デビットカードとACH(銀行口座)の両方で支払いを処理する方法を提供しています。彼らはアカウント保有者のためにこれを安全にする方法を研究する素晴らしい仕事をしてきました。一見の価値があるかもしれません。 –

関連する問題