データベースのルート・ファイルACLによって、対応するデータベースにユーザーが実行できるOracle RMUコマンドが決まります。
RMU Set Privilegeコマンドを使用すると、ルート・ファイルACL全体の操作、あるいはルート・ファイルACL内のアクセス制御エントリ(ACE)の作成、変更または削除を行うことができます。ACEおよびACLの概要は、『Oracle Rdb Guide to Database Design and Definition』を参照してください。RMU Set Privilegeコマンドを使用してACEをルート・ファイルACLに追加するには、Acl修飾子にACEを指定します。
「表1-1」に、各Oracle RMUコマンドを利用するためにユーザーに必要な権限を示します。
RMU Set Privilegeコマンドで指定するデータベース・ルート・ファイルにACLがない場合は、Oracle RMUによって作成されます。
RMU Set Privilegeコマンドでは、様々な方法でACEやACLを操作するために次の修飾子が用意されています。
After
Delete
Like
New
Replaceデフォルトでは、ルート・ファイルACLに追加するACEはすべてACLの一番上に配置されます。Oracle RMUが、ルート・ファイルACLのあるデータベースへのOracle RMUアクセスのリクエストを受け取ると、常にACLの各エントリを先頭から順に検索し、一致するものが見つかるとそこで検索を停止します。ルート・ファイルACLの後方に別の一致エントリがあっても、効果がありません。ルート・ファイルACL内のACEの位置は非常に重要であるため、After修飾子を使用してACEを正確に配置できます。After修飾子を使用すると、追加するACEは、指定したACEの後に追加されます。
ACEをACLから削除するには、Delete修飾子を使用し、ACEをAcl修飾子に指定します。すべてのACEを削除するには、Delete修飾子を使用し、ACEを指定せずにAcl修飾子を指定します。
Like修飾子を使用すると、あるルート・ファイルのACLを別のルート・ファイルにコピーすることができます。Like修飾子に指定したルート・ファイルのACLによって、root-file-specパラメータに指定したルート・ファイルのACLが置き換えられます。
Acl、LikeまたはReplace修飾子に指定することでACEを追加する前には、New修飾子を使用してすべてのACEを削除します。
Replace修飾子を使用するとルート・ファイルACLの既存のACEを置き換えることができます。Acl修飾子に指定するACEが削除され、Replace修飾子に指定するACEによって置き換えられます。
Delete、ReplaceまたはAfter修飾子を使用するとき、既存のACEは省略できます。
RMU Set PrivilegeコマンドにEdit修飾子を使用すると、ACLエディタが起動されます。次の修飾子を指定できるのは、Edit修飾子も指定する場合のみです。
Journal
Keep
Mode
RecoverACLエディタの詳細は、OpenVMSドキュメント・セットを参照してください。
root-file-spec
ルート・ファイルACLを変更するデータベースのルート・ファイル。
Acl[=(ace[,...])]
変更する1つ以上のACEを指定します。ACEを指定しないと、ACL全体がコマンドの対象になります。複数のACEはカンマで区切ります。Acl修飾子を使用するときは、After修飾子も指定しないかぎり、指定したACEがACLの一番上に挿入されます。Acl修飾子とAcl_File修飾子を1つのRMUコマンドラインに指定することはできません。ACEの形式は次のとおりです。
(Identifier=user-id, Access=access_mask)
user-idは、次のいすれかのタイプの識別子であることが必要です。
- [group-name,member-name]のような英数字形式のユーザー識別コード(UIC)
- [group-number,member-number]のような数字形式のユーザー識別コード(UIC)
- 汎用識別子(SECRETARIESなど)
- システム定義識別子(DIALUPなど)
- [*,*]のような形式のワイルドカード文字
名前では大文字と小文字は区別されません。また、IdentifierおよびAccessキーワードは省略表記して1文字で表すことができます。たとえば、次のACEが有効です。
(I=isteward, A=RMU$ALL)
access_maskは次のいずれかになります。
- 「表1-1」の1つ以上のOracle RMU権限
複数の権限を指定する場合、正符号(+)で権限を区切る必要があります。- キーワードRMU$ALL
このキーワードは、ユーザーがすべてのRMU権限を持つことを指定します。(このキーワードはシステム・ファイルの権限には影響しません。)
- キーワードNone
このキーワードは、ユーザーがRMUまたはOpenVMSの権限をまったく持たないことを指定します。Acl=(id=username, access=READ+NONE)と指定すると、指定したユーザーには、RMU権限がなく、データベース・ファイルのREAD権限もありません。
Acl_File=filename
ACEのリスト(1行ごとにACEを1つ指定)を含むファイルを指定します。継続文字を使用すると、1つのACEの指定を改行して継続できます。ファイルにはコメント行も含めることができます。このファイルでは、継続文字にはハイフン(-)、コメントを示すには感嘆符(!)を使用します。Acl_File修飾子とAcl修飾子を1つのRMUコマンドラインに指定することはできません。
After=ace
Acl修飾子に指定したすべてのACEを、After修飾子に指定したACEの後に追加することを指定します。デフォルトでは、ACLに追加されるACEはリストの一番上に配置されます。この修飾子をEdit修飾子と一緒に使用することはできません。
Delete[=All]
Acl修飾子に指定したACEを削除することを指定します。Acl修飾子にACEを指定しないとACL全体が削除されます。Acl修飾子に指定していないACEを指定すると、ACEが存在しないことが通知され、削除操作が続行します。この修飾子をEdit修飾子と一緒に使用することはできません。
Edit
ACLエディタを起動します。また、Journal、Keep、ModeまたはRecover修飾子を使用できるようになります。これら以外の修飾子をEdit修飾子と一緒に指定しても、Oracle RMUによって無視されます。Edit修飾子を付けたRMU Set Privilegeコマンドが機能するのはオフラインの場合のみです。オンラインで試行するとエラー・メッセージが生成されます。ACLエディタではデータベースへの排他書込みアクセスが要求されるため、この制約が必要です。
Edit修飾子を使用するには、SYS$SHARE:ACLEDTSHR.EXEイメージがシステム起動時にインストールされている必要があります(または、RMONSTART.COMによってインストールされている必要があります)。このイメージがインストールされていない場合は、必要に応じてシステム・マネージャに問い合せてください。
ACLエディタの詳細は、OpenVMSドキュメント・セットを参照してください。
Journal[=file-spec]
Nojournal
ジャーナル・ファイルが編集セッションから作成されるかどうかを制御します。デフォルトでは、ジャーナル・ファイルが作成されるのは編集セッションが異常終了したときです。ファイル指定を省略すると、ジャーナル・ファイルの名前はルート・ファイルと同じになり、ファイル・タイプは.tjlになります。Journal修飾子を使用して、デフォルトとは異なるジャーナル・ファイル名を指定できます。Journal修飾子のfile-specパラメータではワイルドカード文字を使用できません。
この修飾子を使用するにはEdit修飾子を指定する必要があります。
Keep[=(Recovery,Journal)]
編集セッションが終了したときに、ジャーナル・ファイルまたはリカバリ・ファイル(あるいは両方)を削除するかどうかを決定します。オプションは次のとおりです。
- Recovery--ACLをリストアするために使用されたジャーナル・ファイルを保存します。
- Journal--現在の編集セッションのジャーナル・ファイルを保存します。
JournalおよびRecoverオプションは、それぞれJとRに短縮できます。オプションを1つしか指定しない場合、カッコは省略できます。
この修飾子を使用するにはEdit修飾子を指定する必要があります。Edit修飾子を指定してKeep修飾子を指定しないと、編集セッションが終了したときに、現在の編集セッションのジャーナル・ファイルとACLをリストアするために使用されたジャーナル・ファイルの両方が削除されます。
Like=source-root-file-spec
Like修飾子に指定したルート・ファイルのACLが、RMU Set Privilegeコマンドのroot-file-specパラメータに指定したルート・ファイルのACLを置き換えることを指定します。既存のACEが削除されてから、Like修飾子に指定したルート・ファイルACLがコピーされます。この修飾子をEdit修飾子と一緒に使用することはできません。
Log
Nolog
RMU Set Privilegeコマンドが、コマンドによって変更されたルート・ファイルの名前と、データベースに関連付けられているACLの両方を返すことを指定します。デフォルトのNologではこの出力は抑制されます。この修飾子をEdit修飾子と一緒に使用することはできません。
Mode=[No]Prompt
ACLエディタがフィールド値に対するプロンプトを表示するかどうかを決定します。デフォルトではACLエディタによってプロンプト・モードが選択されます。この修飾子を使用するにはEdit修飾子を指定する必要があります。
New
RMU Set Privilegeに指定したルート・ファイルのACL内の既存のACEをすべて削除することを指定します。New修飾子を使用するには、Acl、LikeまたはReplace修飾子に新しいACLまたはACEを指定する必要があります。この修飾子をEdit修飾子と一緒に使用することはできません。
Recover[=file-spec]
Norecover
リカバリ操作で使用されるジャーナル・ファイルの名前を指定します。Recover修飾子でファイル指定を省略すると、ジャーナルの名前はルート・ファイルと同じ、ファイル・タイプは.tjlとみなされます。Recover修飾子のfile-specパラメータではワイルドカード文字を使用できません。デフォルトはNorecover修飾子です。ルート・ファイルACLを編集するためにACLエディタを起動するときに、リカバリが試行されません。
この修飾子を使用するにはEditを指定する必要があります。
Replace=(ace[,...])
Acl修飾子に指定したACEを削除し、Replace修飾子に指定したACEで置き換えます。Acl修飾子に指定するACEは、存在している必要があります。また、ACL内と同じ順序で指定する必要があります。この修飾子をEdit修飾子と一緒に使用することはできません。
- データベースに対してRMU Set Privilegeコマンドを使用するには、そのデータベースのルート・ファイルのACLにRMU$SECURITY権限が必要です。あるいは、OpenVMS SECURITYまたはBYPASS権限が必要です。RMU$SECURITYアクセスはACEのVMS BIT_15アクセスです。(READ+WRITE+CONTROL)アクセスがある場合は、DCL SET ACLコマンドを使用して自分にBIT_15アクセスを付与することができます。
- デフォルトでは、ルート・ファイルACLがすべてのOracle Rdbデータベースに作成されます。場合によっては、ルート・ファイルACLによって、データベースの適切なOracle RMUアクセスがすべてのOracle RMUユーザーに許可されないことがあります。そのような状況では、RMU Set Privilegeコマンドを使用してルート・ファイルACLを変更し、適切なOracle RMUアクセスをOracle RMUユーザーに付与する必要があります。「表1-1」に、各Oracle RMUコマンドを利用するために必要な権限を示します。
- 各Oracle Rdbデータベースにデフォルトで作成されるルート・ファイルACLは、ユーザーによるデータベースへのOracle RMUアクセスのみを制御します(ユーザーまたはユーザーのグループによる特定のOracle RMUコマンドの利用を認める権限を指定します)。ルート・ファイルACLでは、SQL文を使用したユーザーのデータベースへのアクセスは制御されません。
SQL文を使用したデータベースへのユーザーのアクセスは、データベースACL(SQL SHOW PROTECTION ON DATABASEコマンドを使用して表示されるACL)でユーザーに付与される権限によって制御されます。- ルート・ファイルACLが変更しているか、予期しない設定になっている場合、レイヤー製品によってOpenVMSディレクトリまたはファイルのACLが操作された可能性があります。このためにOracle RMUアクセス権が意図せずに変更されることがあります。
たとえば、Oracle CDD/Repositoryは次のACEを使用できます。
(IDENTIFIER=[*,*],OPTIONS=DEFAULT+PROPAGATE,ACCESS=NONE)
このACEがOracle Rdbデータベース(CDD$DATABASEまたはCDD$TEMPLATEなど)に伝播されると、そのデータベースを管理するためにOpenVMS権限が必要になることがあります。または、RMU Set Privilegeコマンドを使用して、影響を受けたデータベースのACLを変更できます。- システム間でデータベースを移動する必要がある場合、移動元システムにおけるデータベースのルート・ファイルACLで使用される識別子が、移動先システムの有効な識別子ではない可能性があることに注意してください。このため、移動元システムのルート・ファイルACLを変更せずに移動先システムに移すと、両方のシステムで同じ識別子を持つユーザーしか、移動先システムのデータベースに対して移動元システムのデータベースと同じOracle RMUアクセスを得られません。
たとえば、次のルート・ファイルACLを含むmf_personnelデータベースが現在のシステムから別のノードに移動されるとします。このデータベース・ルート・ファイルACLを変更せずに移動先ノードに移すと、ユーザーUSER、USER2、USER3、USER4およびUSER5は、移動先ノードに同じIDがないかぎり、データベースへのOracle RMUアクセスを得られません。
$ RMU/SHOW PRIVILEGE MF_PERSONNEL.RDB Object type: file, Object name:SQL_USER:[USER]MF_PERSONNEL.RDB;1, on 31-MAR-1992 15:48:36.24 (IDENTIFIER=[SQL,USER],ACCESS=READ+WRITE+CONTROL+RMU$ALTER+ RMU$ANALYZE+RMU$BACKUP+RMU$CONVERT+RMU$COPY+RMU$DUMP+RMU$LOAD+ RMU$MOVE+RMU$OPEN+RMU$RESTORE+RMU$SECURITY+RMU$SHOW+RMU$UNLOAD+ RMU$VERIFY) (IDENTIFIER=[SQL,USER2],ACCESS=RMU$ANALYZE+RMU$OPEN+RMU$VERIFY) (IDENTIFIER=[SQL,USER3],ACCESS=RMU$SECURITY) (IDENTIFIER=[RDB,USER4],ACCESS=RMU$BACKUP+RMU$CONVERT+RMU$DUMP+ RMU$RESTORE) (IDENTIFIER=[RDB,USER5],ACCESS=RMU$LOAD+RMU$SHOW) (IDENTIFIER=[*,*],ACCESS=NONE)
- 次に、データベースをノード間で移動するいくつかの方法を示し、それぞれの場合にオリジナルのルート・ファイルACLがどのように処理されるかを説明します。
- RMU Restoreコマンド
まず、RMU Backupコマンドを使用して、移動元ノードでデータベースをバックアップし、.rbfファイルを作成します。次に、移動元ノードから移動先ノードに.rbfファイルをコピーします。RMU Restoreコマンドを使用して、移動先ノードで移動元ノードからデータベースを再作成すると、移動先ノードのデータベースには、移動元ノードのデータベースと同じルート・ファイルACLが作成されます。移動元ノードのルート・ファイルACLにRMU$SECURITY権限のあるユーザーが、移動先ノードでも同じ識別子を持つ場合、そのユーザーが移動先ノードのルート・ファイルACLを変更して、データベースへのOracle RMUアクセスのために必要な権限をユーザーに付与できます。それ以外の場合、OpenVMSのいずれかのオーバーライド権限(SECURITYまたはBYPASS)を持つユーザーがルート・ファイルACLを変更する必要があります。- RMU RestoreコマンドおよびNoacl修飾子
まず、RMU Backupコマンドを使用して、移動元ノードでデータベースをバックアップし、.rbfファイルを作成します。次に、移動元ノードから移動先ノードに.rbfファイルをコピーします。Noacl修飾子を付けたRMU Restoreコマンドを使用して、移動先ノードで移動元ノードからデータベースを再作成すると、移動先ノードのデータベースは空のルート・ファイルACLと一緒に作成されます。OpenVMSのオーバーライド権限いずれか(SECURITYまたはBYPASS)を持つユーザーが、ルート・ファイルACLを変更して、データベースへのOracle RMUアクセスを必要とするユーザーに権限を付与する必要があります。- SQL IMPORT文
まず、移動元ノードでSQL EXPORT文を使用して.rbrファイルを作成します。次に、移動元ノードから移動先ノードに.rbrファイルをコピーします。移動先ノードでSQL IMPORT文を使用すると、インポートされたデータベースは、移動元ノードのデータベースに存在していたのと同じルート・ファイルACLと一緒に作成されます。移動元ノードのルート・ファイルACLにRMU$SECURITY権限のあるユーザーが、移動先ノードでも同じ識別子を持つ場合、そのユーザーが移動先ノードのルート・ファイルACLを変更して、データベースへのOracle RMUアクセスのために必要な権限をユーザーに付与できます。それ以外の場合は、OpenVMSのオーバーライド権限いずれか(SECURITYまたはBYPASS)を持つユーザーが、ルート・ファイルACLを変更して、データベースへのOracle RMUアクセスを必要とするユーザーに権限を付与する必要があります。- SQL IMPORT NO ACL文
まず、移動元ノードでSQL EXPORT文を使用して.rbrファイルを作成します。次に、移動元ノードから移動先ノードに.rbrファイルをコピーします。SQL IMPORT NO ACL文を移動先ノードで使用すると、インポートされたデータベースは、1つのACEを含むルート・ファイルACLと一緒に作成されます。この1つのACEによって、OpenVMS READ、WRITEおよびCONTROL権限とすべてのOracle RMU権限が、IMPORT操作を実行したユーザーに付与されます。IMPORT操作を実行したユーザーが、ルート・ファイルACLを変更して、データベースへのOracle RMUアクセスを必要とするユーザーに権限を付与することができます。
例1次の例では、ユーザー識別コード(UIC)[SQL,USER]のユーザーがmf_test_dbデータベースを作成します。したがって、そのユーザーがそのデータベースの所有者になります。mf_test_dbデータベースを作成した後で、所有者がデータベースのルート・ファイルACLを表示します。次に、所有者がOracle RMU権限をデータベース・ユーザーに付与します。各タイプのユーザーに付与されるOracle RMU権限は、ユーザーがデータベースで必要とするOracle RMUアクセスのタイプによって異なります。
$! Note that by default the owner (the user with a UIC of [SQL,USER]) $! is granted all the Oracle RMU privileges in the root file $! ACL and no other users are granted any Oracle RMU privileges. $ RMU/SHOW PRIVILEGE MF_TEST_DB.RDB Object type: file, Object name: SQL_USER:[USER]MF_TEST_DB.RDB;1, on 30-MAR-1996 15:51:55.79 (IDENTIFIER=[SQL,USER],ACCESS=READ+WRITE+CONTROL+RMU$ALTER+ RMU$ANALYZE+RMU$BACKUP+RMU$CONVERT+RMU$COPY+RMU$DUMP+RMU$LOAD+ RMU$MOVE+RMU$OPEN+RMU$RESTORE+RMU$SECURITY+RMU$SHOW+RMU$UNLOAD+ RMU$VERIFY) $! $! The owner uses the RMU Set Privilege command and the After $! qualifier to grant the RMU$ANALYZE, RMU$OPEN, and $! RMU$VERIFY privileges to a user with a UIC of [SQL,USER2]. $! This user will serve as the database administrator for the $! mf_test_db database. $ RMU/SET PRIVILEGE/ACL=(IDENTIFIER=[SQL,USER2],ACCESS=RMU$ANALYZE - _$ +RMU$OPEN+RMU$VERIFY) - _$ /AFTER=(IDENTIFIER=[SQL,USER])/LOG MF_TEST_DB.RDB %RMU-I-MODIFIED, SQL_USER:[USER]MF_TEST_DB.RDB;1 modified $! $! Next, the owner grants the RMU$SECURITY privilege to a user with a $! UIC of [SQL,USER3]. This gives the user USER3 the ability $! to grant other users the appropriate privileges they need for $! accessing the database with Oracle RMU commands. Because both $! the database creator and user USER3 have the RMU$SECURITY $! privilege, both of them can modify the root file ACL for the $! database. $ RMU/SET PRIVILEGE/ACL=(IDENTIFIER=[SQL,USER3],ACCESS=RMU$SECURITY) - _$ /AFTER=(IDENTIFIER=[SQL,USER2])/LOG MF_TEST_DB.RDB %RMU-I-MODIFIED, SQL_USER:[USER]MF_TEST_DB.RDB;1 modified $! $! The user with a UIC of [RDB,USER4], who will serve as the database $! operator, is granted the RMU$BACKUP, RMU$CONVERT, RMU$DUMP, and $! RMU$RESTORE privileges: $ RMU/SET PRIVILEGE/ACL=(IDENTIFIER=[RDB,USER4],ACCESS=RMU$BACKUP - _$ +RMU$CONVERT+RMU$DUMP+RMU$RESTORE) - _$ /AFTER=(IDENTIFIER=[SQL,USER3])/LOG MF_TEST_DB.RDB %RMU-I-MODIFIED, SQL_USER:[USER]MF_TEST_DB.RDB;1 modified $! $! The RMU$LOAD and RMU$SHOW privileges are granted to the user $! with a UIC of [RDB,USER5]. This user will be writing programs $! that load data into the database. $ RMU/SET PRIVILEGE/ACL=(IDENTIFIER=[RDB,USER5],ACCESS=RMU$LOAD - _$ +RMU$SHOW) /AFTER=(IDENTIFIER=[RDB,USER4]) MF_TEST_DB.RDB %RMU-I-MODIFIED, SQL_USER:[USER]MF_TEST_DB.RDB;1 modified $! $! No privileges are granted to all other users. $ RMU/SET PRIVILEGE/ACL=(IDENTIFIER=[*,*],ACCESS=NONE) - _$ /AFTER=(IDENTIFIER=[RDB,USER5])/LOG MF_TEST_DB.RDB %RMU-I-MODIFIED, SQL_USER:[USER]MF_TEST_DB.RDB;1 modified $! $! The RMU/SHOW PRIVILEGE command displays the root file ACL for the $! mf_test_db database. $ RMU/SHOW PRIVILEGE MF_TEST_DB.RDB Object type: file, Object name: SQL_USER:[USER]MF_TEST_DB.RDB;1, on 30-MAR-1996 15:52:17.03 (IDENTIFIER=[SQL,USER],ACCESS=READ+WRITE+CONTROL+RMU$ALTER+ RMU$ANALYZE+RMU$BACKUP+RMU$CONVERT+RMU$COPY+RMU$DUMP+RMU$LOAD+ RMU$MOVE+RMU$OPEN+RMU$RESTORE+RMU$SECURITY+RMU$SHOW+RMU$UNLOAD+ RMU$VERIFY) (IDENTIFIER=[SQL,USER2],ACCESS=RMU$ANALYZE+RMU$OPEN+RMU$VERIFY) (IDENTIFIER=[SQL,USER3],ACCESS=RMU$SECURITY) (IDENTIFIER=[RDB,USER4],ACCESS=RMU$BACKUP+RMU$CONVERT+RMU$DUMP+ RMU$RESTORE) (IDENTIFIER=[RDB,USER5],ACCESS=RMU$LOAD+RMU$SHOW) (IDENTIFIER=[*,*],ACCESS=NONE)
例2
次のコマンドは、UICが[RDB,USER1]のユーザーのACEを人事データベースのルート・ファイルACLに追加します。このACEによって、[RDB,USER1]に人事データベースのRMU$BACKUP権限が付与されます。RMU$BACKUP権限により、ユーザー[RDB,USER1]は、人事データベースに対してRMU Backup、RMU Backup After_JournalおよびRMU Checkpointコマンドを利用できます。
$ RMU/SET PRIVILEGE/ACL=(IDENTIFIER=[RDB,USER1],ACCESS=RMU$BACKUP) - _$ PERSONNEL.RDB
例3
次の例では、Replace修飾子によって、ルート・ファイルACL内のUICが[RDB,USER4]のユーザーのACEが、UICが[SQL,USER6]のユーザーのために指定されたACEで置き換えられます。
$ RMU/SET PRIVILEGE/ACL=(IDENTIFIER=[RDB,USER4]) - _$ /REPLACE=(IDENTIFIER=[SQL,USER6],ACCESS=RMU$BACKUP+RMU$CONVERT - _$ +RMU$DUMP+RMU$RESTORE)/LOG MF_TEST_DB.RDB %RMU-I-MODIFIED, SQL_USER:[USER]MF_TEST_DB.RDB;1 modified $! $ RMU/SHOW PRIVILEGE MF_TEST_DB.RDB Object type: file, Object name: SQL_USER:[USER]MF_TEST_DB.RDB;1, on 30-MAR-1996 15:52:23.92 (IDENTIFIER=[SQL,USER],ACCESS=READ+WRITE+CONTROL+RMU$ALTER+ RMU$ANALYZE+RMU$BACKUP+RMU$CONVERT+RMU$COPY+RMU$DUMP+RMU$LOAD+ RMU$MOVE+RMU$OPEN+RMU$RESTORE+RMU$SECURITY+RMU$SHOW+RMU$UNLOAD+ RMU$VERIFY) (IDENTIFIER=[SQL,USER2],ACCESS=RMU$ANALYZE+RMU$OPEN+RMU$VERIFY) (IDENTIFIER=[SQL,USER3],ACCESS=RMU$SECURITY) (IDENTIFIER=[SQL,USER6],ACCESS=RMU$BACKUP+RMU$CONVERT+RMU$DUMP+ RMU$RESTORE) (IDENTIFIER=[RDB,USER5],ACCESS=RMU$LOAD+RMU$SHOW) (IDENTIFIER=[*,*],ACCESS=NONE)
例4
次の例では、Delete修飾子によって、UICが[RDB,USER5]のユーザーのACEが、mf_test_dbデータベースのルート・ファイルACLから削除されます。
$ RMU/SET PRIVILEGE/ACL=(IDENTIFIER=[RDB,USER5]) - _$ /DELETE/LOG MF_TEST_DB.RDB %RMU-I-MODIFIED, SQL_USER:[USER]MF_TEST_DB.RDB;1 modified $! $ RMU/SHOW PRIVILEGE MF_TEST_DB.RDB Object type: file, Object name: SQL_USER:[USER]MF_TEST_DB.RDB;1, on 30-MAR-1996 15:52:29.07 (IDENTIFIER=[SQL,USER],ACCESS=READ+WRITE+CONTROL+RMU$ALTER+ RMU$ANALYZE+RMU$BACKUP+RMU$CONVERT+RMU$COPY+RMU$DUMP+RMU$LOAD+ RMU$MOVE+RMU$OPEN+RMU$RESTORE+RMU$SECURITY+RMU$SHOW+RMU$UNLOAD+ RMU$VERIFY) (IDENTIFIER=[SQL,USER2],ACCESS=RMU$ANALYZE+RMU$OPEN+RMU$VERIFY) (IDENTIFIER=[SQL,USER3],ACCESS=RMU$SECURITY) (IDENTIFIER=[SQL,USER6],ACCESS=RMU$BACKUP+RMU$CONVERT+RMU$DUMP+ RMU$RESTORE) (IDENTIFIER=[*,*],ACCESS=NONE)
例5
次の例では、Like修飾子によって、ルート・ファイルACLがmf_test_dbデータベースからtest_dbデータベースにコピーされます。この操作においてtest_dbデータベースのオリジナルのルート・ファイルACLは削除されます。
$ RMU/SHOW PRIVILEGE TEST_DB.RDB Object type: file, Object name: SQL_USER:[USER]TEST_DB.RDB;1, on 30-MAR-1996 15:52:31.48 (IDENTIFIER=[SQL,USER],ACCESS=READ+WRITE+CONTROL+RMU$ALTER+ RMU$ANALYZE+RMU$BACKUP+RMU$CONVERT+RMU$COPY+RMU$DUMP+RMU$LOAD+ RMU$MOVE+RMU$OPEN+RMU$RESTORE+RMU$SECURITY+RMU$SHOW+RMU$UNLOAD+ RMU$VERIFY) $ ! $ RMU/SHOW PRIVILEGE MF_TEST_DB.RDB Object type: file, Object name: SQL_USER:[USER]MF_TEST_DB.RDB;1, on 30-MAR-1996 15:52:33.86 (IDENTIFIER=[SQL,USER],ACCESS=READ+WRITE+CONTROL+RMU$ALTER+ RMU$ANALYZE+RMU$BACKUP+RMU$CONVERT+RMU$COPY+RMU$DUMP+RMU$LOAD+ RMU$MOVE+RMU$OPEN+RMU$RESTORE+RMU$SECURITY+RMU$SHOW+RMU$UNLOAD+ RMU$VERIFY) (IDENTIFIER=[SQL,USER2],ACCESS=RMU$ANALYZE+RMU$OPEN+RMU$VERIFY) (IDENTIFIER=[SQL,USER3],ACCESS=RMU$SECURITY) (IDENTIFIER=[SQL,USER6],ACCESS=RMU$BACKUP+RMU$CONVERT+RMU$DUMP+ RMU$RESTORE) (IDENTIFIER=[*,*],ACCESS=NONE) $! $ RMU/SET PRIVILEGE/LIKE=MF_TEST_DB.RDB/LOG TEST_DB.RDB %RMU-I-MODIFIED, SQL_USER:[USER]TEST_DB.RDB;1 modified $! $ RMU/SHOW PRIVILEGE TEST_DB.RDB Object type: file, Object name: SQL_USER:[USER]TEST_DB.RDB;1, on 30-MAR-1996 15:52:41.36 (IDENTIFIER=[SQL,USER],ACCESS=READ+WRITE+CONTROL+RMU$ALTER+ RMU$ANALYZE+RMU$BACKUP+RMU$CONVERT+RMU$COPY+RMU$DUMP+RMU$LOAD+ RMU$MOVE+RMU$OPEN+RMU$RESTORE+RMU$SECURITY+RMU$SHOW+RMU$UNLOAD+ RMU$VERIFY) (IDENTIFIER=[SQL,USER2],ACCESS=RMU$ANALYZE+RMU$OPEN+RMU$VERIFY) (IDENTIFIER=[SQL,USER3],ACCESS=RMU$SECURITY) (IDENTIFIER=[SQL,USER6],ACCESS=RMU$BACKUP+RMU$CONVERT+RMU$DUMP+ RMU$RESTORE) (IDENTIFIER=[*,*],ACCESS=NONE)
例6
次の例では、New修飾子によって既存のすべてのACEが削除され、Acl修飾子によってmf_test_dbデータベースのルート・ファイルACLの新しいACEが指定されます。この例のRMU Set Privilegeコマンドが発行された後では、UICが[SQL,USER2]のユーザーまたはOpenVMSオーバーライド権限を持つユーザーしか、mf_test_dbデータベースのルート・ファイルACLを表示できません。
$ RMU/SHOW PRIVILEGE MF_TEST_DB.RDB Object type: file, Object name: SQL_USER:[USER]MF_TEST_DB.RDB;1, on 30-MAR-1996 15:52:44.50 (IDENTIFIER=[SQL,USER],ACCESS=READ+WRITE+CONTROL+RMU$ALTER+ RMU$ANALYZE+RMU$BACKUP+RMU$CONVERT+RMU$COPY+RMU$DUMP+RMU$LOAD+ RMU$MOVE+RMU$OPEN+RMU$RESTORE+RMU$SECURITY+RMU$SHOW+RMU$UNLOAD+ RMU$VERIFY) (IDENTIFIER=[SQL,USER2],ACCESS=RMU$ANALYZE+RMU$OPEN+RMU$VERIFY) (IDENTIFIER=[SQL,USER3],ACCESS=RMU$SECURITY) (IDENTIFIER=[SQL,USER6],ACCESS=RMU$BACKUP+RMU$CONVERT+RMU$DUMP+ RMU$RESTORE) (IDENTIFIER=[*,*],ACCESS=NONE) $! $ RMU/SET PRIVILEGE/NEW - _$ /ACL=(IDENTIFIER=[SQL,USER2],ACCESS=READ+WRITE+CONTROL+ - _$ RMU$ALTER+RMU$ANALYZE+RMU$BACKUP+RMU$CONVERT+RMU$COPY+ - _$ RMU$DUMP+RMU$LOAD+RMU$MOVE+RMU$OPEN+RMU$RESTORE+RMU$SHOW+ - _$ RMU$UNLOAD+RMU$VERIFY)/LOG MF_TEST_DB.RDB %RMU-I-MODIFIED, SQL_USER:[USER]MF_TEST_DB.RDB;1 modified