3

sybaseのストアドプロシージャに付与されたアクセス許可を取得するにはどうすればよいですか?

4

3 に答える 3

6

それはあなたがその情報を入れたいフォームに依存します。

  • 何らかの内部目的でSQLを作成していて、その情報をデータとして必要とする場合、Kolchanovの答えは正しいです。
  • 単にDBA機能を実行している場合は、任意の数のDBA GUIツール(SybaseCentralがCDに付属しています。DBArtisanの方がはるかに優れています)は、エクスプローラーウィンドウとクリックを介してその情報を提供します。
    • 文字ベースのアクセスしかない場合は、
      sp_helprotect proc_name

Sybaseオンラインマニュアルへのリンク

次に、Adaptive Server Enterprise 15.5 / Reference Manual:Proceduresに移動し、エクスプローラーに従います。

于 2010-11-28T01:00:53.460 に答える
3

オブジェクト「whatever_[table| procedure]」の権限を確認したい場合は、次のクエリを実行します。

テーブルである「何でも」の例

Displaying result for:
---------------------
select permission = a.name
from master.dbo.spt_values a
   , master.dbo.spt_values b
   , sysprotects p
   , sysobjects  o
where a.type = "T"
and   a.number = p.action
and   b.type = "T"
and   b.number = (p.protecttype + 204)
and   o.id = p.id
and   o.name = 'whatever_table'

permission                   
---------------------------- 
References                   
Select                       
Insert                       
Delete                       
Update                       

5 Row(s) affected

ストアドプロシージャである「whatever」の例

Displaying result for:
---------------------
select permission = a.name
from master.dbo.spt_values a
   , master.dbo.spt_values b
   , sysprotects p
   , sysobjects  o
where a.type = "T"
and   a.number = p.action
and   b.type = "T"
and   b.number = (p.protecttype + 204)
and   o.id = p.id
and   o.name = 'whatever_procedure'

permission                   
---------------------------- 
Execute                      

1 Row(s) affected
于 2011-12-29T13:23:19.310 に答える
1

Adaptive Server Enterprise 15.5>リファレンスマニュアル:テーブル>システムテーブル

sysprotects

sysprotectsには、ユーザー、グループ、およびロールに付与された、または取り消された権限に関する情報が含まれています。

http://infocenter.sybase.com/help/index.jsp?topic=/com.sybase.infocenter.dc36274.1550/html/tables/X16615.htm

于 2010-11-25T16:16:31.517 に答える