前へ | 次へ | 目次 | 索引 |
侵入の試みがないかどうかシステムを監視するのはセキュリティ管理者の仕事ですが,ユーザがアカウントやファイルへのアクセスの監査を手伝うこともできます。
10.6.1 最終ログイン時間
OpenVMS システムは,ユーザが最後にアカウントにログインした時間についての情報を UAF レコードに保管します。ログイン時にこの情報を表示するかどうかは,セキュリティ管理者が決定します。中程度から高水準のセキュリティ要件を持つシステムでは,頻繁にこの情報を表示して,異常な成功ログインや説明のつかない成功ログインがないかどうか,説明のつかない障害ログインがないかどうかをユーザがチェックします。
ユーザがログインしなかったのに会話型または非会話型ログインの報告があれば,ただちにセキュリティ管理者に知らせるとともに,パスワードを変更します。セキュリティ管理者は,システム・アカウント・ログと監査ログを使用して詳しく調査します。
ログイン障害メッセージを受け取ったが,障害が生じたとは考えられない場合には,誰か他のユーザがアカウントにアクセスしようとして,失敗したのかもしれません。パスワードをチェックして,第 1.9 節 に説明するパスワード保護のガイドラインに準拠しているかどうかを調べます。ガイドラインに反することがあれば,ただちにパスワードを変更します。
ログイン障害メッセージが表示されるはずなのに,表示されなかったり,障害数が少なすぎる場合には,パスワードを変更し,ログイン障害の問題がありそうなことをセキュリティ管理者に報告します。
セキュリティ管理者が,発生した場合には特別な注意を払う必要のあるイベント・タイプを指定していることがあります。このようなイベントが検出された場合には,セキュリティ管理者は,システム・セキュリティ監査ログ・ファイルに監査結果を送信するか,セキュリティ・オペレータ・ターミナルとして使用可能なターミナルにアラームを送信するようにシステムに指示します。たとえば,セキュリティ管理者が書き込みアクセスが禁止されている 1 つ以上のファイルを指定している場合に,監査機能を使用可能にするか,アラームを設定しておけば,このようなファイルへのアクセスが発生したことが分かります。
アカウントへの侵入があると考えられる場合には,パスワードを変更します。重要なファイルに監査機能を適用するように,セキュリティ管理者に要求してもよいでしょう。
10.6.2 監査機能やアラームを起動するイベント
監査機能やアラームを起動するイベントには,次のものがあります。
セキュリティ監査またはアラームを開始するイベント | |
---|---|
イメージのインストール
ファイル・アクセスのタイプ ボリュームのマウントとディスマウント |
システム・パスワードとユーザ・パスワード,システム登録ファイル,ネットワーク代理ファイル,または権利データベースの変更 |
ACL ファイルまたはグローバル・セクションが要求したアクセス・イベント | ログイン,ログアウト,ログイン障害,侵入の試み |
たとえば,CONFIDREVIEW.MEM というファイルを監査するとします。ABADGUY というユーザが CONFIDREVIEW.MEM というファイルをアクセスするときに削除アクセス権を持っていると,次のような監査レコードがシステム・セキュリティ監査ログ・ファイルに書き込まれます。
%%%%%%%%%%% OPCOM 11-DEC-1999 09:21:11.10 %%%%%%%%%%% Message from user AUDIT$SERVER on BOSTON Security audit(SECURITY)on BOSTON, system id: 19424 Auditable event: Attempted file access Event time: 11-DEC-1999 09:21:10.84 PID: 23E00231 Username: ABADGUY Image name: BOSTON$DUA0:[SYS0.SYSCOMMON.][SYSEXE]DELETE.EXE Object name: _BOSTON$DUA1:[RWOODS]CONFIDREVIEW.MEM;1 Object type: file Access requested: DELETE Status: %SYSTEM-S-NORMAL, normal successful completion Privileges used: SYSPRV |
監査メッセージには,不法アクセス者の名前,アクセス方法([SYSEXE]DELETE.EXE プログラムを使用して行われた削除操作),アクセス時間(9:21 A.M),ファイルにアクセスするのに使用した特権(SYSPRV)が示されています。セキュリティ管理者は,これらの情報に基づいて処置をします。
10.6.3 セキュリティ監査ログ・ファイル
いずれかのファイルがアクセスされ,そのファイルのACL の監査エントリ(第 10.6.4 項 を参照)に指定された条件が満たされるたびに,セキュリティ監査メッセージが監査ログ・ファイルに書き込まれます。CONFIDREVIEW.MEM ファイルにアクセスがあると,セキュリティ監査機能によって保護されているシステム上のファイルにアクセスがあった場合と同様,監査レコードをセキュリティ監査ログ・ファイルに書き込むようにプロンプトが出されます。
監査機能を導入したら,セキュリティ管理者とともに,別の侵入が生じていないかどうかを定期的にチェックします。
10.6.4 重要なファイルにアクセス制御リスト・エントリ(ACE)を追加する場合
不正にアクセスされた重要ファイルがあれば,セキュリティ管理者に相談して,それらのファイルへのアクセスを監査する戦略を立てるとよいでしょう。
状況を調べて,標準保護コードや汎用 ACL(『OpenVMS Guide to System Security』を参照)を使用してファイルを保護するためのすべての手段を実行しつくした場合には,セキュリティ監査が必要であると判断してよいでしょう。
セキュリティ監査機能を指定するには,所有しているファイルまたはアクセス制御権を持つファイルに特別なアクセス制御リスト・エントリ(ACE)を追加します。ただし,監査ログ・ファイルはシステム全般に適用されるので,システムごとのセキュリティ管理者がファイル監査の使い方を制御することをおすすめします。制御権を持つファイルにはユーザでも監査 ACE を追加できますが,セキュリティ管理者の場合は,システム・レベルでファイルの監査機能を使用可能にしなければなりません。
アカウントに侵入の試みがあったと考えられる場合には,セキュリティ管理者は,すべてのファイル・アクセスの監査機能を一時的に使用可能にすることができます。また,監査機能を使用可能にすれば,ファイルに対する読み込みアクセスを監視して,ファイルにアクセスして内容を閲覧したユーザを見つけることもできます。
1 つのファイルにアクセス違反があると,他のファイルにもアクセス上の問題が存在することがよくあります。したがって,セキュリティ管理者は,セキュリティ監査 ACL を持つすべての重要ファイルに対するアクセスを監視した方よいでしょう。重要ファイルに望ましくないアクセスがあった場合には,ただちに処置を講じなければなりません。
たとえば,ユーザ RWOODS とセキュリティ管理者が,極秘ファイルである CONFIDREVIEW.MEM をいつアクセスしたらよいかを知らなければならないと同意した場合には,ユーザ RWOODS は,次のようにして CONFIDREVIEW.MEM ファイルの既存の ACL にエントリを追加します。
$ SET SECURITY/ACL=(ALARM=SECURITY,ACCESS=READ+WRITE- _$ +DELETE+CONTROL+FAILURE+SUCCESS)CONFIDREVIEW.MEM |
論理名とは,ファイル,ディレクトリ,デバイス,またはキューなどのシステム・オブジェクトを表す名前の代わりに使用できる名前をいいます。たとえば, 省略時のディスクやディレクトリに論理名を割り当てることが可能です。論理名は,読みやすさとファイルの独立性の 2 つの働きをします。
頻繁に使用するファイル,ディレクトリ,またはデバイスに,短く分かりやすい論理名を定義することができます。こうした論理名は,完全なファイル指定より覚えやすく,入力も簡単です。使用頻度の高い名前は,ログイン・コマンド・プロシージャの中で定義します。ユーザが頻繁に使用する名前は,システム管理者がシステム・スタートアップ・コマンド・プロシージャの中で定義します。
論理名を使用すれば,プログラムやコマンド・プロシージャを物理的なファイル指定を意識せずに扱うことができます。たとえば,あるコマンド・プロシージャで論理名 ACCOUNTS を定義しておけば,どのディスク上のどのファイルに対しても ACCOUNTS を使用するだけでコマンド・プロシージャを実行できます。本章では,次のことについて説明します。
本章で説明するコマンドについての詳細は,『OpenVMS DCL ディクショナリ』またはオンライン・ヘルプを参照してください。
11.1 論理名の特徴
論理名は次のような特徴を持っています。
一般に,コマンドはシステム・オブジェクトを受け取ると,その名前が論理名かどうかをチェックします。論理名の場合には,論理名が実際の値に置き換えられてからコマンドが実行されます。
たとえば,DISK7:[WALSH.COMMAND_PROC] ディレクトリを指す論理名 COMS を定義しておけば,DCL コマンド行での入力が次のように簡単になります。
$ DEFINE COMS DISK7:[WALSH.COMMAND_PROC] |
次のように,論理名はDCL コマンドの中でも使用することができます。
$ SET DEFAULT COMS |
$ TYPE COMS:PAYROLL.COM |
システムを起動してログインすると,そのシステムで使用される論理名が作成されます。これらの論理名を使用すると,物理デバイス名を使用しないでも,頻繁に使用されるファイルやデバイスを参照することができます。これらの論理名一覧は 第 11.9.3 項 を参照ください。
ログインするたびに,ユーザ・プロセス用の論理名グループが作成され,それらの論理名がプロセス・テーブルに置かれます。これらの論理名一覧は 第 11.9.1 項 を参照ください。
たとえば,オペレーティング・システムのプログラムの一覧を表示するには,次のように,プログラムが実際に格納されているディスクやディレクトリの名前ではなく,論理名 SYS$SYSTEM を使用できます。
$ DIRECTORY SYS$SYSTEM |
たとえば,論理名 SYS$LOGIN は,ログインしたときの省略時のデバイスとディレクトリを表しています。SET DEFAULT コマンドを使用して現在の省略時の値を変更した場合には,次のコマンドを使用すれば,当初の省略時のディレクトリにあるファイルを表示できます。
$ TYPE SYS$LOGIN:DAILY_NOTES.DAT |
論理名は,ASSIGN コマンドまたはDEFINE コマンドで作成します。本章では,例のなかで DEFINEコマンドを使用することとします。
通常,論理名はログイン・コマンド・プロシージャ(LOGIN.COM)で定義するので,ログインするたびに論理名を使用することができます。論理名は会話形式でも作成できます。ただし,この場合には,現在のプロセスが終了した時点でそれらの論理名は使用できなくなります。
ユーザが自分のプロセス・テーブルに作成した論理名は,他のユーザのプロセスでは使用することができません。システム管理者,または特権をもったユーザは,システムにログインするあらゆるユーザが使用できる論理名を共用テーブル上に作成できます。グループ,またはシステム論理名テーブルは共用テーブルの例です。
共用テーブルの詳細については,第 11.9.4 項 を参照してください。
11.3.1 DEFINE コマンドの使用方法
DEFINE コマンドで論理名を定義するときの形式は,次のとおりです。
DEFINE 論理名 等価名[,...] |
同じ形式を使用して,ノード名,ファイル指定,デバイス名,アプリケーション固有情報,他の論理名も作成できます。
省略時の設定では,DEFINE コマンドは,ユーザ・プロセスの論理名テーブルに論理名を登録します(第 11.8 節 を参照)。これらの論理名は,そのプロセスとサブプロセスだけで使用できるものです。他の論理名テーブルに論理名を追加する場合は,/JOB,/GROUP,/SYSTEM,または /TABLE=テーブル名 のいずれかの修飾子を 1 つ付けて別のテーブルを指定します。この修飾子のうち,最初の 3 つは,それぞれ,省略時設定のジョブ,グループ,システムの論理名テーブルを指定します。/TABLE=テーブル名は,どのような種類のテーブルでも指定でき,また,クラスタ単位のテーブルを指定する際に使用できる唯一の修飾子です。
たとえば,次の例では,論理名 WORKFILE を等価文字列 DISK2:[WALSH.REPORTS]WORK_SUMMARY.DAT と対応づけるよう定義しています。
$ DEFINE WORKFILE DISK2:[WALSH.REPORTS]WORK_SUMMARY.DAT |
WORKFILE を論理名として定義しておけば,等価文字列の代わりに論理名を使用できます。
たとえば,次のコマンドは,印刷キュー BLDGC_LPS20_ANSI に対応する論理名 MY_Q を作成します。
$ DEFINE MY_Q BLDGC_LPS20_ANSI |
以後は,次のコマンドによってファイル FABLES.TXT を印刷キュー BLDGC_LPS20_ANSI にプリントできます。
$ PRINT/QUEUE=MY_Q FABLES.TXT |
次の例は /TABLE=テーブル名修飾子の使用例であり,プロセス論理名テーブル以外のテーブルに論理名を作成します。LNM$SYSCLUSTER を指定すると,論理名は省略時のクラスタ単位テーブルである LNM$SYSCLUSTER_TABLE に置かれるので,クラスタ内のすべてのユーザがこの論理名にアクセスできます。
$ DEFINE/TABLE=LNM$SYSCLUSTER CUSTOMERS DISK1:[CUSTOMER_VISITS]CUSTOMERS.TXT |
11.3.2 ファイル入出力用コマンド・プロシージャ内の論理名の作成
コマンド・プロシージャ内で論理名を使用してファイル入出力を行うことができます。OPENコマンドを使用してファイルをオープンする際には,そのファイルの論理名も作成することができます。これに続くREAD,WRITE,CLOSEコマンドでは,このファイルを参照するために実際のファイルを指定せずに論理名を使用することができます。
次の例では,OPEN コマンドは論理名 INFILEを作成し,CLOSE コマンドはこの論理名を削除しています。
$ OPEN INFILE DISK3:[WALSH]DATA.DAT $ READ INFILE RECORD $ CLOSE INFILE |
DEFINE コマンドで論理名を作成するときには,次の規則に従います。
また,論理名は,ファイル指定の左端の構成要素になるようにすること。
ASSIGN コマンドは,コロンを削除してから論理名を論理名テーブルに登録するが,DEFINE コマンドは,論理名の一部としてコロンをセーブすることに注意。
次のコマンドは,DISK1:[SALES_STAFF]PAYROLL.DAT: ファイルを表示します。
$ DEFINE PAY DISK1:[SALES_STAFF]PAYROLL.DAT $ TYPE PAY |
$ DEFINE PAY_FILE DISK1:[SALES_STAFF]PAYROLL $ TYPE PAY_FILE:*.DAT |
$ DEFINE PAY_DIR DISK1:[SALES_STAFF] $ TYPE PAY_DIR:PAYROLL.DAT |
$ DEFINE PAY_DISK DISK1: $ TYPE PAY_DISK:[SALES_STAFF]PAYROLL.DAT |
前へ | 次へ | 目次 | 索引 |