ご利用前に必ずお読みください。
フォーラムTOP > シン・クラウド for Free > mysqlの権限を詳細に変更したい(phpMyadmin, mariaDB, mysql)

mysqlの権限を詳細に変更したい(phpMyadmin, mariaDB, mysql)

by mysqlの権限を詳細に変更したいさん (b68ba967)
投稿数:0回
(ベストアンサー:0回)
2024/01/30 09:41
phpMyadminにログインし、テーブルなどの設定をしています。

その際に、「権限」を設定できる項目が見当たりません。

とある権限を「INSERT」だけ可能な設定にしたいのですが、どこから設定すればいいのか教えていただけたら幸いです。
回答する
解決済みにする
by web勉強中さん (8cd3947d)
投稿数:53回
(ベストアンサー:5回)
2024/02/01 17:31
サーバーパネルでは「アクセス権所有データベース」しか設定できませんし、
phpMyAdminでも権限のタブはありませんので、
データベース権限の本来の設定は
レンタルサーバ側の諸都合にて
「機能制限されている」状態です。

代替策としてトリガーを設定すればINSERTのみ可能なユーザーを作ることはできそうです。
ただしそのユーザーでトリガーを削除できたりもしますのでセキュリティ的な制限には向きません。
本来フロントで操作できないはずの操作ができてしまうとか、
そういったバグに備えての被害最小化、などの用途向きでしょう。

↓ トリガーはあまり詳しくないですがこんな感じで設定します。

DELIMITER $$
CREATE TRIGGER `reject_update` BEFORE UPDATE ON `tb_target` FOR EACH ROW IF (SELECT USER() = 'serverid_insertuser@localhost') THEN
SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = 'TRIGGER-REJECT:INSERTのみ許可されたユーザーです';
END IF
$$
DELIMITER ;
この回答に返信する