A5:SQL Mk-2

開発のこと、日々のこと

ストアドプロシージャの表示について確認

ホーム フォーラム A5:SQL Mk-2掲示板 ストアドプロシージャの表示について確認

  • このトピックには4件の返信、1人の参加者があり、最後に松原正和により1年前に更新されました。
5件の投稿を表示中 - 1 - 5件目 (全5件中)
  • 投稿者
    投稿
  • #20399 返信
    佐藤
    ゲスト

    ●ツール
    A5:SQL(ver2.18.2/x64)
    ●DB
    Oracle19c 19.11.0.0.0

    ●発生事象
    データベースツリー > ユーザ “a” > ストアドプロシージャの表示不具合(テーブル等は表示される)

    お世話になっております。私は利用者ですが、以下の点について確認したいことがあります。

    現在、弊社のDB環境において、次のような現象が発生しています。

    オブジェクト所有者スキーマ(各DBオブジェクトの作成者ユーザ)であるユーザ “a”
    読み取り専用スキーマ(各種権限をselect/read系のみ)であるユーザ “b”
    ユーザ “b” を使用する際に、ユーザ “a” のストアドプロシージャが表示されません。ただし、テーブルなどは正常に表示されています。

    この現象について、開発者様にお伺いしたいのは以下の点です。

    ユーザ “b” にストアドプロシージャの表示権限を与える方法はありますか?
    現在の設定では、ユーザ “b” はどのような操作を行うことができますか?
    ストアドプロシージャの表示不具合について、解決策はありますか?

    #20413 返信
    松原正和
    キーマスター

    佐藤さんこんにちは。

    A5:SQL Mk-2の内部ではストアドプロシージャの列挙に ALL_PROCEDURES を参照しています。確認まではしていないのですが、おそらくはプロシージャの実行権限がないために参照できなくなっているのでは? と思います。

    実行権限を与えるには、

    GRANT EXECUTE ANY PROCEDURE TO ユーザー名;

    になるかと思うのですが、プロシージャの内部でデータの書き換え等を行っているとすると、読み取り専用ユーザーにこの権限を与えるのは良くないようにも思えます。問題ないプロシージャだけを個別に権限付けする方法もあるかと思いますが、管理が大変そうですね。
    (もしかしてプロシージャの実行権限を与えてもテーブルの書き込み権限がなければ(正常に)エラーになるのか? とも考えましたが、検証していないのでよくわかりません)

    #20447 返信
    佐藤
    ゲスト

    松原さま

    お世話になっております。
    ご回答ありがとうございます

    ユーザ “b”(読み取り専用ユーザー)を利用した場合に、
    ALL_PROCEDURESでパッケージ(プロシージャ含む)が表示されないことまで確認がとれました。

    おっしゃるとおり、実行権限を与えるのは現実的ではない(この環境構成は本番環境でも同様にしていきたいため)

    とはいえ、ソースを見るために、ユーザ “a”(所有者ユーザー)を使うのは日々の運用として適さないので、

    0.読み取り専用ユーザーでログイン
    1.DBA_PROCEDURESを参照(owner=所有者ユーザー)
    2.DBA_SOURCEを参照(owner=所有者ユーザーで、name=見たいオブジェクトを指定)

    をすることでソースを参照することができました。

    A5:SQLには私たちの業務にとって非常に便利な機能が多くありますが、
    残念ながら、
    データベースツリー > ユーザ “a” > ストアドプロシージャの表示
    の使用はできないようですそのため上記の方法で対応することにしました。
    素晴らしい製品をありがとうございます。
    今後のアップデートに期待しています。

    #20790 返信
    濱仲
    ゲスト

    恐れ入ります。
    便乗質問となってしまい申し訳ありませんが、私も長年この件に
    悩んでいます。

    DBA_PROCEDURESを参照頂くようにする事は出来ないのでしょうか?

    #20802 返信
    松原正和
    キーマスター

    濱仲さんこんにちは。
     
    Version 2.19.0 beta 13 にて、DBA_XXX データディクショナリが参照できそうなときは、そちらを参照するように修正してみました。いかがでしょうか?

5件の投稿を表示中 - 1 - 5件目 (全5件中)
返信先: ストアドプロシージャの表示について確認
あなたの情報:




コメントは受け付けていません。