日本−日本語 |
|
|
HP OpenVMS: システム・セキュリティ・ガイド > パート III システム管理者のためのセキュリティ第7章 システム・アクセスの管理 |
|
目次 この章では,ユーザのアカウントとパスワードを割り当てることで,ユーザにシステムへのアクセス権を指定する方法を説明します。 アカウントを保護する必要があり,平均的なセキュリティが必要とされる商用システムのセキュリティの要件に基づいて説明します。 また,平均よりも高度なセキュリティの要件についても説明します。 システム・データおよびリソースへのアクセスの制御の詳細については, 第8章 「システムのデータと資源へのアクセスの制御」を参照してください。 ユーザ・アクションの監査の詳細については, 第6章 「システムとそのデータの管理」および 第10章 「セキュリティ監査の実施」を参照してください。 登録ユーティリティ (AUTHORIZE) が,アカウントとパスワードを確立するための主要なツールです。 このユーティリティの説明については,『OpenVMS システム管理ユーティリティ・リファレンス・マニュアル』の A–L を参照してください。 ユーザに与えられるシステム・アクセスのレベルは,サイトの要件,組織内におけるユーザの役割,およびユーザのアカウントの管理に依存します。 セキュリティの要件が低く,システム・リソースが多いサイトでは,1 日のどの時間帯にアクセスしてもよいようにする一方で,セキュリティ要件が中程度のサイトでは,ログインを日中の時間帯のみに限定したり,ダイアルアップまたはネットワーク接続を一部のユーザのみに許可するということが考えられます。 登録ユーティリティを使用して,ユーザがシステムにアクセスできる日時と方法を制御できます。 表 7-1 「ログインの時間と条件を制御する AUTHORIZE 修飾子」 に,適用可能な修飾子を示します。 表 7-1 ログインの時間と条件を制御する AUTHORIZE 修飾子
AUTHORIZE 修飾子を使用して,システムの使用を,1 週間の特定の曜日や 1 日の特定の時間帯に制限できます。 作業時間の制限は,システムの負荷バランスの改善に便利です。 アカウントへのアクセスの制限は,通常の業務時間以外におけるシステムの不正使用を防ぐ効果的な手段でもあります。 /PRIMEDAYS 修飾子を使用して 1 週間の主曜日と副曜日を定義するか,主曜日が月曜日から金曜日で副曜日が土曜日と日曜日であるデフォルトに従います。 たとえば,火曜日から土曜日まで勤務するユーザのデフォルトを変更するには,/PRIMEDAYS 修飾子を次のように指定します。
ただし,主曜日に祝日がある場合など,サイトの通常の曜日割り当てに当てはまらない変更が運用上必要になることがあります。 通常の曜日割り当てをオーバーライドするには,DCL の SET DAY コマンドを使用し,該当日に対して適用する曜日タイプの解釈を指定します。 これには,OPER 特権が必要です。 この変更は,すでにログインしているすべてのユーザのほか,以降その日にログインするすべてのユーザに適用されることに注意してください。 曜日タイプを変更すると,現在ログインしているユーザのうち,その曜日タイプに関しては権限のないユーザは,次の 1 時間でシステムからログアウトされます。 ジョブ・コントローラは,1 時間ごとに時間の制限を適用します。 時間帯ごとに制限する必要があるログイン・アクセスのタイプを決定します。 ログイン・アクセスの修飾子には,/LOCAL,/REMOTE,/DIALUP,/INTERACTIVE,/BATCH,および /NETWORK があります。 ただし,サイトで全タイプのログインに対して主時間と副時間のセットを 1 つだけ適用する場合,すべてのアクセスのモードに適用される /ACCESS 修飾子を指定できます。 次の例では,ユーザのアカウントに /BATCH 修飾子を適用して,通常の業務時間中にそのユーザがバッチ・ジョブを実行できないようにする方法を示します。
このように指定すると,該当するユーザは主曜日は午後 6:00 から午前 8:59 までの時間帯にのみバッチ・ジョブを実行できますが,副曜日は一日中実行できます。 次の理由で,一部のユーザのネットワーク・アクセスを禁止することが考えられます。
特定のユーザのネットワーク・アクセスを禁止するには,次の例のように,AUTHORIZE 修飾子の /NONETWORK を使用します。
すべての AUTHORIZE アクセス・モードの修飾子 (/LOCAL,/REMOTE,/DIALUP,/INTERACTIVE,/BATCH,または /NETWORK) をこの方法で無効にして,システムへのアクセスを制限することができます。 ユーザがアクセスを必要とすると想定される時間の最大の長さに合うように,アカウントの有効期限を設定することをお勧めします。 有効期限が切れると,システムにより,そのアカウントへのアクセスが自動的に禁止されます。 ただし,UAF レコードとユーザのファイルは,セキュリティ管理者が手作業で削除する必要があります。 また /EXPIRATION 修飾子を使用すると,定期的にアカウントを確認して必要なアカウントのみを再認証することを求められるようになります。 アカウントの有効期限を設定するには,ユーザの UAF レコードで AUTHORIZE 修飾子の /EXPIRATION を使用します。 たとえば次の修飾子は,ユーザのアカウントが 2001 年 12 月 30 日に満了することを指定します。
特定のアカウントの使用を厳しく制限したい場合があります。 たとえば,SYSTEST アカウントや FIELD アカウントなど,定期的にのみ使用される特定のアカウントを無効にして,アカウントの悪用を防止できます。 アカウントを無効にするには,/FLAGS=DISUSER 修飾子を使用します。 必要に応じて一時的にアカウントを有効にするには,/FLAGS=NODISUSER 修飾子を使用します。 UAF レコードでユーザのデフォルトのデバイスとディレクトリを指定するには,AUTHORIZE 修飾子の /DEVICE と /DIRECTORY を使用します。 『OpenVMS システム管理ユーティリティ・リファレンス・マニュアル』の A–L で説明されているように,システム管理ユーティリティ (SYSMAN) のディスク制限機能により,そのディスク (および他すべてのディスク) 上でユーザが使用できるブロックの数を制限できます。 他のディスクに設定されているボリューム保護により,ユーザがアクセス可能なディスク量が制御されます。 AUTHORIZE 修飾子の /PRIVILEGES を使用して拡張または制限できるユーザの特権も,アクセス可能な量に影響を与えます ( 8.7 項 「ユーザへの特権の付与」を参照)。 UAF レコードでユーザのアカウントに対して,AUTHORIZE 修飾子の /FLAGS=EXTAUTH を使用してマークを付けることで,そのユーザの外部認証を許可することができます。 詳細については 7.4 項 「外部認証の有効化」を参照してください。 ユーザが有するシステム・アクセスのタイプは,大部分が,システム・リソースに対するユーザの必要性と,サイトのセキュリティ要件に依存します。 この節では,OpenVMS システムで使用可能なユーザ・アカウントのタイプと,あるタイプのアカウントが別のアカウントよりも適当である理由について説明します。 ユーザ・アカウントの追加手順の順を追った説明については,『OpenVMS システム管理者マニュアル』を参照してください。
7.2.2 項 「特権アカウント」で説明されているように,会話型アカウントおよび限定アクセス・アカウントは,どちらも特権アカウントにすることが可能で,また外部で認証することもできます。 次の表に,ユーザが実行するタスクに基づいて作成すべきアカウントの種類を示します。
多数のユーザに適用できる 1 つまたは複数のテンプレートを作成できます。 ただし,単にテンプレートを適用するというレベルまで,アカウント作成のプロセスを過度に単純化しないでください。 テンプレートだけに頼ると,個別のユーザに適用すべき特別な考慮事項を見逃し,セキュリティ管理者のみが行使できる重要な制御ができなくなる恐れがあります。 テンプレートを定期的に調べて,テンプレートが有効であり,必要な運用手順を反映していることを確認します。 テンプレートは,すぐに古くなってしまいます。 例 7-1 「一般的な会話型ユーザ・アカウントの作成」 は,セキュリティの考慮が必要で,平均的なユーザのアクセスが制限されて いる商用サイトのアカウントに一般的に見られる,中程度に制限された会話型ユーザ・ アカウントの作成方法を示します。 例 7-1 一般的な会話型ユーザ・アカウントの作成
次の点に注意してください。 例 7-2 「限定アクセス・アカウントの作成」 に,ユーザが高度な制限が適用されるアプリケーション運用アカウントの作成方法を示します。 このアカウントは,州立大学の成績の一覧を作成し,各学生の家庭への郵便物を作成するという 2 つの機能を実行する目的があります。 例では,指定のない値のデフォルト値はすべて,SYSUAF.DAT のデフォルト・レコードに基づく値になります。 例 7-2 限定アクセス・アカウントの作成
次の点に注意してください。
特権により,ユーザがシステム上で実行を許可される機能が決まります。 TMPMBX および NETMBX 以上の特権があるアカウントは,特権アカウントと見なされます。 特権アカウントには,会話型,制限付き,またはキャプティブのアカウントが可能です。 特権アカウントの不正使用は深刻な損失を招く可能性があるため,次のように,最も強力な権限を持つアカウントには,特別な制御を適用することを検討します。
SYSTEM アカウント以外のすべてのアカウントに対しては,次の制限も追加します。
当然ですが,SYSTEM アカウントに制限を加える必要があります。 最も安全な手法は,バッチ・アクセスを除くすべてに関して SYSTEM アカウントを無効にして,実行者をたどれるように個別の特権ユーザ・アカウントを使用してシステム管理作業を行うようにする方法です。 特殊用途の特権キャプティブ・アカウントキャプティブ・アカウントの安全性はそのコマンド・プロシージャの完全性に依存しているため,信頼のないユーザに対して特権キャプティブ・アカウントを設定することはお勧めできません。 ただし特権が必要な状況では,汎用の特権アカウントではなく,キャプティブ特権アカウントを介して特定の機密性の高い機能を実行する方が安全です。 たとえば,バックアップ操作を実行するユーザには READALL 特権が必要です。 バックアップを実行するアカウントをキャプティブ・アカウントにすることで,手順が確実にシステムのバックアップ・ポリシーに従って実行されることを保証できます。 キャプティブ・アカウントの設定のガイドラインについては, 7.2.4 項 「キャプティブ・アカウント」を参照してください。 会話型アカウントは,セキュリティ要件が低から中である環境でよく使用します。 会話型アカウントは,プログラム開発やテキスト編集などの一般的な作業に適しています。 『OpenVMS システム管理者マニュアル』では,このタイプのアカウントの設定手順が説明されています。 7.2.1.1 項 「会話型アカウントの例」に例があります。 キャプティブ・アカウントは,ユーザの操作を制限します。 また,適切に管理すれば,DCL コマンド・レベルへのユーザ・アクセスを拒否します。 アカウントを設定して,完全に特定のプログラムまたはキャプティブ・ログイン・コマンド・プロシージャの制御下にユーザの実行を制限することができます。 キャプティブ・アカウントの主要な機能は,そのログイン・コマンド・プロシージャです。 このタイプのアカウントにより,システム・ログイン・コマンド・プロシージャ (SYLOGIN.COM) およびプロセス・ログイン・コマンド・プロシージャ (SYSUAF.DAT の/LGICMD 修飾子で指定) のほか,これらのコマンド・プロシージャから呼び出されるコマンド・プロシージャの実行も保証されます。 ログイン時にユーザは, 表 7-2 「キャプティブ・アカウントにより許可されないログイン修飾子」 に示した修飾子を指定してキャプティブ・コマンド・プロシージャを変更することはできません。 キャプティブ・アカウントにログインすると,ユーザは Ctrl/Y シーケンス,SPAWN コマンド,または INQUIRE コマンドを使用して DCL コマンド・レベルに抜け出ることはできません。 UAF レコードの DISCTLY フラグが有効になっているため,Ctrl/Y は使用できません。 未処理のエラーまたは割り込みの試みがあると,システム・エラー・メッセージが生成され,セッションがログアウトします。 SPAWN コマンドに /TRUSTED 修飾子が指定されている場合を除き,SPAWN コマンドはキャプティブ・アカウント内では無効です。 SPAWN は,MAIL および DEC Text Processing Utility (DECTPU) でも (組み込みプロシージャとして) 無効です。 ユーザ指定のレキシカル関数の実行を防止するために,INQUIRE コマンドも無効になります。 表 7-2 キャプティブ・アカウントにより許可されないログイン修飾子
アカウントの作成時に次の修飾子を含めることで,AUTHORIZE を使用してキャプティブ・アカウントを定義します。 /FLAGS=(CAPTIVE) キャプティブ・アカウントには, 表 7-3 「キャプティブ・アカウントの定義に必要な修飾子」 に説明する修飾子も必要です。 表 7-3 キャプティブ・アカウントの定義に必要な修飾子
必須設定以外に,アカウントには次の追加の特性を指定できます。
サイトのキャプティブ・コマンド・プロシージャを記述する際には,必ず次のガイドラインに従ってください。
例 7-3 「特権アカウント用のキャプティブ・プロシージャの例」 と 例 7-4 「非特権アカウント用のキャプティブ・コマンド・プロシージャ の例」 に,特権アカウントと非特権アカウント用のコマンド・プロシージャの例を示します。 例 7-3 特権アカウント用のキャプティブ・プロシージャの例
例 7-4 非特権アカウント用のキャプティブ・コマンド・プロシージャ の例
限定アクセス・アカウントの中には,キャプティブ・アカウントよりも制限の緩い環境を必要とするものがあります。 たとえばネットワーク・オブジェクトを実行するアカウントは,DCL に一時的にアクセスできる必要があります。 そのようなアカウントは,キャプティブ・アカウントではなく,制限付きアカウントとして設定する必要があります。 制限付きアカウントは,ログイン・シーケンスが完了すると,通常のアカウントと区別できなくなります。 制限付きアカウントの目的は,SYLOGIN,LOGIN,およびそれらの子プロセスを完全に実行する,信頼できるログインを確保することです。 制限付きフラグを設定する場合,ユーザによる LOGIN.COM への書き込みあるいは変更が不可で,ログイン・プロシージャの省略もできないようにすることが推奨されます。 また,LOGIN.COM の適当な場所で $ SET NOON や $ ON ERROR THEN LOGOUT などのエラー制御機能を使用して,エラーチェックやエラー処理を行うことが望まれます。
制限付きアカウントを作成する際に,登録ユーティリティを使用し,次の修飾子を追加することで制限付きアカウントを定義します。 /FLAGS=(RESTRICTED) このフラグにより,アカウントが制限付きアカウントとして設定されます。 制限付きアカウントは, 7.2.4 項 「キャプティブ・アカウント」に示したキャプティブ・アカウントと機能と同じ機能を提供します。 ただし制 限付きアカウントでは,システムとプロセスのログイン・コマンド・プロシージャを 実行することで,DCL コマンド・レベルへのユーザ・アクセスを許可する点が異なり ます。 コマンド・プロシージャの開始後,ユーザに Ctrl/Y キー・シーケンスの入力を許可することが適切である場合があります。 次に例を示します。
特定のターミナルを使用する個人を,特定のアプリケーション・プログラムに強制的にログインさせるには,そのアプリケーション用の独立したキャプティブ・アカウントを作成します。 続いて,システム管理ユーティリティ (SYSMAN) を使用して,対象となるユーザに対して新しいアカウントへの自動ログインを設定します。 自動ログイン用に設定したターミナルは,指定のアカウント用にのみ使用できます。 これは,コンピュータを使い慣れていない人々に使用されるアプリケーション・ターミナルに最適です。 自動ログイン機能では,ユーザ名の入力を求めるプロンプトが表示されません。 その他すべてのログイン機能 (システム・パスワード,第 1 および第 2 パスワード,およびメッセージ) は,有効にしてあれば通常どおり機能します。 パスワードの利用は任意です。 ターミナルの設置場所にいるすべてのユーザにアカウントを開放する場合は,パスワードを無効にします。 パスワードが不要である場合,ユーザがログイン時に入力するデータはありません。 オペレーティング・システムは Break キーまたは Return キーが押されると自動的にターミナルのログインを行い,そのアカウントがキャプティブ・ログイン・コマンド・プロシージャの制御のもとにある場合,直ちにアプリケーションに入ります。 自動ログイン・ファイル (ALF) には,ターミナルと,アプリケーション・アカウントへのアクセス権限が付えられたユーザのリストがあります。 しかし自動ログイン・アカウントは,ALF ファイルにリストアップされているターミナル以外のターミナルや他の場所からアクセスできる可能性があるため,特にパスワードが設定されていない場合,保護が必要になります。 次の対策を講じます。 ゲスト・アカウントとは,共通のアカウントを通じて,システム上のリソースへの複数のリモート・ユーザ・アクセスを許可する,キャプティブ・アカウントまたは制限付きアカウントの形式です。 たとえば,ネットワーク経由でユーザがシステムにアクセスして,問題を報告したり,会社の連絡事項を読む場合に使用します。 ゲスト・アカウントを設定することはお勧めできません。 ゲスト・アカウントは,権限がいくら制限されていても,悪意のあるユーザに,システムのセキュリティを危うくする機会を与えてしまいます。 ゲスト・アカウントが必要な場合でも,ほとんどは (限定アクセス・アカウントでもある) 特別な代理ログイン・アカウントで処理できます。 ゲスト・アカウントがどうしても必要な場合は,アカウントの安全を確保するために,次の手順に従います。
一般的に代理ログイン・アカウントは,制限付きアカウントとして設定する必要があります。 代理ログイン・アカウントは,リモート・ユーザがパスワードを指定しなくてもローカル・アカウントにアクセスできるようにします。 代理ログイン・アカウントについては, 13.3.3 項 「代理アカウントの例」に説明があります。 推奨事項の多くは,制限付きアカウントの場合と同じです。 外部認証アカウントは,ユーザの SYSUAF レコードに EXTAUTH フラグでマーク付けされているアカウントです。 これにより,該当するユーザは外部ユーザ ID とパスワードを使用して,OpenVMS ログイン・プロンプトからログインできます。 外部認証の詳細については, 7.4 項 「外部認証の有効化」を参照してください。 平均的なセキュリティ保護を必要とするサイトでは,必ずパスワードを使用する必要があります。 より高度なセキュリティを必要とするサイトでは,多くの場合,生成パスワード方式 ( 7.3.2.4 項 「生成パスワード」を参照) だけでなく,システム・パスワードも利用します。 この節では,パスワード管理について説明します。 自動ログイン・アカウントを除き,すべてのユーザにはログイン用に少なくとも 1 つのパスワードが必要です。 セキュリティ要件が中または高であるサイトでは,複数のパスワードを利用する場合があります ( 表 3-2 「パスワードのタイプ」表 3‐2 を参照)。 外部認証ユーザは,OpenVMS パスワード・プロンプトで外部パスワードを入力します。 詳細については 7.4 項 「外部認証の有効化」を参照してください。 この節では,DCL および AUTHORIZE コマンドを使用してパスワードを割り当てる方法を説明します。 AUTHORIZE を使用して新規ユーザのアカウントを開設する際には,そのユーザにユーザ名と初期パスワードを与える必要があります。 一時初期パスワードを割り当てる際には, 3.8 項 「パスワードの保護に関するガイドライン」「パスワードの保護に関するガイドライン」で推奨している,すべてのガイドラインに従ってください。 パスワードを割り当てる際には,わかりやすいパターンを避けます。 自動パスワード・ジェネレータを使用することも可能です。 AUTHORIZE を使用したアカウントの開設時に自動パスワード・ジェネレータを使用するには,ADD または COPY コマンドのいずれかに /GENERATE_PASSWORD 修飾子を追加します。 システムによって,自動的に生成されたパスワードの選択肢のリストが提示されます。 これらのパスワードから 1 つを選択し,アカウントの設定作業を続けます。
AUTHORIZE を使用して指定するパスワードは,デフォルトでは期限切れとして定義されます。 これにより,ユーザは最初にログインした時に,初期パスワードを強制的に変更しなければなりません。 詳細については, 7.3.2 項 「最低限のパスワード基準の適用」を参照してください。 ユーザが正しく対処できるように,ユーザ教育に必ず最初のログインに関する情報を含めるようにします。 AUTHORIZE を使用して定義するパスワードを事前に期限切れにしたくない場合は,パスワードを入力する際に修飾子 /NOPWDEXPIRED を追加します。 これは,ユーザが自分でパスワードを設定することが許可されないアカウントの場合に必要です。 事前に有効期限が切れているパスワードは,UAF レコードのリスト内では一目でわかります。 パスワードの最終変更日のエントリに,次の注釈が付いています。 (pre-expired) 3.2.1 項 「システム・パスワードの入力」「システム・パスワードの入力」では,特定のターミナルへのアクセスを制御するシステム・パスワードを説明しています。 システム・パスワードは,次のような,不正使用のターゲットになる可能性があるターミナルへのアクセスを制御するために使用します。
(DCL の SET HOST コマンドにより実現される) ログインのリモート・クラス用のシステム・パスワードの使用を有効にするには,AUTOGEN を使用して,デフォルトのターミナル属性パラメータの適切なビットを設定します。 これは,パラメータ TTY_DEFCHAR2 の第 19 ビット (16 進値で 80000) です。 この値を設定した場合には,この機能を使用したくないターミナルごとに,DCL の SET TERMINAL/NOSYSPWD/PERMANENT コマンドを実行してシステム・パスワードを無効にする必要があります。 先述のように,テストが済んだ SET TERMINAL コマンドを,SYS$MANAGER:SYSTARTUP_VMS.COM に組み込むことを検討してください。 続いて,先に示した手順に従って,システム・パスワードを設定します。 システム・パスワードを選択する際には, 3.8 項 「パスワードの保護に関するガイドライン」「パスワードの保護に関するガイドライン」の推奨事項に従ってください。 長さは 6 文字以上で,意味のある単語ではない,アルファベットと数字で構成される文字列を選択します。 システム・パスワードには有効期限はありませんが,頻繁にパスワードを変更するようにします。 パスワードを知っている人物がグループを離れたら,必ずシステム・パスワードを直ちに変更します。 システム・パスワードは,パスワードを知っておかなければならないユーザとのみ共有します。 システム・パスワードは,独立した UAF レコードに格納され,表示できません。 DCL の SET PASSWORD/SYSTEM コマンド (システム・パスワードを設定および変更する通常の手段) では,パスワードを変更する前に,それまでのシステム・パスワードを入力する必要があります。 古いパスワードを指定せずにシステム・パスワードを変更するには,次のコマンドのように,AUTHORIZE の MODIFY/SYSTEM_PASSWORD コマンドを使用します。
システム・パスワードの主な機能は,万人がアクセできるポートに最前線となる防御を施し,侵入を試みる者がシステムの身元を知ってしまうことを防ぐことです。 ただし,権限を持つユーザが,一部のターミナルでシステム・パスワードが要求されることを知らない場合,システム・パスワードを要求すると混乱が生じる場合があります。 ターミナルやシステムの障害の誤報告を防ぐために,ユーザに割り当てられているターミナルの中で,どのターミナルがシステム・パスワードを要求するかをユーザに知らせます。 ダイアルアップ回線または公衆アクセス回線経由のアクセス制御にシステム・パスワードを適用していない場合は,システム・パスワードを知っているユーザがごくわずかである場合があります。 パスワードを知っている担当者に連絡が取れない場合や,担当者がパスワードを忘れてしまった場合は,運用に支障をきたします。 この問題を解決するには,AUTHORIZE を起動し,MODIFY/SYSTEM_PASSWORD コマンドを入力します。 これには,SYSPRV 特権が必要です。 セキュリティの保護レベルが高いサイトでは,ユーザ・アカウントに第 2 パスワードを要求できます。 一般的にユーザは第 2 パスワードを知らず,第 2 パスワードを入力する監督者などの重要人物が同席する必要があります。 業務によっては,アカウントが使用されている間,監督者が同席し続ける場合もあります。 監督者は第 2 パスワードを空文字列に変更することで削除できるため,第 2 パスワードの有効性は,それを提供する監督者の信頼性に完全に依存しています。 パスワードを二重に使用すると手間がかかりますが,次のようなメリットがあります。
セキュリティ要件が中程度であるサイトでは,パスワードが変更され,パスワード・ジェネレータの使用が強制された後に説明のつかない侵入が発生した場合に,二重パスワードを道具として使用できます。 問題のアカウントを選択し,それらをこの制限の一時的な対象にします。 第 2 パスワードによる個人確認を実施すると問題が生じないようであれば,人選に問題があることが判明します。 権限を持つユーザが,そのアカウントを不正使用している 1 人または複数のユーザに,そのアカウントのパスワードを漏洩している可能性が高いと考えられます。 二重パスワードを実装するには,AUTHORIZE 修飾子の /PASSWORD を使用します。 たとえば,新規アカウントに二重パスワードを適用するには,AUTHORIZE を起動し,次の形式の ADD コマンドを使用します。 ADD newusername /PASSWORD=(primarypwd, secondarypwd) 既存のアカウントに第 2 パスワードを適用するには,次の形式の MODIFY コマンドを使用します。 MODIFY username /PASSWORD=("", secondarypwd) このコマンドは,アカウントに対してすでに設定されている第 1 パスワードには影響しませんが,以降のすべてのログインにおいて,必ず第 2 パスワードを入力するよう求めるようになります。 第 2 パスワードのパスワード有効期間と長さの下限値には,第 1 パスワードと同じ値が適用されます。 このアカウントに対して /FLAGS=GENPWD 修飾子が指定されている場合,第 2 パスワードの変更は,自動パスワード・ジェネレータの制御下でのみ可能です。 ユーザ名パラメータにワイルドカードを使用して,1 つのコマンドで複数のユーザに第 2 パスワードを適用することはできません。
コンソール・ターミナルは,CPU の処理を制御するため,結果的にシステムの処理を制御します。 セキュリティ要件が高いサイトでは,パスワード・セキュリティ機能が使用できる場合,その使用を検討するべきです。 一部の VAXstation 3100 以降のモデルは,この機能を提供します。 コンソール・パスワードを有効にすると,オペレータはコンソール・モードで特権コマンドを使用する前に,コンソール・パスワードを入力する必要があります。 特権コマンドには,次の 2 つのタイプが含まれます。
コンソール・パスワードの機能を有効にするには,次の手順を実行します。
ワークステーションを特権モードにして,すべてのコンソール・コマンドをアクセス可能にするには,LOGIN コマンドを使用します。 SHOW PSE コマンドを使用して,パスワード機能の現在のステータスを表示できます。 1 が表示された場合,パスワード機能は有効で,0 が表示された場合は無効です。 この機能を無効にするには,引数に 0 を指定して SET PSE コマンドを使用します。 パスワードは不揮発性のメモリに保存されるため,パスワードを忘れてしまった場合は,カスタマ・サポート・センターに連絡する必要があります。 パスワードとアカウント情報を配布する方法の代わりに,認証カードやスマート・トークンと呼ばれる携帯型のデバイスをシステム・ユーザに持たせるサイトもあります。 認証デバイスには,ユーザのパスワードがプログラムで組み込まれています。 ハードウェア設計の複雑さに応じて,これらのデバイスは追加のログイン情報 (アカウント名や会計参照番号など) をサポートすることもできます。 サード・パーティ・ベンダからは,さまざまな認証デバイスが発売されています。 こうしたデバイスは,ログイン・プログラム (LOGINOUT.EXE) と通信するソフトウェア・モジュールによりサポートされています。 認証カードをサポートする LOGINOUT ルーチンの詳細については,『HP OpenVMS Utility Routines Manual』を参照してください。 セキュリティ管理者は,AUTHORIZE を使用して,個々のユーザに最低限のパスワード基準を課すことができます。 具体的には,AUTHORIZE によって指定される修飾子とログイン・フラグにより,パスワードの有効期限,期限切れになった時にユーザにパスワード変更を強制するかどうか,およびパスワードの最低の長さを制御します。 AUTHORIZE 修飾子の /PWDLIFETIME を使用すると,パスワードの最大有効期間を設定できます。 ユーザは有効期間が切れる前にパスワードを変更する必要があり,変更しないとアカウントへのアクセス権を失います。 デフォルトでは,/PWDLIFETIME の値は 90 日です。 この修飾子に対して別のデルタ時間値を指定することで,ユーザ・パスワードの変更頻度の要件を変更できます。 たとえば,30 日ごとにパスワードを変更するようユーザに要求するには,この修飾子を /PWDLIFETIME=30-0 と指定します。 /PWDLIFETIME 修飾子は,第 1 と第 2 の両方のユーザ・パスワードに適用されますが,システム・パスワードには適用されません。 ユーザのそれぞれの第 1 と第 2 のパスワードの最大有効期間は同じです。 ただし,それぞれのパスワードは異なる時期に変更することができます。 ユーザがパスワードの変更を完了すると,そのパスワードの時計が直ちにリセットされます。 新しいパスワードの値は,/PWDLIFETIME により指定される期間だけ変更せずにおけます。 /NOPWDLIFETIME 修飾子は,第 1 と第 2 のパスワードが期限切れにならないことを指定します。
AUTHORIZE には,第 1 と第 2 のパスワードの有効期限に関する 2 つのログイン・フラグもあります。 2 つのフラグ PWD_EXPIRED と PWD2_EXPIRED は,/FLAGS 修飾子を使用して指定します。 第 1 のフラグ PWD_EXPIRED は,第 1 パスワードの有効期限が切れてから,ユーザにそのパスワードを変更する最後のチャンスが 1 回与えられ,なおかつユーザがパスワードを変更しなかった場合に設定されます。 第 2 のフラグ PWD2_EXPIRED は,第 2 パスワードの有効期限が切れてから,ユーザに第 2 パスワードを変更する最後のチャンスが 1 回与えられ,なおかつユーザがパスワードを変更しなかった場合に設定されます。 PWD_EXPIRED と PWD2_EXPIRED のいずれかが設定されていると,ユーザは最後のログイン時にパスワードを変更する最後のチャンスを行使しなかったため,アカウントへのログインはできません。 ユーザがパスワードの変更に成功すると,システムは直ちにフラグを適切にリセットします。 第 1 パスワードが変更されると,PWD_EXPIRED フラグは直ちに NOPWD_EXPIRED になります。 同様に,第 2 パスワードが変更されると,PWD2_EXPIRED フラグは直ちに NOPWD2_EXPIRED になります。 セキュリティ管理者は,AUTHORIZE を起動してフラグをリセットし,パスワードを再設定するチャンスをユーザに再度与えることができます。 パスワードの有効期間を設定すると,ユーザは定期的にパスワードを変更しなければなりません。 ユーザに応じて,異なる有効期間を設定できます。 一般的に,重要なファイルにアクセスできるユーザには,パスワードの有効期間を最も短くする必要があります。 システム・パスワードの有効期間に制限はありません。 システム・パスワードを定期的に変更するのは,セキュリティ管理者の責任です。
LGI$PASSWORD_NOCHANGE_DAYS および LGI$EXPIRATION_WARNING_DAYS は,システムワイドのエグゼクティブ・モード論理名です。 LGI$PASSWORD_NOCHANGE_DAYS は,ユーザがパスワードを変更できるようになるまでの最短日数を設定できます。 LGI$EXPIRATION_WARNING_DAYS により,ユーザがパスワード期限切れ警告メッセージを受け取りはじめてから,パスワードが期限切れになるまでの日数を定義できます。 デフォルトでは,ユーザはログイン時に,期限切れのパスワードを変更するように求められます。 パスワードの有効期限が切れているユーザには,ログイン時に新しいパスワードの入力を求められます。 このパスワード機能は,パスワードの有効期限が /PWDLIFETIME 修飾子で指定されている場合に限り有効です。 パスワードの強制変更を無効にするには,ADD または MODIFY コマンドに対して,次の修飾子を指定します。 /FLAGS=DISFORCE_PWD_CHANGE パスワード強制変更機能を無効している場合,次のようにログイン・フラグをクリアすることで,その機能を再度有効にすることができます。 /FLAGS=NODISFORCE_PWD_CHANGE ログイン時に,期限切れのパスワードを変更するように求められたユーザは,Ctrl/Y を押すことでログインをキャンセルできます。
AUTHORIZE の修飾子 /PWDMINIMUM を使用して,第 1 と第 2 の両方の,すべてのパスワード選択における文字数の下限を指定できます。 下限値の指定にかかわらず,ユーザは最大 32 文字までのパスワードを指定できます。 ユーザのパスワードの最低の長さは,デフォルトの 6 文字か,/PWDMINIMUM 修飾子により指定する (10 以下の) 別の値になります。 Alpha システムでは,パスワード・ジェネレータは指定の長さのパスワードを作成しますが,上限は 10 文字です。 VAX システムでは,パスワード・ジェネレータは n ~ n+2 の長さの範囲でパスワードを作成します (最低の長さ n は 1 ~ 10 の範囲の値です)。 そのため,生成されるパスワード (/GENERATE_PASSWORD または SET PASSWORD/GENERATE) の長さが,/PWDMINIMUM 修飾子により設定される値と矛盾する可能性があります。 n と,/PWDMINIMUM により設定される値との間に矛盾がある場合,オペレーティング・システムは小さい方の値を使用しますが,10 を超える値は使用しません。 たとえば,/PWDMINIMUM 修飾子を使用して長さを 25 に設定した場合,オペレーティング・システムは 10 ~ 12 文字のパスワードを生成します。 システムは,値の違いを通知しません。 AUTHORIZE 修飾子の /GENERATE_PASSWORD により生成されるパスワードの長さは,ソース UAF レコード (DEFAULT レコードまたはコピーされた UAF レコード) の Pwdminimum フィールドに由来します。 Pwdminimum フィールドは,/PWDMINIMUM により設定される値を使用して更新されるため,SET PASSWORD/GENERATE を使用して作成されるパスワードは,新しい値を使用します。 システム・パスワードには,最低限の長さはありません。 ユーザ・パスワードに適用されるガイドラインは,同じようにシステム・パスワードにも適用されます。 1 ~ 32 文字の長さのシステム・パスワードを選択します。 AUTHORIZE で /FLAGS=GENPWD 修飾子を使用すると,ユーザがパスワードを変更する際には,自動パスワード・ジェネレータの使用が強制されます。 すべてのアカウントがこの修飾子を使用して作成されるサイトもあれば,セキュリティ管理者が選択できるサイトもあります。 侵入により危険にさらされることがあってはならない重要なデータにユーザがアクセスする予定がある場合,該当するユーザにはパスワード・ジェネレータを使用するよう要求します。 ポリシーとしてパスワード・ジェネレータを自発的に使用するよう要求していても,ユーザが協力しない場合は,該当するユーザ・アカウントに /FLAGS=GENPWD 修飾子を追加して,ユーザにパスワード・ジェネレータの使用を強制することができます。 また,AUTHORIZE 修飾子の /FLAGS=LOCKPWD をユーザ・アカウントに追加して,ユーザがパスワードを変更できないようにすることも可能です。 パスワードを変更する権限が与えられるのは,セキュリティ管理者のみになります。 オペレーティング・システムは,暗号化によりパスワードを漏洩から保護します。 OpenVMS のアルゴリズムでは,パスワードを平文文字列から暗号化テキストに変換し,システム・ユーザ登録ファイル (SYSUAF.DAT) に保存します。 パスワード確認の際には,平文のパスワードではなく,必ず暗号化されたパスワードに基づいて確認が行われます。 システム・パスワードの暗号化には,常にオペレーティング・システムにとって既知のアルゴリズムが使用されます。 AUTHORIZE で /ALGORITHM 修飾子を使用して,ユーザのパスワードの暗号化にオペレーティング・システムが使用するアルゴリズムを定義できます。 選択肢としては,現在の OpenVMS のアルゴリズムと,サイト固有のアルゴリズムがあります。 各アカウントの第 1 パスワードと第 2 パスワードには,別々に暗号化アルゴリズムを指定できます。 構文は次のとおりです。 /ALGORITHM=keyword=type [=value] あるユーザに OpenVMS のパスワード暗号化アルゴリズムを割り当てるには,次のようなコマンドを入力します。
サイト固有のアルゴリズムを選択する場合は,次のように,アルゴリズムを識別する値を指定する必要があります。
『HP OpenVMS Programming Concepts Manual』には,カスタマ・アルゴリズムの使用に関する指示があります。 セキュリティ管理者は,指定したアルゴリズム番号を認識してパスワードを適切に暗号化するコードを含んだ,サイト固有のシステム・サービスを作成する必要があります。 この番号は,AUTHORIZE の MODIFY/ALGORITHM コマンドで使用する番号に対応する必要があります。 ユーザにサイト固有のアルゴリズムが割り当てられている場合,AUTHORIZE では SHOW コマンドにより表示される画面にこの情報が表示されます。 通常,システムは新しいパスワードを,SYS$LIBRARY に保存されているシステム辞書と照合し,パスワードが母国語の単語ではないことを確認します。 またシステムは,ユーザのパスワードの履歴リストを維持し,新しいパスワードをこのリストと照合して,古いパスワードが再利用されていないことを確認します。 サイトにとって特に重要な単語が使用されていないかパスワードをチェックするイメージを開発してインストールすることで,パスワードをさらに詳しく検査できます。 DCL の SET PASSWORD コマンドは,ユーザが候補として入力したパスワードを (必要に応じて) 小文字に変換し,システム辞書内のエントリと照合して,パスワードが母国語の単語でないことを確認します。 パスワード候補が辞書内に見つかった場合,有効なユーザ・パスワードとしては拒否されるため,ユーザは別のパスワードを入力する必要があります。 システム・パスワード辞書を変更して,サイトに関係のある単語を追加できます。 システム辞書に単語を追加するには,次の手順を行います。 次の手順では,許容できないと考えられるパスワードのファイルを保持することもできます。
辞書検索を無効にするには,AUTHORIZE で,/FLAGS 修飾子に対して DISPWDDIC オプションを指定します。 オペレーティング・システムは,ユーザが過去 365 日間に使用したパスワードのリストを維持し,パスワード候補をこのリストと照合して,パスワードが再利用されていないことを確認します。 ユーザが新しいパスワードの作成に成功すると,システムは古いパスワードを履歴リストに入力して,ファイルを更新します。 パスワード履歴リストは多数の単語を保持できますが,デフォルトでは上限が 60 になっています。 この数を上回ると,ユーザは生成パスワードを使用する必要があります。 パスワードは,パスワード履歴リストに 365 日間 (または SYS$PASSWORD_HISTORY_LIFETIME により設定されるデフォルトの期間) 保持されます。 ユーザ・アカウントを削除すると,システムによって,そのアカウントに属するすべてのパスワード記録が削除されます。 DCL の DEFINE コマンドを使用して,パスワード履歴リストの容量と有効期間のデフォルト設定を, 表 7-4 「パスワード履歴リストのデフォルト」 に示す任意の値に変更できます。 表 7-4 パスワード履歴リストのデフォルト
たとえば,履歴リストの容量を最大 60 個のパスワードから最大 100 個に変更するには,SYS$MANAGER にあるコマンド・プロシージャ SYLOGICALS.COM に,次の行を追加します。
パスワード履歴リストの有効期間と,リストに記録できるパスワードの数には,相関関係があります。 たとえば,パスワード履歴の有効期間を 4 年に延ばし,パスワードが 2 週間ごとに期限切れになっている場合,パスワード履歴の上限数量を少なくとも 104 (1 年間に 26 パスワードで,4 年間であるため) に増やす必要があります。 パスワード履歴の有効期間と上限は動的に変更できますが,これらはクラスタを構成するすべてのノードで同じである必要があります。 第 2 パスワードを使用するサイトでは,第 2 パスワードの保存用に,アカウントに対するパスワードの上限を 2 倍にしなければならない場合があります。 パスワード履歴リストは SYS$SYSTEM にあります。 論理名 VMS$PASSWORD_HISTORY を使用することで,そのリストをシステム・ディスクから移動できます。 この論理名を /SYSTEM/EXEC として定義し,SYS$MANAGER:SYLOGICALS.COM に入れます。 履歴検索を無効にするには,AUTHORIZE で /FLAGS 修飾子に対して DISPWDHIS オプションを指定します。 システム辞書と履歴リストと照合してパスワードを検査する以外にも,サイト固有のパスワード・フィルタを作成して,パスワードが適切で,サイトから簡単に連想される単語ではないことを確認できます。 フィルタを使用して,パスワードの長さ,特殊文字または文字の組み合わせの使用,製品名や個人名の名前の使用をチェックできます。 サイト固有の単語のリストを作成するには,ソース・コードを記述し,共有イメージを作成し,そのイメージをインストールし,最後にシステム・パラメータを設定してポリシーを有効にします。 手順については,『HP OpenVMS Programming Concepts Manual』を参照してください。 サイト固有のパスワード・フィルタをインストールし,有効にするには,SYSPRV 特権と CMKRNL 特権の両方が必要です。 INSTALL および SYSPRV ファイル・アクセス監査が有効になっていて,システム・パラメータに対する必要な変更がオペレータ・コンソールに記録される場合,パスワード・フィルタ・イメージをインストールすると,複数のセキュリティ・アラームが生成されます。 共有イメージには,ユーザがパスワードを変更するとパスワード設定ユーティリティ (SET PASSWORD) によって呼びだされる,2 つのグローバル・ルーチンが含まれています。
3.8 項 「パスワードの保護に関するガイドライン」「パスワードの保護に関するガイドライン」のすべての推奨事項に加えて,パスワードを保護するために次のガイドラインに従ってください。
次の対策を行うと,パスワードを知られる可能性が低くなり,パスワードが破られた場合や迂回された場合の損害をある程度まで抑えられます。
外部認証は,ユーザがシステムにログインする際に,OpenVMS ログイン・プロンプトで外部ユーザ ID とパスワードを使用できるようにします。LDAP 外部認証エージェント,Kerberos 外部認証エージェント,PATHWORKS および Advanced Server for OpenVMS の認証モジュール(NT互換の認証機能) が,OpenVMS ユーザの外部認証でサポートされます。 正常に認証が行われると,その外部ユーザ ID は適切な OpenVMS ユーザ名にマッピングされ,正しいユーザ・プロファイルが取得されます。 外部認証でログインできるようにするためには,システム管理者が以下の作業を実施して外部認証を有効にする必要があります。
OpenVMS Version 8.3 以降のシステムで外部認証を使用してユーザを認証するには,そのシステムで SYS$ACM 対応の外部認証をサポートしている必要があります。 このためには,LOGINOUT.EXE および SETP0.EXE (SET PASSWORD) イメージは,認証に SYS$ACM システム・サービスを使用する必要があります。 新しい LOGINOUT.EXE および SETP0.EXE (SET PASSWORD) イメージは ACMELOGIN PCSI キットで提供されます。 この ACMELOGIN PCSI キットは,SYS$UPDATE:ACME_DEV_KITS.BCK から展開され,インストールされます。 LOGINOUT.EXE および SETP0.EXE (SET PASSWORD) イメージのインストールに関しては, SYS$HELP:ACME_DEV_README.TXT を参照してください。 ACME サブシステムを操作するために,DCL コマンドで SYS$ACM システムサービスを使用する場合の外部認証の動作については, 7.4.9 項 「ACME (Authentication and Credentials Management Extensions) サブシステム」を参照してください。 オペレーティング・システムで提供されるデフォルトの LOGINOUT.EXE および SETP0.EXE イメージは,以前のバージョンの OpenVMS で提供されていた SYS$ACM に対応していないバージョンです。 ACMELOGIN キットをインストールした後,認証要求のタイプに基づいて,認証エージェントのインストールおよび構成を行ってください。 認証エージェントのインストールおよび構成の手順は以下のとおりです。 構成処理に使用できる一般的なコマンドの一覧と構成手順については, 7.4.9.3 項 「ACME サブシステムの制御」を参照してください。
SYS$ACME に対応していない認証 (OpenVMS Version 8.2–1 あるいはそれ以前のバージョン) に対する外部認証は,システムワイドのエグゼクティブ・モード論理名 SYS$SINGLE_SIGNON を定義することにより,システムレベルで有効になります。 詳細は7.4.1.4 項 「 SYS$ACM 外部認証と非 SYS$ACM 外部認証との違い 」を参照してください。 デフォルトでは,システム・レベルでもユーザ・レベルでも外部認証は無効になっています。ただし,次に示すように,システム管理者が SYSTARTUP_VMS.COM で論理名を定義し,SYSUAF でユーザ・アカウントにマークしている場合,PATHWORKS あるいは Advanced Server for OpenVMS を起動する際に外部認証は自動的に有効になります。その他に,外部認証プロセスに Advanced Serve が参加できるようにするために,Advanced Server を実行しているクラスタ・メンバに対して必要な構成作業はありません。
次に例を示します。
外部認証で認証されるユーザは,ログイン時にアカウント制限やクォータなどの情報を取り出すために SYSUAF ファイルにエントリがあることが必要です。 SYSUAF レコードのユーザ名が,ユーザ名プロンプトで入力したものと同じでなければならないか,異なっていても構わないかは, ユーザを認証する認証エージェントでサポートするユーザ名マッピング機能に依存します。 たとえば,Kerberos 外部認証は 1 対 1 のマッピングをサポートするため, 入力されたユーザ名は SYSUAF ファイルのユーザ名と同じでなければなりません。 ユーザ・レベルでは,そのユーザの SYSUAF レコードの EXTAUTH フラグにより,外部認証が有効になります。 EXTAUTH フラグが設定されていると,当該ユーザが外部認証により認証されることを示します。 たとえば登録ユーティリティでは,次のようなコマンドを入力します。
登録ユーティリティの EXTAUTH フラグの詳細については,『OpenVMS システム管理ユーティリティ・リファレンス・マニュアル』(上巻) の登録ユーティリティ (AUTHORIZE) の章を参照してください。 SYS$GETUAI および SYS$SETUAI システム・サービスの UAI$_FLAGS アイテム・コードにおける UAI$V_EXTAUTH ビットの詳細については,『HP OpenVMS System Services Reference Manual』の GETUTC–Z を参照してください。 ACMELOGIN キット (SYS$UPDATE:ACME_DEV_KITS.BCK で展開される) で提供される LOGINOUT.EXE および SETP0.EXE (SET PASSWORD) イメージは,ユーザの認証とパスワードの変更に SYS$ACM システム・サービスを利用します。 これらのイメージがインストールされていると,ログイン要求およびパスワード変更要求が SYS$ACM サービスに送信され,ACME_SERVER プロセスの認証エージェントによって処理されます。 この効果はユーザ,レイヤード製品,およびアプリケーションのすべてに対して適用されます。 Advanced Server が提供する外部認証を使用する環境で,SYS$ACM 対応の LOGINOUT.EXE および SETP0.EXE イメージを使用している場合, Version 8.2-1 よりも前のバージョンと比較して SYS$ACM 対応の外部認証がどのように動作するかに注意する必要があります。
ユーザは,ログイン・プロンプトで OpenVMS ユーザ名の後に /LOCAL_PASSWORD 修飾子を入力することで,外部認証の代わりにローカル認証を実行することを OpenVMS に通知できます。 /LOCAL_PASSWORD 修飾子を使用する場合,ユーザは OpenVMS のユーザ名とパスワードを指定する必要があります。 SYS$ACM 対応の外部認証の場合(OpenVMS Version 8.3 以降): SYSUAF のフラグ /VMSAUTH は, EXTAUTH フラグにより外部認証を要求している場合に そのアカウントが標準の (SYSUAF) 認証を使用できることを意味します。 通常は外部認証を使用するユーザ・アカウントに対して標準の OpenVMS 認証を要求するために,アプリケーションは SYS$ACM を呼び出す際に OpenVMS ドメインの解釈を指定します。 SYS$ACM 非対応の外部認証の場合(OpenVMS Version 8.2-1 以前): /LOCAL_PASSWORD 修飾子を使用すると,システム管理者により確立されたセキュリティ・ポリシーを実質的に無効化することになるため,次の条件下でのみ使用が許可されます。
LOGINOUT に対する /LOCAL_PASSWORD 修飾子の詳細については,『HP OpenVMS Utility Routines Manual』を参照してください。 従来の SYSUAF ベースのユーザ名とパスワードに基づく認証メカニズムを使用する一部のレイヤード・プロダクトおよびアプリケーション ($HASH_PASSWORD または $GETUAI/$SETUAI を呼び出して OpenVMS パスワードを変更,フェッチまたは検証するソフトウェアなど) には,次のいずれかのケースで問題が発生する場合があります。
このようなケースでは,レイヤード・プロダクトまたはアプリケーションにおいてユーザ認証が失敗するという結果になります。 外部認証を受けるユーザに関しては,通常のシステム登録データベース (SYSUAF.DAT) を使用して,OpenVMS プロセス・プロファイル (UIC,特権,クォータなど) を構築し,個々のログイン制限を適用します。 ただし,外部認証されるユーザと通常の OpenVMS ユーザとの間には,重要な相違点が 2 つあります。 外部認証されるユーザには,次の点が該当します。
OpenVMS は,このような問題を最小限に抑えるために,ユーザの SYSUAF と外部ユーザ・パスワードを同期させようとします。 ユーザの外部パスワードの最新コピーは SYSUAF に保持されますが,外部パスワードに OpenVMS で無効な文字が含まれている場合や,SYSUAF のパスワード同期がシステム管理者によって無効にされているような場合は,SYSUAF に保持されません。 パスワード同期は,デフォルトでは有効になっています。 外部同期を有効にする場合は,次の操作を実行して,従来の SYSUAF ベースの認証を使用するレイヤード・プロダクトまたはアプリケーションとの非互換性を最小限にすることをお勧めします。
$GETUAI および $SETUAI システム・サービスは,外部パスワードをサポートしていません。 これらのサービスは,SYSUAF に格納されているパスワードのみを対象に動作し,更新は外部認証サービスに送信されません。 これらのサービスを呼び出してパスワードや更新をチェックするソフトウェアを使用するサイトでは,外部認証を有効にしないでください。 HP は,将来のリリースで,外部パスワードをサポートする新しいプログラミング・インタフェースを提供する予定です。 外部認証を受けるユーザの場合,DCL の SET PASSWORD コマンドは,外部認証機能にパスワード変更要求を送信し,そのユーザの OpenVMS システム上でパスワードを変更します。 システム管理者は,外部認証機能により提供されるユーティリティを使用することで,外部認証を受けるユーザのパスワードを設定できます。 NT 互換の認証の場合,PATHWORKS および Advanced Server for OpenVMS の ADMINISTRATOR SET PASSWORD コマンドを使用できます。 この方法を使用すると,新しいパスワードは直ちに外部認証機能に通知されます。 OpenVMS のユーザ名プロンプトに対して,ユーザ名を引用符で囲んで指定することで,大文字小文字の区別があるユーザ名を入力できます。 ユーザ名を引用符で囲まない場合,LOGINOUT はユーザ名を大文字に変換します。 ただし,SYSUAF ファイルのすべてのユーザ名エントリは大文字で保管されます。 SYSUAF ファイルでユーザのレコードを探す際は,大文字と小文字を区別しないで検索が行なわれます。 外部ユーザ ID とパスワードに有効な文字は,標準の IBM 拡張 (8 ビット) ASCII 文字セットに属します。 LOGINOUT と SET PASSWORD は,これらの文字列の大文字と小文字を維持したまま渡しますが,外部認証サービスはこの文字セットに従って両方の文字列を大文字に変換します。 外部パスワードには,OpenVMS のパスワードでは無効な文字を使用できます。 外部パスワードに,OpenVMS のパスワードでは無効な文字が含まれている場合, パスワード同期は行われず,メッセージが発行されます。 OpenVMS のパスワードは,7 ビット ASCII 文字の A ~ Z,0 ~ 9,_,および $ に限られます。 外部認証を受けるには,ユーザはOpenVMS ログイン・プロンプトに対して自分の外部ユーザ ID とパスワードを入力します。 OpenVMS はユーザ名マッピングの実行時に,まず SYSUAF の中で一致する名前を探し,見つかった場合はその名前を使用します。 見つからなかった場合は,外部認証データベースに一致するユーザ ID を照会します。 認証に成功すると,適切なユーザ・プロファイルを取得するために,外部ユーザ ID は適切な OpenVMS ユーザ名にマッピングされ,ログイン・シーケンスが完了します。 外部認証は,(DECwindows を含む) 会話型ログインと,(代理ログインが使用されるか,ユーザ ID/パスワードが渡される) ネットワーク・ログインにおいてサポートされます。 システムの外部認証が有効になっている場合,DECnet プロキシまたは自動ログイン (ALF) データベースに指定されている対象ユーザ名が,SYSUAF に存在する必要があります。 DECnet プロキシを使用したい外部認証ユーザは,SYSUAF ファイルと外部データベースにおけるユーザ名が同じである必要があります。 DECnet プロキシを使用する場合は,OpenVMS および外部ドメイン全体で一意のユーザ名を維持することが重要です。 SYSUAF ファイルと LAN Manager データベースの同じユーザ名が,それぞれ異なるユーザを示す場合,代理としてのこのユーザ名の使用は,あいまいになります。 LOGINOUT がログインのためにその名前を OpenVMS ユーザ名として扱う一方で, 同じ名前が別の OpenVMS ユーザ名にマッピングされる可能性があります。 このようになるのは,名前マッピング規則により,OpenVMS はまず SYSUAF で一致する名前を検索するためです。 外部認証を受けるユーザは単独のパスワードを持つと見なされ,通常の OpenVMS パスワード・ポリシー (パスワードの有効期限,パスワード履歴,パスワード長の下限と上限) には従いませんが,その代わりに,外部認証機能の任意の定義済みポリシーに従います。 無効なアカウント,モード時刻の制限,クォータなど,その他すべての OpenVMS アカウントの制限は有効なままになります。 外部認証を受けるユーザは,その SYSUAF レコードで EXTAUTH フラグが設定されていることにより識別されます。 アカウントの EXTAUTH フラグが設定されていない OpenVMS ユーザは,外部認証の影響を受けません。 パスワードは外部認証機能データベースを使用して検証されますが,OpenVMS は,外部パスワード・フィールドと SYSUAF パスワード・フィールドの同期を維持しようとします。 パスワード同期は,デフォルトでは有効になっています。 同期が行われるのは,外部認証ログインが正常に完了した時点です。 外部パスワードが,SYSUAF ファイルに保存されているパスワードと異なる場合,LOGINOUT は外部パスワードを使用して SYSUAF パスワード・フィールドを更新します。 OpenVMS と外部認証機能で使用できる有効な文字セットの違いにより,同期が不可能になる場合があります。 SYS$ACM 対応の外部認証では,必要であればパスワードの同期化を 選択的に無効にできます。 パスワードの同期化の有効/無効を制御する SECURITY_POLICY システム・パラメータについての詳細は, 7.4.9.3.4 項 「システム・パラメータ SECURITY_POLICY のビット・マスク値」 を参照してください。 SYS$ACM に対応していない外部認証の場合も,必要に応じてパスワード同期を選択的に無効にできます。 パスワード同期の有効/無効を制御する SYS$SINGLE_SIGNON 論理名ビットの詳細については, 表 7-5 「SYS$SINGLE_SIGNON 論理名ビット」を参照してください。 SYS$ACM に対応していない外部認証の場合 (OpenVMS Version 8.2-1 以降),SYS$SINGLE_SIGNON システム単位エグゼクティブ・モード論理名は,外部認証の操作全般を制御します。 この論理名は 16 進文字列に変換され,ビット・ベクタとして扱われ,各ビットが個別のコンポーネントを制御します。 表 7-5 「SYS$SINGLE_SIGNON 論理名ビット」 に,右から左に向かって順に番号が付けられた SYS$SINGLE_SIGNON 論理名の各ビットの定義を(最下位ビットから順に)示します。 表 7-5 SYS$SINGLE_SIGNON 論理名ビット
SYS$SINGLE_SIGNON が定義されていないか,無効な 16 進文字列になる場合,すべてのビットは OFF であると見なされます。 次の定義例は,外部認証 (第 0 ビット) を有効にします。 他のコンポーネントはすべてデフォルト値を取ります。
次の定義例は,外部認証を有効にして (第 0 ビット),ユーザ名プロンプトでのターミナル入力を強制的に大文字にし (第 3 ビット),パスワード同期を無効にします (第 4 ビット)。
HP DECnet-Plus の要件SYSUAF アカウント・レコードで EXTAUTH ビットが設定されているユーザは,外部認証パスワードがすべて大文字である場合を除き,DECnet-Plus が稼働するシステムでは明示的なアクセス制御文字列を使用できません。 たとえば,次のコマンドを入力したとします。
ここで nodename は DECnet-Plus が稼働するシステムで,username は EXTAUTH アカウントです。 DECnet-Plus は,password の文字列を,外部認証エージェント (PATHWORKS または NT ドメイン・コントローラ) に渡す前に,大文字に変換します。 解決方法は,次の 2 つがあります。
DECnet-Plus および NET_CALLOUTS パラメータ外部認証を有効にして DECnet-Plus for OpenVMS を実行するには,システム・パラメータ NET_CALLOUTS を 255 に設定します。 これにより,ユーザ確認と代理検索が,DECnet ではなく LOGINOUT で行われます。 POP サーバでの接続の失敗POP (Post Office Protocol) サーバは,OpenVMS システムでの接続の認証に外部認証を使用しません。 このことが原因で,次のいずれかの条件が存在する場合に,接続の試みが失敗することがあります。
この節では,OpenVMS システムでユーザを認証する必要があるアプリケーション対して外部認証機能を提供する,SYS$ACM システム・サービスを有効にする方法を説明します。 ACME (Authentication and Credentials Management Extensions) サブシステムは,認証および persona ベースの資格情報サービスを提供します。 アプリケーションは,これらのサービスを使用してユーザと対話し,次の 1 つ以上の機能を実行できます。
ACME は,標準的な OpenVMS 認証および外部認証ポリシーをサポートします。 したがって,アプリケーションでは,システムの LOGINOUT および SET PASSWORD コンポーネントと同じ仕組みを利用します。 ACME サブシステムは,次のコンポーネントで構成されています。
ACME サブシステムは,相互に対話をして認証要求を処理できる,複数の ACME エージェントをサポートしています。 このような対話は,制御された方法で行われる必要があります。 ユーザ認証ダイアログの処理が進行中の時,1 つの ACME エージェントが制御側エージェントになり,その他のエージェントはセカンダリ・エージェントとしてバックグラウンドで動作します。 制御側エージェントがユーザ名とパスワードのプロンプトを指示し,最終的にユーザを確認する役割があります。 セカンダリ・エージェントは,それぞれが他のエージェントとどのように対話するように設定されているかに応じて,メッセージの表示,追加パスワードの要求,資格情報の発行,認証要求の拒否を行うことができます。 ACME サブシステムの運用上の制御としては,以下のようなものがあります。
VMS ACME エージェントが構成されている場合,ACME_SERVER プロセスはシステム・ブート時に自動的に起動されます。 OpenVMS Version 8.3 以降では,サイト固有のスタートアップ・プロシージャ SYS$MANAGER:ACME$START.COM が使用されます。 SYS$MANAGER:ACME$START.COM を編集して, 必要とされる種々の ACME エージェントの構成を有効にすることができます。 また,起動するエージェントの順序を設定することができます。 SYS$MANAGER:ACME$START.COM は以下のいずれかの場合に実行されます。
VMS ACME 以外のエージェントを有効にする場合は,SYSTARTUP_VMS.COM プロシージャも編集して,依存するすべての ACME エージェントの後に次のコマンドを追加してください。 $ SET SERVER ACME/RESTART これにより,必要なすべての ACME エージェントがシステム・ブート時に自動的に起動されます。 このファイルはエグゼクティブ・モードの論理名 ACME$START で検索できます。 特定の順番でエージェントを有効にするように ACME_SERVER を構成することができます。 ユーザ名プロンプトにユーザ名を入力すると, 設定されている順番で ACME エージェントが呼び出されます。 ユーザのプリンシパル名と,そのドメイン内の有効なユーザ名とを正しくマッピングする最初のエージェントが,ユーザを認証します。 同じプリンシパル名が複数の ACME エージェント・ドメインに存在する場合, ACME エージェントの順序は重要になります。 最初に正しくマッピングを行なうエージェントが,認証要求を制御します。 ただしデフォルトでは,VMS ACME エージェントを最初に構成することをお勧めします。 たとえば,Kerberos 認証エージェントが OpenVMS で構成されている場合,OpenVMS ACME エージェントよりも Kerberos ACME エージェントを先に起動すると,ログインできるのは Kerberos に属するアカウントのみとなります。 スタートアップの順番を変更した場合は,以下の手順でデフォルトの順番に戻すことができます。 SYS$MANAGER:ACME$START.COM (このファイルは OpenVMS Version 8.3 以降で提供されます) をエディタでオープンし,目的のエージェントの順番を指定するセクションを探します(このコマンド・プロシージャの最後の方にあります)。 プロシージャに現れるように最後の行 (AGENT_LIST の最初) を変更します。
サーバを手動で起動および停止するには,次のコマンドを使用します。
SET SERVER ACME/START コマンドを手動で実行する場合,VMS ACME エージェントを含むすべての ACME エージェントを手動で構成する必要があります。 VMS ACME エージェントの構成には次のコマンドを使用します。
DAP ACME エージェントを構成するには,SYS$STARTUP:LDAPACME$STARTUP-STD.COM コマンド・プロシージャを実行するか,あるいは次のコマンドを使用します。
MSV1_0 ACME エージェントを構成するには,SYS$STARTUP:NTA$STARTUP_NT_ACME.COM コマンド・プロシージャを実行するか,あるいは次のコマンドを使用します。
Kerberos ACME エージェントを構成するためには, SYS$STARTUP: KRB$STARTUP_KERBEROS_ACME.COM コマンド・プロシージャを実行するか,次のコマンドを使用します。
ACME エージェントを構成したら,次のコマンドで有効にしてください。
ACME サブシステムの状態を参照するには次のコマンドを使用します。
このコマンドの詳細は, 『HP OpenVMS DCL ディクショナリ』を参照してください。 作業スレッド数の構成には次のコマンドを使用します。 SET SERVER ACME/CONFIG=THREAD_MAX Integrity サーバでは 1 つの作業スレッドのみがアクティブなので,このコマンドは無視されます。
次のフラグは,VAX,Alpha,および Integrity システムの SYS$SETUAI,SYS$GETUAI,および登録ユーティリティにより操作できます。 これらのフラグを認識するのは,Alpha および Integrity 上の ACME サブシステムのみです。
次のセキュリティ・ポリシー・ビットは,Alpha 上のシステムワイドの ACME サブシステム操作を制御します。
認証ポリシーは,ユーザ識別属性,認証属性,および登録属性の特定の組み合わせにより定義されます。 ポリシー属性には,次の要素が含まれます。
現在,次の 2 つの認証ポリシーがサポートされています。
OpenVMS ポリシーは,機能が豊富で,大文字小文字が区別されない,パスワード・ベースの認証ポリシーです。 シングル・パスワードまたは二重パスワードのアカウント,パスワードの有効期限,パスワードのロック,パスワード長の下限,システム生成パスワード,侵入検出および侵入回避,パスワード辞書フィルタおよび履歴フィルタ,モード・アクセス制限,アカウントの有効期限,およびアカウントのロックが含まれます。 ユーザの資格情報は,ユーザのグループとメンバの識別コード (UIC),特権,およびライト識別子で構成されます。 この情報は,システム登録 (SYSUAF.DAT) データベースとライト識別子 (RIGHTSLIST.DAT) データベースに保存されます。 システム登録データベースには,ユーザがいつどのようにシステムにアクセスできるかに関する情報も含まれます。 これらのモード制限により,時間帯,曜日,アクセスのタイプ (ダイアルアップ,リモート,バッチなど) に基づいてアクセスが制限されます。 OpenVMS の資格情報は persona に保存されます。 persona は,保護された,カーネル・ベースのデータ構造です。 LDAP の認証ポリシーは,Lightweight Directory Access プロトコルに基づいています。 この認証ポリシーでは,Directory Server 上で検索されるユーザ名とパスワードに対して認証が行なわれます。 Directory Server は,SYSUAF ファイルの OpenVMS ユーザ名にユーザをマッピングします。 LDAP についての詳細は, SYS$HELP:ACMELDAP_STD_CONFIG_INSTALL.PDF あるいは SYS$HELP:ACMELDAP_STD_CONFIG_INSTALL.TXT を参照してください。 ユーザやグループの識別子や特権などの資格情報には,標準の OpenVMS ポリシーを使用します。 Advanced Server for OpenVMS MSV1_0 の認証ポリシーは,Microsoft LAN Manager ドメイン・プロトコルに基づく分散認証ポリシーです。 この認証ポリシーは,パスワードとチャレンジ・レスポンス (NTLM) のメカニズムをサポートします。 このポリシーは,大文字小文字の区別があるパスワード,パスワードの有効期限,パスワード変更までの時間の下限,およびアカウントのロックをサポートしています。 ユーザの資格情報は,ユーザのシステム識別子 (第 1 と第 2 の SID),および特権で構成されます。 Advanced Server for OpenVMS の資格情報は NT persona 拡張に保存されます。 この拡張は,Advanced Server データベースにより Microsoft ユーザ名にマッピングされている OpenVMS ユーザ名の OpenVMS 視覚情報を含んでいる標準の persona に添付されています。 この節では,権限のないユーザからシステムを保護するために設計された,オペレーティング・システムの多くの機能を説明します。 この節では,通知,ウェルカム・メッセージ,最終ログイン情報,および新着メール・メッセージなど,ログイン時にデフォルトで表示されるさまざまな情報の表示を制御する方法を説明します。 ログイン制限の影響を理解できるように,オペレーティング・システムがシステム・ユーザ登録ファイル (SYSUAF.DAT) のログインのフィールドをどのように処理するかも説明します。 さらに,この節では安全ターミナル・サーバの使用法と,侵入検出の設定方法も説明します。 システムで通知メッセージを表示するには,サイト固有のスタートアップ・コマンド・プロシージャ SYS$MANAGER:SYSTARTUP_VMS.COM の中で,システム論理名 SYS$ANNOUNCE を定義します。 この方法は『OpenVMS システム管理者マニュアル』で説明しています。 通知メッセージはログイン時に表示されます。 ここ定義した内容は,システムの全ユーザに影響します。 このメッセージはオペレーティング・システムの身元に対する手掛かりになる可能性があるため,このメッセージを表示しないことも選択できます。 通知メッセージと同様に,ウェルカム・メッセージはシステム論理名 SYS$WELCOME によって制御されます。 SYS$WELCOME を定義しない場合は,全ユーザに対して標準のウェルカム・メッセージが表示されます。 このウェルカム・メッセージは,オペレーティング・システムとバージョン番号を表示し,SYS$NODE が定義されている場合はノードも公にします。 SYS$WELCOME に別のメッセージを定義するには,メッセージを含むテキスト・ファイルを作成します。 このファイルの内容を表示するには,SYSTARTUP_VMS.COM の中で次の行を使用します。
ウェルカム・メッセージを無効にするには,SYS$MANAGER:SYSTARTUP_VMS.COM に次の DCL コマンドを入れます。 このコマンドは,標準のウェルカム・メッセージの代わりに空行を出力します。
各ユーザへのメッセージを個別に無効にするには,各 UAF レコードで AUTHORIZE 修飾子の /FLAGS=DISWELCOME を使用します。 デフォルトでは,最終ログインと,失敗したログイン試行の回数に関する 3 つのメッセージがシステムにより表示されます ( 3.4.3 項 「情報メッセージの解釈」「情報メッセージの解釈」を参照)。 これら 3 つのメッセージの表示は,個別に無効にすることができます。. ユーザごとに AUTHORIZE 修飾子の /FLAGS=DISREPORT を入力します。 デフォルトでは,ログイン時に新着メール・メッセージの数がシステムによってユーザに通知されます。 AUTHORIZE 修飾子の /FLAGS=DISNEWMAIL を指定することで,ユーザがこの通知を受け取らないようにできます。 新着メールの通知は,セキュリティ上の問題ではなく,主にユーザの便宜を考慮したものです。 制限付きアカウントのユーザがメール・ユーティリティ (MAIL) を起動できない場合は,メール・アクセスを禁止すると同時に新着メールのメッセージを無効にしたい場合があるためです。 次の AUTHORIZE 修飾子は,両方を実現します。 /FLAGS=(DISMAIL,DISNEWMAIL) 仮想ターミナルを使用すると,ユーザは一度に複数の切断されたプロセスを維持することができます。 仮想ターミナルは,安全ターミナル・サーバの機能でも必要です ( 7.5.4 項 「安全ターミナル・サーバの使用」を参照)。 仮想ターミナルの使用を制限したい場合があります。 たとえば,非ページング・プールの量が問題である場合,この機能をシステム全体では有効にしたくない場合があります。 仮想ターミナルは,次のようにターミナル,ユーザ,またはシステムのレベルで無効にできます。
また,システム・パラメータ TTY_TIMEOUT を使用すると,再接続に許可される時間を,デフォルトの 15 分よりも短く設定することもできます。 このタイムアウト値よりも長く切断されたままの状態であるプロセスは,自動的にシステムによってログアウトされます。 接続時間を制限すると,メッセージを受け取るユーザの数が最小になる傾向がありますが,接続機能の利便性にも影響を与えます。 仮想ターミナルの設定と,仮想ターミナルへの再接続の詳細については,『OpenVMS システム管理者マニュアル』を参照してください。 特定のターミナルにアカウントを割り当てて,自動ログイン機能を有効にすることができます ( 7.2.6 項 「自動ログイン・アカウント」 を参照)。 この機能により,ユーザはユーザ名を指定せずにログインができるようになります。 オペレーティング・システムは,ユーザ名をターミナル (またはターミナル・サーバのポート) に対応させ,その割り当て情報を SYS$SYSTEM:SYSALF.DAT ファイル (自動ログイン・ファイル,別名ALF ファイル) に保存します。 このファイルを維持管理するには,次のシステム管理ユーティリティ (SYSMAN) コマンドを使用します。
ALF ファイルは,自動ログインが有効になっているターミナルごとに 1 つのレコードで構成されています。 各レコードは,ターミナルのデバイス名またはターミナル・サーバ・ポート名と,それ続くアカウントのユーザ名の,2 つのフィールドで構成されています。 デバイス名はファイル内で一意である必要があります。 ただし,同じユーザ名が任意の数のレコード中に存在することができます。 つまり,1 つのアカウントが自動的にログインできるターミナルの数に制限はありません。 ALF ファイルは,パージが不要な索引編成ファイルですが,変更があった場合にはバックアップが必要です。 3.8 項 「パスワードの保護に関するガイドライン」「パスワードの保護に関するガイドライン」では,電源が入ったままのターミナルにログインした無警戒のユーザからパスワードを盗むことを目的としたプログラムの種類として,パスワード・グラバを説明しています。 オペレーティング・システムは,ターミナルでのログイン開始前に現在実行中のプロセスをすべて停止する,安全ターミナル・サーバを提供しています。 ターミナルごとに安全ターミナル・サーバを個別に起動するには,次の DCL コマンドを使用します。 SET TERMINAL/PERMANENT/SECURE/DISCONNECT term-id 続いて,ユーザがログインを開始するには,Break キーの後に Return キーを押す必要があります。 ログインは通常どおり進行します。 安全ターミナル・サーバをすべてのターミナルに適用する場合は,サイト固有のスタートアップ・コマンド・プロシージャに SET TERMINAL コマンドを入れることで,サイト全体でログイン・プロシージャに一貫性を持たせることができます。 ただし,通信回線としてターミナルを使用する場合がある一部のアプリケーションは,独自の目的のために Break キーを使用する必要があるため,安全ターミナル・サーバと組み合わせて使用できなくなります。 安全ターミナル・サーバ機能は,通信速度の自動判別処理とも組み合わせることができません。 ただし,通信速度の自動判別が必要なのはモデム・ターミナル (交換ターミナルおよびダイアルアップ回線使用ターミナル) のみであるため,このようなターミナルでのモデム処理は,安全ターミナル・サーバと同等の機能を果たします。 安全な運用のためには,次のようにターミナル属性を設定します。
電話回線またはこれと同等の回線を経由してターミナル・ポートにアクセスできる場合,経路 (直結モデム,データ交換,ターミナル・サーバ,または公衆データ・ネットワーク) に関係なく,/DIALUP 修飾子を指定します。 パスワード・グラバから保護するには,常に /DISCONNECT 修飾子を指定します。 切断されたジョブでシステムが飽和するのを防ぐには,切断されたプロセスが削除されるまでの期間を指定するシステム・パラメータ TTY_TIMEOUT を,低いタイムアウト値に設定します。 安全ターミナル・サーバを個別のターミナルに適用することにした場合は,公共の場所およびリモートの安全でない場所にある直結たターミナルを含めます。 ローカル・ログインやダイアルアップ・ログインに使用されることのないターミナルは,このセキュリティ問題の影響を受けません。 ログイン時に厳しく監視されるターミナルも,この対策が必要でない場合があります。 場合によっては,期限切れのパスワードの入力や,入力ミスのために,正しくログインできないことがあります。 しかし,ログインの失敗がすべて無害であるとは限りません。 権限のない人物が期限切れのアカウントや未知のユーザ名でログインしようとしたり,有効なアカウントのパスワードを推測しようとしているために,ログイン失敗が起きる場合があります。 オペレーティング・システムは,ログインの失敗に対して敏感に反応します。 1 回の失敗の後,オペレーティング・システムは,ログインが行われているターミナル,ターミナル・サーバ接続,またはネットワーク接続の監視を開始します。 まずオペレーティング・システムは,失敗したログインを侵入データベースに記録します。 失敗が継続すると,オペレーティング・システムは失敗を記録するだけでなく,抑制対策を講じます。 ログインを試みる人物はより詳細に監視され,一定期間内でのログイン再試行が一定の回数に制限されます。 ログインを試みている人物が再試行や時間の制限を超えると,その人物は,たとえ有効なユーザ名とパスワードを使用しても,ある期間ログインできなくなります。 しばらくすると制限が緩和され,ログインが再び許可されます。 DCL の SHOW INTRUSION コマンドを使用すると,侵入データベースの内容が表示されます。 例 7-5 「侵入データベースの表示」 に表示例を示します。 データベースは,ログインの失敗に関する,次のタイプの情報を取得します。
システムは侵入者を検出すると,必ずセキュリティ・オペレータ・ターミナルまたはログ・ファイルに監査メッセージを送信して,セキュリティ管理者に警告します。 DCL の SHOW INTRUSION コマンドを使用して,侵入の発生源とタイプを表示できます。 例として 例 7-5 「侵入データベースの表示」 に,ネットワーク経由でログインする,MAPLE という名前のユーザに関する問題を示します。 このユーザはログインを 8 回試行しています。 ユーザは監視期間内でのログインに失敗したため,オペレーティング・システムは OMNI:.BOSTON.BIRCH::MAPLE からのすべてのログインを一時停止しました。 表 7-6 「侵入の例」 では,システムがログインの一時停止をどのように決定するかをより詳細に説明しています。 多くの容疑者が表示されている点に注意してください。 ユーザは,パスワードを忘れたり,パスワードを誤って入力することがあるためです。 データベースからエントリを削除するには,DCL の DELETE/INTRUSION_RECORD コマンドを使用します。 例 7-5 侵入データベースの表示
ログイン失敗が 1 回発生すると,ユーザは容疑者になり,ある一定期間それ以降の失敗が監視されます。 オペレーティング・システムは,容疑者によるログイン失敗を一定期間に渡って一定回数だけ許容し,それを超えるとログイン失敗の発生源を侵入者であると宣言します。 つまり,容疑者は監視期間中に許されるログイン試行回数を超えると侵入者になります。 システム・パラメータ LGI_BRK_LIM によって設定される試行回数は,人がログインを試行できる回数を定義します。 標準の制限では 5 回です。 この試行回数パラメータは,システム・パラメータ LGI_BRK_TMO によって制御される時間の係数と連携します。 ログインに失敗するたびに,容疑者の監視期間は LGI_BRK_TMO の値だけ増加します。 そのため,失敗のたびに,容疑者が監視される期間が長くなります。 表 7-6 「侵入の例」 に,ユーザ George が 5 回ログインに失敗し,回避措置が取られる状況を示します。 失敗するたびに,監視期間は 5 分延長されます。 5 回目の失敗で,オペレーティング・システムは George を侵入者と見なし,このユーザのログインを拒否します。 この例では,パラメータ LGI_BRK_LIM と LGI_BRK_TMO が両方とも 5 に設定されているものと想定しています。 表 7-6 侵入の例
システム設定に応じて,侵入者を,一時的または永久に除外することができます。
LGI_BRK_DISUSER パラメータを有効にすると,セキュリティ管理者が手動で操作するまでそのユーザ名は無効になるため,重大な結果を招くことがあります。 LGI_BRK_DISUSER を有効にすると,悪意のあるユーザが,セキュリティ管理者のアカウントを含むすべての既知のアカウントを,短時間ですべて使用不能にすることができます。 復旧するには,SYSTEM アカウントが常にログインを許可されているシステム・コンソールにログインする必要があります。 ログインと侵入検出を制御するシステム・パラメータを 表 7-7 「ログイン試行を制御するためのパラメータ」 に示します。 表 7-7 ログイン試行を制御するためのパラメータ
通常のオペレーティング・システムの起動処理の一部として作成されるセキュリティ・サーバ・プロセスは,次のタスクを実行します。
システムは侵入データベースを使用して,ログイン試行の失敗を追跡します。 この情報はプロセス・ログイン中に走査され,システムが抑制対策を講じて,侵入者の疑いがあるユーザによるシステムへのアクセスを禁止すべきかどうかを判定されます。 例 7-5 「侵入データベースの表示」 に示すように,DCL の SHOW INTRUSION コマンドを発行することで,このデータベースの内容を表示できます。 DCL の DELETE/INTRUSION コマンドを発行すると,データベースから情報を削除できます。 特定のリモート・ユーザがパスワードを使用せずにローカル・アカウントにアクセスできるかどうかを判定するため,ネットワーク接続処理中に,ネットワーク代理データベース・ファイル (NET$PROXY.DAT) が使用されます。 このデータベースの情報の管理には,登録ユーティリティを使用します。 |
|