スタッフの日記

標準SQL update操作で必要になるselect権限の付与について

2022年7月3日(staff)

      table 全件update       -> tableのselect権限は不要
      table 条件付きupdate -> tableのselect権限が必要
    
 updateやdeleteの対象となる特定の行や列を指定するには、そのテーブルのselect権限が必要になります。select権限がないユーザが、table条件付きupdateを行うと、例えば“権限不足でエラー”になります。
  
 個人的な思い込みで、レコードのupdateができるのであれば、当然select権限が付与されているだろう、update権限を付与すると自動的にselect権限の付与が補完されるだろうぐらいの認識がありました。
  
[以下が注意したい例]
  
① oracleの"SQL92_SECURITY"パラメータをfalse ー> True に変更した時。 select権限を付与していないテーブルのupdateがエラーになる。
  
② プログラムで動的にSQL文を作成している時、where句がある場合はselect権限が必要になる事に注意。select権限のないテーブルのupdateは、where句が無いときは成功しますが、where句がある時に失敗します。
 

 以上

 

一覧表示 ▶︎ スタッフの日記

Comments are currently closed.