> For the complete documentation index, see [llms.txt](https://docs.payments.thalescloud.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.payments.thalescloud.io/ecom/ja/d1-apiwosuru/tlsmtlswosuru.md).

# 相互TLS（mTLS）を設定する

D1 APIは相互TLS（mTLS）を要求します。これは着信および発信のAPIコールに適用されます。

D1 eCom有効化の統合を開始する前に、mTLSを設定してください。

あなたはマーチャントゲートウェイとして統合します。Thalesはあなたに `merchantGatewayId`.

D1の環境は分離されています。PreProdとProductionそれぞれで接続を別々に設定してください。

### 着信フロー: あなたのホストからThales D1へ

<figure><img src="/files/0b575bb3faa1bb297de261d2623bb9c229ddc3f8" alt="mTLS inbound flow from your host to Thales D1"><figcaption><p>mTLS着信フロー</p></figcaption></figure>

一般要件：

1. 相互認証
2. TLS 1.2または1.3
3. インターネット経由（IP許可リストなし）
4. Thalesのサーバー証明書はAWS CAによって署名されています： <https://www.amazontrust.com/repository/>
5. あなたのクライアント証明書はThales CAによって署名されます

#### クライアント証明書

D1 APIにアクセスするには、Thales CAによって署名されたクライアント証明書が必要です。証明書署名要求（CSR）をThalesの担当者に送信してください。

一般要件：

1. アルゴリズム：RSA暗号化（4096ビット）またはECDSA P-256鍵とSHA256ハッシュを使用します。
2. 共通名（CN）：形式および値はThalesによって強制および検証されます。値は以下の例のステップ2に記載されたパターンに従う必要があります。

#### CSR生成の例

各環境（PreProdおよびProduction）についてこの手順を繰り返してください。

1. CSRのためにRSAまたはECDSAのいずれかで新しい鍵ペアを生成します。

次のOpenSSLコマンドでRSA 4096鍵ペアを作成できます：

```bash
openssl req -new -newkey rsa:4096 -nodes -keyout private_rsa.key -out customer_pp.csr -subj "/C=<Country>/ST=<State>/L=<Locality>/O=<Customer Organization>/OU=<Customer Organization Unit>/CN=TLSMA-RSA\/<merchantGatewayId>\/D1.<env>"
```

次のOpenSSLコマンドでECDSA P-256鍵ペアを作成できます：

```bash
openssl ecparam -name prime256v1 -genkey -noout -out d1-mtls-client-cert.key
openssl req -new -key d1-mtls-client-cert.key -out d1-mtls-client-cert.csr -subj "/C=<country>/ST=<state>/L=<locality>/O=<Customer Organization>/OU=<Customer Organization Unit>/CN=TLSMA-ECDSA\/<merchantGatewayId>\/D1.<env>"
```

2. mTLSクライアント証明書の詳細。

ここで：

* *country* はあなたの国です。
* *state* はあなたの州です。
* *locality* はあなたの市区町村です。
* *Organization Name* はあなたの組織名です。
* *Organizational Unit* はあなたの組織部門です。
* *CN* は共通名を意味します。
* *merchantGatewayId* はThalesによって提供されたIDです。
* *env* はこの証明書が対象とする環境です。プレプロダクションの場合： `PPR`、本番環境の場合： `PRD`
* *ECDSAとRSAの違い* はCN内で鍵の種類に依存します。

{% hint style="info" %}
あなたのバックエンドは常にDNSを通じてD1のドメイン名とサブドメインを解決する必要があります。Thales D1は静的IPアドレスを提供しません。D1のIPをDNSのTTLを超えてハードコーディングしたりキャッシュしたりしないでください。
{% endhint %}

### 発信フロー: Thales D1からあなたのホストへ

<figure><img src="/files/8b5457bd6efb57c2d1f9e17d4302be4d2791ba89" alt="mTLS outbound flow from Thales D1 to your host"><figcaption><p>mTLS発信フロー</p></figcaption></figure>

一般要件：

1. 相互認証
2. TLS 1.2、1.3
3. あなたのサーバーはポート443（または8443、ただし443が推奨）で待機している必要があります
4. インターネット経由（IPホワイトリストなし）
5. D1が提示するmTLSクライアント証明書を認証するために、Thales Client CAを信頼する必要があります。Thales Client CAはオンボーディング時に共有されます。
6. Thales D1はあなたのサーバー証明書を信頼する必要があります。オンボーディング時にあなたのサーバーCAチェーンを提供してください。

{% hint style="info" %}
ThalesはMozillaにより認識されるCAが発行したTLS証明書を期待します。エンドポイントがプライベートCAに依存する場合は、PEM形式のトラストストアをThalesのデリバリーチームに提供してください。CAの変更がある場合は事前にThalesに通知してください。
{% endhint %}

{% hint style="info" %}
あなたはThales Client CAのみを信頼（エンドース）し、Thalesのクライアント証明書を「ピン」してはなりません。Thalesのクライアント証明書はThales Client CAによって署名されています。D1は有効期限前であっても予告なくクライアント証明書をローテーションする可能性があります。
{% endhint %}

### FAQ

#### RSA 2048のクライアント証明書を使用できますか？

いいえ、それは可能ではありません。

#### mTLSなしで接続できますか？

いいえ、それは可能ではありません。

#### VPNはサポートされていますか？

Thalesは着信および発信の接続に対してVPNをサポートしていません。インターネット上でmTLSを使用してください。OAuth 2.0も必要です。

#### クライアント証明書の有効期間はどのくらいですか？

Thalesのバックエンド接続のために発行されるクライアント証明書はThales Business PKIによって署名され、有効期間は5年です。

#### クライアント証明書の更新プロセスはどのようなものですか？

更新プロセスでは、顧客は本ページに記載された識別名（DN）ポリシーを使用して新しい証明書署名要求（CSR）を生成します。生成されたCSRはその後Thales Business PKIによって署名されます。


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.payments.thalescloud.io/ecom/ja/d1-apiwosuru/tlsmtlswosuru.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
