質問: ### 前提・実現したいこと mysqlのDB(データ)を公開したいとおもっています。 利用者にはselect文をつかって、自由にDBアクセスしてほしいとおもいます。 そこで、phpmyadminを利用して、 ログイン不要、 参照のみで、一部のテーブル、カラムは隠して 公開したいとおもうのですが、そのような例や方法はないでしょうか? phpmyadminにこだわるものでもないですが、そのデータを利用したphpのアプリ をweb公開していて、内部的な運用でphpmyadminも使用しているので、 それを使えればリソースを有効につかえるとおもいます。 現在運用中のphpmyadminは3.4.9ですが、バージョンアップしてもいいです。 mysql 5.5.28 php 5.4.31 centos 5.7 です。 ### 発生している問題・エラーメッセージ ### 該当のソーード ### 試したこと ネットでそのような事例を探すのですが、見つかりません。 phpはあまり得意ではありませんが、phpmyadminのソースをみたのですが、どこをどう直せばというのは、さっぱりわかりません。 以前、phpmyadminの機能を限定してDBアクセスするツールを運用しているのを見たことあるので、できるとおもっているのですが、phpを相当駆使しないと無理でしょうか? ### 補足情報(言語/FW/ツール等のバージョンなど)
回答: 基本的には利用者に任意のSQLを実行させるのはリスクが高いです。また、phpMyAdminを外部に公開するのもリスクが高いです。データに公開/非公開の区別があるならなおさらです。 Web I/FかAPIを作ってそれ経由でアクセスさせる方がよいでしょう。 あまりお勧めはしませんが、別サーバに公開してもかまわないデータをコピーしてphpMyAdminを動かす、MySQLで適切な権限を設定したユーザーを作りphpMyAdminの接続ユーザーとしてそのユーザーを設定する、という方法も考えられなくはないです。