• 最終編集日時: 31 May 2022

相互TLSを設定する

安全な発注書cXML送信を確保するためにmTLSを設定する方法を学びます。

はじめに

相互TLS(mTLS)では、秘密キーを使用することでユーザーとCoupa顧客の両方の間で認証を行い、ユーザーと顧客の両方が本人であることを確認できます。両方のTLS証明書内の情報は、追加の検証も提供します。

mTLSを設定して、発注書のcXML送信を安全にできます。

仕組み

相互TLSの仕組み

相互TLS(mTLS)を使用すると、クライアントはmTLSハンドシェイクのクライアント証明書申請を送信します サーバーにメッセージを送信します。証明書要求メッセージには、サーバーが信頼する発行証明書の識別名のリストが含まれています。Coupaクライアントに対して、独自の証明書で応答するように指示します。

クライアントはクライアント証明書メッセージを提示します。これには、証明書要求メッセージにリストされている識別名のいずれかに関連付けられたクライアントの証明書が含まれます。

証明書要求メッセージを送信して応答を受信した後、サーバーはクライアントの証明書を検証します。検証に成功すると、サーバーはクライアントを認証します。

サプライヤーとCoupa間のmTLS設定の通信フロー。

相互TLSを設定

メモ

Coupaの顧客が相互認証(mTLS)をサポートする必要があります。

  1. をダウンロード mTLS証明書
  2. サーバーでmTLSを有効にして、クライアント(Coupa)との接続をネゴシエートします。
メモ

Apache2ウェブサーバーを使用した相互TLSの使用例:

  1. クライアントのルート証明書を取得します。ハンドシェイクの相互TLS部分では、サーバー(リスナー)が、サーバーが信頼するルート識別名をクライアント(Coupa)に送信します。次に、クライアントは、一致する証明書/中間証明書バンドルで応答します。
  2. 証明書をコピーします。これには、 BEGIN/END CERTIFICATE ウェブサーバー上のファイルに行を追加します。
  3. 名前を使用 cxml-supplier.coupahost.com.pem 証明書ファイルの場合は同様です。
  1. ウェブサーバーを設定します。設定後、Webサーバーは相互TLSを使用して、クライアント(Coupa)が自己識別のためにX.509証明書を提供することを要求します。
メモ

Apacheウェブサーバーの使用例。 これらのApache 2.4ディレクティブは、クライアントが相互TLSをサポートする必要があります。特定のディレクトリまたはすべての着信接続に適用できます。

  • SSLVerifyClientが必要です
  • SSLVerify深度3
  • SSLCACertificateFile /etc/apache2/conf/intermediate.pem

IIS、F5、Nginx、その他のWebサーバーには、異なるが類似した手順が適用されます。

  1. アクセス制御にクライアントのIDを使用して、クライアントアクセス制御を設定します。
メモ

Apacheを使用するこの例は、特定のディレクトリに適用されます。

  1. SSLライブラリは、クライアントの証明書からの情報を使用して環境変数を作成するように設定されています。
  2. クライアントの共通名(CN)がCoupaシステムであることを確認します。

<Location />
SSLOptions +StdEnvVars
<RequireAny>
Require expr %{SSL_CLIENT_S_DN_CN} == "cxml-supplier.coupahost.com"
</RequireAny>
</Location>

  1. Coupa顧客と協力して、CoupaインスタンスのサプライヤーレコードでmTLSを有効にします。

mTLS証明書

文書 追加日/更新日
intermediate.pem 2022年4月14日
cxml-supplier.coupahost.com.pem 2022年4月14日
cxml-supplier.coupacloud.com.pem 2022年4月14日

FAQとトラブルシューティング

まだ質問はありません!

このページに表示されている一部、または全ての内容は、機械翻訳によるものです。ご了承ください。