Apache Web Server、IBM WebSphere App Server、JBoss Server、Tomcat Server、Oracle では、インスタンス検出とレコードの自動作成がサポートされています。
システム作成の認証レコードは、コンプライアンススキャンと脆弱性スキャンに使用されます。注記: この機能は、SCA のみが有効なサブスクリプションでは使用できません。コンプライアンスのため、サブスクリプションの PC および PC Agent を有効にしておく必要があります。
参照: サマリ | 開始手順 | 機能の仕組み | レコードの非アクティブ化 | レコードの検索 | よくある質問
ヒント - インスタンス検出とレコードの自動作成の使用を開始した後は、同じテクノロジ/インスタンスに独自の認証レコードを作成することはお勧めしません。認証レコードの作成と更新は自動的に行われます。
次の機能が利用可能です。
- ホストに可変設定がある場合に、同じホスト上で実行されている複数のインスタンスのスキャンをサポート。
- 2 段階スキャンプロセス。まず、検出スキャンにより、スキャン対象として選択したサーバアプリケーションのインスタンスが検出され、インスタンスデータが統合されて、アカウントに認証レコードが作成/更新されます。次に、コンプライアンス評価スキャンまたは脆弱性評価スキャンにより、アカウントに保存されているレコードが使用されます。
- スキャンでインスタンス検出と自動レコード作成機能が有効化されている場合、コンプライアンススキャン結果に、スキャンによって検出されたインスタンスのリストが表示されます。インスタンス検出スキャン中、評価データは収集されません。
- 自動作成された認証レコードの所有者は「System」です。ユーザは、これらのレコードを編集できません(Oracle では、システム作成のレコードをユーザレコードとして保存することで、レコードを編集することができます)。
- 任意のシステムレコードを「Active」に設定することで、認証スキャンを有効にすることができます。無効にするには、「Inactive」に設定します。
Oracle システムレコードテンプレートを作成して、Oracle システム作成のレコードに使用するログイン資格情報を入力します。次の手順では、インスタンス検出のオプションプロファイルを作成し、Oracle システムレコードテンプレート名を選択します。このテンプレートは、検出スキャンによって作成されたシステム作成レコードに自動的にリンクされます(オプションプロファイルで Oracle のインスタンス検出を有効にするには、事前にこの手順を行っておく必要があります)。
このテンプレートを作成するには、「Scans」->「Authentication」->「New」->「System Record Templates」->「Oracle System Record Template」を選択します。保存すると、Oracle システムレコードテンプレートが認証レコードとともに「Authentication」タブにリストされます。詳細
次の複数のオプションプロファイルを作成する必要があります。
- PC で、インスタンス検出とシステムレコード作成用のプロファイルを作成します。
- PC で、コンプライアンス評価スキャンにシステム作成のレコードを含めるためのプロファイルを作成します。
- VM で、脆弱性評価スキャンにシステム作成のレコードを含めるためのプロファイルを作成します。
「Allow instance discovery and system record creation」を選択して、アプリケーションを 1 つ以上選択します。インスタンス検出スキャンにこのオプションプロファイルを使用します。スキャン中に実行インスタンスが検出され、その後、実行インスタンスに関して収集された情報を使用して、認証レコードが作成されます。Oracle の場合、システム作成のレコードに適用するログイン資格情報が含まれる Oracle システムレコードテンプレートも選択する必要があります。
Jboss Server および IBM WebSphere では、Unix および Windows でのインスタンスの自動検出をサポートしています。その他のテクノロジについては、Unix 上で実行されているインスタンスの自動検出のみがサポートされています。アカウントに Unix/Windows 認証レコードがあることを確認してください。
IBM WebSphere App Server の場合、インスタンスをインストールディレクトリレベルで検出するか、サーバディレクトリレベルで検出するかを選択する必要があります。詳細については、下記の「よくある質問」を参照してください。
コンプライアンス評価に使用するオプションプロファイルで「Include system created authentication records in scans」を選択します。システム作成のレコードとユーザ作成のレコードが使用されます。同じインスタンス設定にユーザ作成のレコードとシステム作成のレコードがある場合は、デフォルトでユーザレコードが使用されます。システムレコードを使用したい場合は、変更できます。
脆弱性スキャンに使用するオプションプロファイルで「Include system created authentication records in scans」を選択します。システム作成のレコードとユーザ作成のレコードが使用されます。同じインスタンス設定にユーザ作成のレコードとシステム作成のレコードがある場合は、デフォルトでユーザレコードが使用されます。システムレコードを使用したい場合は、変更できます。
オプションプロファイルでは、認証も有効化されている必要があります。「Scan」タブを選択し、「Authentication」項まで下にスクロールします。必要な各認証タイプを選択します。脆弱性スキャンに含まれるのは、VM でサポートされているテクノロジのシステムレコードのみになります。
コンプライアンススキャンを開始し(PC または SCA を使用)、「Allow instance discovery and system record creation」オプションが有効になっているオプションプロファイルを選択します。インフラストラクチャが変更されるときに実行されるよう、インスタンス検出スキャンをスケジュール設定することをお勧めします。
PC でサポートされているオペレーティングシステムで実行されているホストの各アプリケーションのインスタンスは、自動検出されます。
自動検出されたインスタンスを見つけるには、コンプライアンススキャン結果の「Appendix」項まで下にスクロールすると、「Auto Discovered Instances」のリストが表示されます。
スキャンされたホストに実行中のインスタンスが見つからない場合も、そのように表示されます。
スキャンされたホストに認証タイプが見つからない場合は、そのように表示されます。
スキャンからの認証スキャンデータに基づいて、インスタンススキャンデータの統合が実行されます。統合されたスキャンデータに基づいて、認証レコードが作成されます。スキャン処理中に、スキャンが「Finished」になると、レコード作成が開始されます。レコードは作成または更新できます(新しい IP が追加され、既存の IP が削除)。
システム作成の認証レコードは、金色のロックのアイコン と、所有者が「System」であることにより識別できます。システム作成の Oracle レコードでは、テンプレートレコード名も表示されます。このテンプレートには、Oracle インスタンスのログイン資格情報が含まれています。
コンプライアンススキャンを開始し(PC または SCA を使用)、「Include system authentication records in scans」オプションが有効になっているオプションプロファイルを選択します。
スキャン処理時に、インスタンススキャンデータが統合され、レコード設定が次のホストにマッピングされます。
- 単一インスタンス設定を持つ単一ホスト
- 複数インスタンス設定を持つ単一ホスト
- 単一インスタンス設定を持つ複数ホスト
- 複数インスタンス設定を持つ複数ホスト
自動レコード作成が有効になっている Apache 認証スキャンの例を見ていきます。検出スキャンから収集されたスキャンデータの例を以下に示します。
このスキャンでは、次の 3 つの Apache 認証レコードが自動作成されます。
Apache 設定ファイル |
Apache コントロールコマンド |
ホスト |
conf1 |
bin1 |
host1、host2 |
conf2 |
bin2 |
host1 |
conf3 |
bin3 |
host2 |
システム作成のレコードとユーザ作成のレコードを含む、これらのアプリケーション用に作成された任意のレコードを非アクティブ化することができます。
非アクティブのレコードはスキャンに含められません(オプションプロファイルで「Include system created authentication records in scans」オプションが選択されている場合であっても含められません)。非アクティブ化するレコードを選択し、データリストの上の「Actions」メニューから「Deactivate」を選択します。レコードをアクティブ化するには、「Activate」を選択します。
作成タイプ(「System created」か「User created」か)およびステータス(「Active」か「Inactive」か)で、これらのサーバアプリケーションのレコードを検索できます。
「Record Type」で「System Record Template」を選択すると、すべての Oracle レコードテンプレートを検索できます。
「Template Record」を選択し、テンプレート名の全体または一部を入力することで、特定の Oracle レコードテンプレートに関連付けられたすべてのシステム作成レコードを検索できます。
- 2 つのインスタンスの“ Apache configuration file ”と“ Apache control command ”という 2 つのパラメータの値が異なる場合、同じ/異なるホスト上の 2 つの Apache Web Server インスタンスレコードは異なります。
- 2 つの WebSphere インスタンスのパラメータ“ unix_websphere_home_dir ”の値が異なる場合、同じ/異なる Unix ホスト上の 2 つの IBM WebSphere インスタンスレコードは異なります。
- 2 つの WebSphere インスタンスのパラメータ“ win_websphere_home_dir ”の値が異なる場合、同じ/異なる Windows ホスト上の 2 つの IBM WebSphere インスタンスレコードは異なります。
- JBoss インスタンスのパラメータ(jboss_domain_mode、jboss_home_path、jboss_base_path、jboss_conf_dir_path、jboss_conf_file_path、jboss_conf_host_file_path)のうちのいずれかの値が異なる場合、同じ/異なるホスト上の 2 つの JBoss インスタンスレコードは異なるとみなされます。
- 2 つのインスタンスの、“ Apache tomcat home directory ”と“ Apache tomcat base directory ”という 2 つのパラメータの値が異なる場合、同じ/異なるホスト上の 2 つの Apache Tomcat Server インスタンスレコードは異なります。
Oracle の場合:
- Oracle データベースの SID/サービス名およびポートが同じホスト上の既存のシステム作成のレコードと同じであるものの、次のいずれかの Unix パラメータが異なる場合、既存のレコードが更新され、新しい値が取り込まれます(Oracle Home path、init(SID).ora、spfile(SID).ora、listener.ora、sqlnet.ora、tnsnames.ora)
- Oracle データベースの SID/サービス名またはポートが同じホスト上の既存のシステム作成レコードとは異なる場合、一意のインスタンスと見なされ、新しいレコードが作成されます。
- Oracle データベースの SID/サービス名およびポートが別のホスト上の既存のシステム作成レコードと同じであるものの、次のいずれかの Unix パラメータが異なる場合、一意のインスタンスと見なされ、新しいレコードが作成されます(Oracle Home path、init(SID).ora、spfile(SID).ora、listener.ora、sqlnet.ora、tnsnames.ora)
認証レコード名には、“ Authentication Type [System Created] – ID ”と表示されます。
例えば、“ Apache Web Server [System Created] – 100201 ”となります。
Authentication Type はアプリケーションの名前です。ID は検出されたインスタンスの一意のレコード ID です。
新しいインスタンスが検出されると、設定(設定ファイル、コンロトールコマンド、IP、ネットワーク(該当する場合))に応じて、インスタンスが既存のレコードに追加されるか、新しいレコードが作成されます。
ユーザ作成の認証レコードは変更されず、「Active」に設定されている限りスキャンに含められます。
はい。スキャンのオプションプロファイルで「Allow instance discovery and system record creation」オプションが有効になっている場合、検出されたすべての実行インスタンスに対して常に新しいシステム認証レコードが作成されます。同じ設定を持つユーザ作成のレコードが既にある場合、システムがそれを変更することはありません。デフォルトでは、ユーザ作成のレコードがスキャンに含められます。重複する場合に、システム作成のレコードを使用したい場合は、オプションプロファイルを編集します。
ホストについて、インスタンスが報告される場合:
レポートされた各インスタンスに対して、そのインスタンス設定のシステムレコードが存在するかどうかが確認されます。
インスタンスについてレコードが見つかり、ホストの IP が含まれている場合、変更はありません。
インスタンスについてレコードが見つかったが IP が含まれていない場合、レコードに IP が追加されます。
インスタンスについてレコードが見つからない場合、そのインスタンスと IP について新しいシステムレコードが作成されます。
ホストについて、インスタンスが報告されない場合:
既存のシステムレコードで、IP を含むものすべてから、ホストの IP が削除されます。
前回のスキャンよりも報告されるインスタンスの数が少ない(インスタンスが繰り下げされた)場合:
実行されなくなったインスタンスについて、システムレコードからホストの IP が削除されます。
前回のスキャンよりも報告されるインスタンスの数が多い(インスタンスが繰り上げされた)場合:
報告された各インスタンスについて、システムレコードが既に存在するかどうかの確認が行われます。レコードが存在する場合、ホストの IP をレコードに追加します(既に含まれていなければ)。レコードが存在しない場合、そのインスタンスと IP について新しいシステムレコードが作成されます。
スキャンごとに異なるインスタンスが検出されるため、この方法はお勧めしません。例えば、最初に、サーバディレクトリレベルのインスタンス検出を設定したオプションプロファイルを使用してスキャンを開始した結果、4 つのインスタンスが検出され、4 つのシステム認証レコードが作成されたとします。次に、インストールディレクトリレベルのインスタンス検出を設定したオプションプロファイルを使用して、同じ対象に対して 2 番目のスキャンを開始した結果、今度は 1 つのインスタンスのみが検出されたとします。結果として、IP アドレスは最初の 4 つの認証レコードから削除され、新しいインスタンス情報を持つ 1 つのシステム認証レコードが新たに作成されます。
独自の IBM WebSphere App Server 認証レコードを作成する場合、「Installation Directory」フィールドにサーバディレクトリへのパスを入力させないようにする方法はありません。パスはインストールディレクトリとして保存されますが、インスタンス名の先頭に次のような" Installation Directory "ラベルが追加されます。
Installation Directory: /opt/IBM/WebSphere/AppServer/profiles/AppSrv02/config/servers/server1
サーバディレクトリから同じインスタンスを自動検出すると、インスタンスはサーバディレクトリとして保存され、自動検出されたインスタンス名の先頭には、次のような" Server Directory" ラベルが追加されます。
Server Directory: /opt/IBM/WebSphere/AppServer/profiles/AppSrv02/config/servers/server1
注記: Windows では、インストールディレクトリのみがサポートされます。
この 2 つのケースのパスは同じであるにもかかわらず、一方には" Installation Directory" ラベルが付き、もう一方には" Server Directory" ラベルが付くため、同じパスとは見なされません。このため、ユーザ作成のレコードとシステム作成のレコードがスキャン時に送信されます。
はい、その方法をお勧めします。「Scan by Policy」を使用して、ポリシーのアセットに対してコンプライアンス評価を実行できます。システム作成の認証レコードを含めることをお勧めします。これは、コンプライアンス評価にすべてのアクティブな認証レコード(システム作成とユーザ作成の両方)が使用されることを保証する、唯一の方法です。
いいえ。これらのオプションは同時に使用できません。インスタンス検出スキャンでは、コンプライアンス評価データが収集されません。
いいえ。システム認証レコードをユーザが編集することはできません。データリストの上の「Actions」メニューからレコードのステータス(「Active」、「Inactive」)は変更できます。
このオプションは、システム作成の Oracle レコードでのみ使用できます。これにより、テンプレートに関連付けられたすべてのレコードの資格情報を変更することなく、個々のレコードの資格情報を変更することができます。テンプレートに関連付けられたすべてのインスタンスの資格情報を変更する場合は、テンプレートの資格情報を編集してください。
はい。認証レコードの作成/編集パーミッションを持つユーザは、システムレコードも含め、認証レコードを削除できます。ヒント - システムレコードを非アクティブにできます。非アクティブのレコードはスキャンに含められません。
コンプライアンスオプションプロファイルを選択し、「System Authentication Records」の「Allow instance discovery and system record creation」オプションをオフにします。オフにすると、新しいシステムレコードは作成されません。
その場合は、次のいずれかの操作を行います。
- システムレコードを非アクティブ化します。認証レコードリストの上の検索機能を使用して、作成タイプが「System created」のすべてのレコードを検索します。次に、レコードを選択し、「Actions」メニューから「Deactivate」を選択します。
- PC または VM のオプションプロファイルで、「Include system created authentication records in scans」オプションをオフにします。PC オプションプロファイルでこのオプションをオフにすると、ユーザ作成の認証レコードのみが PC スキャンに含められます。VM オプションプロファイルでこのオプションをオフにすると、ユーザ作成の認証レコードのみが VM スキャンに含められます。既存のスキャンデータはアカウントに残りますので注意してください。すべてのホスト情報を削除するには、ホストをパージします。