GRANT文(パッケージ権限)
この形式の GRANT ステートメントは、パッケージに対する特権を付与します。
GRANT(パッケージ権限)の構文
GRANT(パッケージ権限)の説明
- BIND
- 指定したパッケージに関して、BIND サブコマンドおよび REBIND サブコマンド
を使用する特権を付与します。
BIND パッケージ特権を使用して、既存パッケージの新規バージョンの追加をユーザーに許可することもできます。 新しいパッケージや既存のパッケージの新しいバージョンの作成に必要な権限の詳細については、「GRANT(パッケージ権限)に関する注意事項」 を参照してください。
- COPY
- 指定したパッケージに関して、BIND サブコマンドの COPY オプション を使用する特権を付与します。
- EXECUTE
- 指定したパッケージを使うアプリケーション・プログラムを実行し 、BIND PLAN コマンド および REBIND PLAN コマンドの PKLIST の後にパッケージを指定するための 特権を付与します。 この他に、RUN も同じ特権を表します。
- すべて
- ON 文節で指定するパッケージに関して GRANT 権限を持っている パッケージ特権を、すべて付与します。
- パッケージに記載 collection-id.package-name,...
- 付与しようとする特権の対象となるパッケージを指定します。 パッケージ特権の付与は、パッケージのすべてのバージョンに適用されます。 以下の 2 つの
形式の項目を、同時にリストすることができます。
- collection-id.package-name は、単一のパッケージを明示的に指定します。 この名前は、現行サーバーに存在するパッケージを示すものでなければなりません。
- collection-id.* 指定されたコレクション内のすべてのパッケージに適用されます。 これには、現存しているパッケージだけでなく、将来のパッケージも含まれます。 現行サーバーにあるコレクションに対して付与されますが、collection-id は、
付与を行う時点で存在しているコレクションを示すものでなくても構いません。
この形式で特権を付与する場合は、あるコレクションまたはすべてのコレクションに 渡る WITH GRANT OPTION 付きの PACKADM 権限、SYSADM 権限、また は SYSCTRL 権限が必要です。 このため、ステートメントに WITH GRANT OPTION を含めた場合、 この形式で付与するときには無視されますが、特定パッケージに関 する付与の時には無視されません。
- 今後
- TO句の説明については、GRANT文を参照してください。
- WITH GRANT OPTION
- WITH GRANT OPTION句の説明については、GRANT文を参照してください。
GRANT(パッケージ権限)に関する注釈
新規パッケージまたは既存のパッケージの新規バージョンを 追加するのに必要な許可は、インストール・パネル DSNTIPP の フィールド BIND NEW PACKAGE の値によって異なります。 デフォルト値は BINDADD です。
BIND NEW PACKAGE の値が BINDADD である場合、新規パッケージまたは既存のパッケージの 新規バージョンをコレクションへ追加するためには、所有者が以下のいずれかを持っていなければなりません。
- BINDADD システム特権と、コレクション (または、コレクションすべて) のため の CREATE IN 特権または PACKADM 権限のいずれか
- SYSADM または SYSCTRL 権限
BIND NEW PACKAGE の値が BIND である場合、新規パッケージまたは既存のパッケージの新規バージョンをコレクションへ追加するためには、所有者が以下のいずれかを持っていなければなりません。
- BINDADD システム特権と、コレクション (または、コレクションすべて) のため の CREATE IN 特権または PACKADM 権限のいずれか
- SYSADM または SYSCTRL 権限
- 該当のコレクション、またはすべてのコレクションに対する PACKADM 権限
- BIND パッケージ特権を持つユーザーも、既存パッケージの新規バージョンを追加することが可能
代替構文および同義語 : Db2 の以前のリリースや、 Db2 ファミリーの他の製品との互換性を確保するため、 Db2 では、PROGRAMをPACKAGEの同義語として指定することをサポートしています。
GRANT(パッケージ権限)の例
GRANT COPY ON PACKAGE DSN8CC61.* TO LEWIS; GRANT ALL ON PACKAGE CLCT1.PKG1, CLCT2.PKG2 TO JONES;GRANT EXECUTE ON PACKAGE DSN9CC13.* TO ROLE ROLE1;