dポイントプレゼントキャンペーン実施中!

ユーザデータベースを作っているのですが
ユーザが自分の情報しか確認できない状態でないと
他の人に情報を確認されてしまいます。
行ごとにアクセス制限は設けられますでしょうか?

また、通常は違う方法で制限するのでしょうか?

ご存知の方アドバイスいただければ幸いです。

A 回答 (3件)

一般論として、レコード単位のアクセス制御はアプリケーション側で行います。


MySQLでもそのような機能は用意されていません。

この回答への補足

ご解答いただきありがとうございます。

アプリケーション側で設定するのですね。
MySQLにはそういう機能がないのですか。
これは困りました。

こちら側が用意したインターフェースを使用せずに
ユーザが自分でコマンドプロンプトとかから
命令文を実行した場合、他のデータベースに
アクセスされてしまいませんか?

そこが心配で質問させて頂きました。
ご返答いただけましたら嬉しいです。

補足日時:2010/04/18 20:08
    • good
    • 0

MySQL 5.0以降なら、ビュー経由でのみアクセス権限を与え、そのビュー中で例えば接続ユーザに対応する行だけを操作可能にするといった方法があります。

この回答への補足

ご解答いただきありがとうございます。
ビュー調べさせて頂きました。
勉強になりました。ありがとうございます。

ただ、こちら側が用意したインターフェースを使用せずに
ユーザが自分でコマンドプロンプトとかから
命令文を作った場合こちら側の制限なんて関係なしに
データベースを見られてしまいませんか?

そこが心配で質問させて頂きました。
ご返答いただけましたら嬉しいです。

補足日時:2010/04/18 20:04
    • good
    • 1

ユーザー管理テーブルをつくっておき各行にフラグをふっておいて、


ごとに参照権限をもっておけば組み合わせをつかってアクセス
させればいけるのでは?

この回答への補足

ごめんなさい。よく回答の意味がつかめなかったです。
理解力が無くてすいません。

補足日時:2010/04/18 20:07
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す