0

新しいビューを作成するたびに、パーミッションをすべてに変更する必要があり、同じことを何度も行うのは非常に苦痛です。

また、アクセス許可をパブリックに設定するために、ビューを作成するデータベースのいくつかのデフォルト オプションを変更できるかどうかも尋ねます。

ありがとう

4

2 に答える 2

2

SQLネーミングを使用しているようです。代わりにシステム命名を使用してください。これにより、QCRTAUT システム値に従って共通権限が付与されます。Birgitta Hauser の記事を参照してください。

システム命名には、ジョブのライブラリー・リストを使用して非修飾オブジェクト参照を解決できるという利点もあります。スキーマ名をハードコーディングするのではなく、システムがライブラリ リストに従ってスキーマ名を見つけられるようにすることで、コードを変更せずにさまざまな環境 (開発、テスト、トレーニング、運用など) でコードを動作させることができます。別のライブラリ リスト。したがって、テストされたコードとまったく同じコードを本番環境にインストールできます。

于 2013-11-14T03:47:49.493 に答える
1

以下は、V6R1 ドキュメントからのものです。

認可

ステートメントの許可 ID が保持する特権には、以下の少なくとも 1 つが含まれている必要があります。

スキーマで作成する権限。詳しくは、スキーマでの作成に必要な特権を参照してください。

行政機関

ステートメントの許可 ID が保持する特権には、以下の少なくとも 1 つが含まれている必要があります。

以下のシステム権限: 論理ファイル作成 (CRTLF) CL コマンドに対する *USE ビューが作成されるライブラリーがデータ・ディクショナリー管理権限を持つ SQL スキーマである場合、データ・ディクショナリーに対する *CHANGE

ステートメントの許可 ID が保持する特権には、以下の少なくとも 1 つも含まれている必要があります。

全選択を介して直接参照される、または全選択で参照されるビューを介して間接的に参照される各テーブルおよびビューについて: テーブルまたはビューに対する SELECT 特権、および テーブルまたはビューを含むライブラリーに対するシステム権限 *EXECUTE 管理権限

ビューの所有権: SQL 名が指定されている場合:

ビューが作成されるスキーマと同じ名前のユーザー プロファイルが存在する場合、ビューの所有者はそのユーザー プロファイルです。
それ以外の場合、ビューの所有者は、ステートメントを実行するジョブのユーザー プロファイルまたはグループ ユーザー プロファイルです。

システム名が指定された場合、ビューの所有者は、ステートメントを実行するジョブのユーザー プロファイルまたはグループ ユーザー プロファイルです。

閲覧権限:

SQL 名が使用される場合、ビューは *PU​​BLIC に対する *EXCLUDE のシステム権限で作成されます。システム名が使用される場合、ビューは、スキーマの作成権限 (CRTAUT) パラメーターによって決定される *PUBLIC に対する権限で作成されます。

ビューの所有者がグループ・プロファイル (GRPPRF キーワード) のメンバーであり、グループ権限が指定されている (GRPAUT キーワード) 場合、そのグループ・プロファイルもビューに対する権限を持ちます。

所有者は常に、ビューに対する WITH GRANT OPTION 付きの SELECT 権限と、ビューを削除する権限を取得します。

所有者は、ビューに対する INSERT、UPDATE、および DELETE 権限も取得できます。ビューが読み取り専用でない場合、全選択の最初の FROM 文節で識別された表またはビューに対して所有者が持っている特権と同じ特権が新しいビューに対して取得されます。これらの特権は、派生元の特権も付与できる場合にのみ付与できます。

于 2013-11-13T17:57:38.723 に答える