MID Server 相互認証の有効化

  • リリースバージョン: Yokohama
  • 更新日 2025年01月30日
  • 所要時間:7分
  • インスタンスに対する認証にクライアント証明書を使用するように MID サーバーを構成します。これにより、MID サーバー構成のキーストアにベーシック認証情報を作成する必要がなくなります。

    始める前に

    必要なロール:admin

    セキュリティフェーズのインジケーターを設定するMID サーバーがネットワークの内部と外部の要素に接続できることを確認するMID サーバーを Linux または Windows ホストにダウンロードしてインストールするMID サーバーを構成MID サーバーセキュリティを設定MID サーバーがネットワークの内部と外部の要素に接続できることを確認するMID サーバーを Linux または Windows ホストにダウンロードしてインストールするMID サーバーを構成MID サーバーセキュリティを設定

    このタスクについて

    MID サーバー相互認証は、MID サーバーのユーザー名とパスワードを削除し、認証用のクライアント証明書を提供します。サーバーが認証を要求するたびに、代わりにこの証明書が送信されます。相互認証を使用するには、証明書ベースの認証を有効にする必要があります。手順については、「証明書ベースの認証の設定」を参照してください。

    相互認証を使用して新しい MID サーバーが作成された場合、機能は自動的に追加されません。アドミニストレーターは、インスタンスのレコードに機能を追加する必要があります。ただし、機能を備えたベーシック認証を使用している既存の MID サーバーは、相互認証に切り替えたときに保持されます。

    相互認証を使用する MID サーバーは、インスタンスに対する UI アクションとしてリキーまたは検証することはできません。

    自己署名証明書は相互認証ではサポートされていません。内部署名証明書は、プライベート認証局によって署名されている場合にのみサポートされます。商用署名証明書は、ブラウザやオペレーティングシステムによって信頼されている認証局など、一般的に信頼されている認証局によって署名されている場合にサポートされます。

    Quebec リリースでは、ヘルスログアナリティクスアプリケーションを使用する MID サーバーを相互認証で構成することはできません。

    手順

    1. ServiceNow サポートに連絡して、MID サーバーでの相互認証を依頼してください。
    2. 信頼できる認証局から証明書と秘密鍵を取得します。

      MID サーバー相互認証は、PEM バンドル形式と PCKS#8 形式の秘密鍵のみをサポートします。バンドルには秘密鍵と証明書の両方が必要です。テキストエディターを使用して証明書を開き、テキスト形式かどうかを確認します。PEM 構文のヘッダーとフッターは次のとおりです。

       -----BEGIN CERTIFICATE----- 
       -----END CERTIFICATE----- 
      バンドルには、正しいフォーマットと、秘密キーと証明書の両方が含まれています。

      PEM 証明書の内容を読み取るには、Linux または Windows で次の openssl コマンドを使用します。openssl x509 -in cert.crt -text 秘密鍵は PKCS#8 形式である必要があります。PKCS#8 構文のヘッダーとフッターは次のとおりです。

       -----BEGIN PRIVATE KEY----- 
       -----END PRIVATE KEY----- 

      秘密鍵の内容を確認するには、Linux または Windows で次の openssl コマンドを使用します。 openssl rsa -in private.key -check

      注:
      証明書が PKCS#8 形式でない場合は、次のエラーが表示されます。- main SEVERE *** ERROR *** 有効な秘密鍵が見つかりませんでした (Could not find valid private key)
    3. インスタンスで、sys_user_certificate.list に移動します。
    4. 新しいレコードを作成します。
      注:
      レコードには MID サーバーの名前が含まれている必要があり、[ユーザーロール][MID サーバー] である必要があります。
    5. 証明書をレコードに添付します。
      添付ファイルはレコードの上の隅にあります。
      注:
      添付ファイルに証明書のみが含まれていることを確認してください。
    6. オプション: MID サーバーが実行されている場合は、MID サーバーを停止します。
    7. MID サーバーのホストマシンで、次のコマンドを実行して証明書と秘密鍵をインストールして管理します。

      クラスパスに jar ファイルが必要なため、エージェントディレクトリのルートからスクリプトを実行します。セキュリティディレクトリがエージェントのルートフォルダーに作成され、MID サーバーによって使用されます。例: bin/scripts/manage-certificates.bat -m

      manage-certificates には以下の機能があります。このスクリプトはエージェントフォルダーから実行する必要があります。
      相互認証の有効化​

      Windows の場合は、次のコマンドを使用します:bin/scripts/manage-certificates.bat -m

      Linux の場合は、次のコマンドを使用します:bin/scripts/manage-certificates.sh -m

      相互認証を削除し、ベーシック認証を復元

      Windows の場合は、次のコマンドを使用します:bin/scripts/manage-certificates.bat -b <myUserName myPassword>

      Linux の場合は、次のコマンドを使用します:bin/scripts/manage-certificates.sh -b <myUserName myPassword>

      指定したエイリアスを使用して、新しい証明書と証明書チェーンを追加

      Windows の場合は、次のコマンドを使用します:bin/scripts/manage-certificates.bat -a <alias> <fileName>

      Linux の場合は、次のコマンドを使用します:bin/scripts/manage-certificates.sh -a <alias> <fileName>

      alias は、インポートされる証明書に指定した一意の名前です。MID サーバーでは、相互認証用のカスタム証明書 (デフォルトのエイリアス名 defaultsecuritykeypairhandle を使用) が必要です。MID サーバーとインスタンス間の MTLS 通信を構成するには、エイリアス名 defaultsecuritykeypairhandle を使用して証明書エントリをキーストアに追加する必要があります。

      fileName は、PEM 証明書、証明書チェーン、および PCKS#8 秘密鍵を含めることができるファイルパスです。PEM バンドルへのファイルパスには、複数の証明書と単一の秘密鍵を含めることができます。各 PEM 証明書のヘッダーとフッターは次のとおりです。

       -----BEGIN CERTIFICATE----- 
       -----END CERTIFICATE----- 

      PKCS#8 構文のヘッダーとフッターは次のとおりです。

       -----BEGIN PRIVATE KEY----- 
       -----END PRIVATE KEY----- 

      証明書チェーンの検証に失敗した場合は、例外がスローされます。ファイルに複数の証明書が含まれている場合は、リーフ証明書、中間証明書、ルート証明書の順に並べる必要があります。

      指定したエイリアスの証明書の詳細を表示

      Windows の場合は、次のコマンドを使用します:bin/scripts/manage-certificates.bat -g <alias> ​

      Linux の場合は、次のコマンドを使用します:./bin/scripts/manage-certificates.sh -g <alias> ​

      このコマンドは、サブジェクトの識別名、発行者名、証明書の有効期限などの情報を表示します。

      既存のすべてのエイリアスをリスト

      Windows の場合は、次のコマンドを使用します:bin/scripts/manage-certificates.bat -l

      Linux の場合は、次のコマンドを使用します:./bin/scripts/manage-certificates.sh -l

      このコマンドは、agent_keystore で使用可能なすべてのエイリアス名をリストします。

      エイリアスを使用して証明書を削除

      Windows の場合は、次のコマンドを使用します:bin/scripts/manage-certificates.bat -d <alias>

      Linux の場合は、次のコマンドを使用します:./bin/scripts/manage-certificates.sh -d <alias>

      このコマンドは、エイリアスとレコードをキーストアから削除します。エイリアス DefaultSecurityKeyPairHandle のエントリは、このコマンドを使用して削除できます。

      キーストアからすべてのエントリを削除

      Windows の場合は、次のコマンドを使用します:bin/scripts/manage-certificates.bat -r​

      Linux の場合は、次のコマンドを使用します:./bin/scripts/manage-certificates.sh -r ​

      このコマンドは、エイリアス DefaultSecurityKeyPairHandle を除く既存のエントリをキーストアから削除します。

    8. MID サーバーを起動します。