証明書の管理
証明書は、Webhookエンドポイントの相互TLS(mTLS)を有効にし、安全な通信中にNTT CPaaSとシステムの両方が相互に認証できるようにします。これにより、イベント通知は信頼できるエンドポイントとのみ交換されます。証明書の作成、管理、削除は、 NTT CPaaS Web インターフェイス または サブスクリプション API を使用して行うことができます。
相互 TLS は、トランスポート層をセキュリティで保護します。Basic auth、HMAC、OAuth 2.0によるリクエストレベルの認証については、「認証設定の管理」を参照してください。両方を一緒に使用して、階層化されたセキュリティを実現できます。
前提条件 [#prerequisites]
mTLS の証明書をアップロードして使用するには、次のものが必要です。
- 証明書ファイル: 秘密鍵を含むPEM形式のクライアント証明書。
- パスフレーズ: 証明書のパスフレーズ。
- 通知プロファイル: mTLSを適用するプロファイル、またはmTLSの作成を計画しているプロファイル。通知プロファイルの管理を参照してください。
mTLSとは何か、サブスクリプションでの動作、階層化されたセキュリティの詳細については、「サブスクリプションコンポーネント](/subscriptions/subscription-components#certificates)を参照してください。
証明書を作成する [#create]
クライアント証明書を NTT CPaaS にアップロードし、そのステータスを確認してから、通知プロファイルにアタッチして、その Webhook エンドポイントの mTLS を有効にします。
-
NTT CPaaS Web インターフェイスにログインし、開発者ツール > サブスクリプション管理 に移動します。
-
[証明書] タブを開きます。
-
**[証明書の作成] を選択します。
-
証明書情報を入力します。
- 証明書名: 文字、数字、ダッシュ、またはアンダースコアのみを使用してください。
- 証明書の内容: 証明書チェーンと秘密鍵データ(PEMヘッダーとフッターを含む)の両方を含む、完全な証明書コンテンツを貼り付けます。
- パスフレーズ: 証明書を保護するパスフレーズを入力します。
重要証明書の内容には秘密キーが含まれている必要があります。これがないと、NTT CPaaS がエンドポイントに対してクライアントとして認証できないため、mTLS ハンドシェイクは失敗します。
-
保存 を選択して証明書をアップロードします。
-
証明書の状態を通知プロファイルに適用する前に、証明書の状態の取得 API 要求を使用して証明書の状態を確認します。
-
確認したら、証明書を通知プロファイルに添付します。
- 開発者ツール > サブスクリプション管理に移動します。
- 通知プロファイル タブを開きます
- mTLS を有効にするプロファイルを編集します
- セキュリティ設定で証明書を選択します。
- プロファイルを保存する
証明書のアップロード API エンドポイントを使用します。証明書の内容 (秘密鍵を含む) とパスフレーズは Base64 でエンコードされている必要があります。
certificateIdは作成後に変更できません。
アップロード後、通知プロファイルにアタッチする前に、 証明書の状態の取得 エンドポイントを使用して証明書の状態を確認します。
証明書の表示 [#view]
-
NTT CPaaS Web インターフェイスにログインし、開発者ツール > サブスクリプション管理 に移動します。
-
[証明書] タブを開きます。
このタブには、作成およびアップロードされたすべての証明書が表示されます。検索バーを使用して、特定の証明書を検索します。
サブスクリプション API を使用して、次のことを行います。
- 検索、ページネーション、並べ替えですべての証明書を取得する
- 証明書 ID による特定の証明書の取得
- 証明書IDですべての証明書ステータスまたは特定のステータスを取得する
証明書を削除する [#delete]
-
NTT CPaaS Web インターフェイスにログインし、開発者ツール > サブスクリプション管理 に移動します。
-
[証明書] タブを開きます。
-
削除する証明書を見つけて、その横にある 3 つのドットのメニューを選択します。
-
Delete (削除) を選択します。
証明書の削除 API エンドポイントを使用します。要求パスで証明書 ID を指定します。
通知プロファイルにリンクされている証明書は、直接削除できません。最初に通知プロファイルから証明書参照を削除します。詳細は、サブスクリプション階層と削除ルールを参照してください。
ベストプラクティス [#best-practices]
階層型セキュリティを使用する
mTLSとアプリケーションレベルの認証(Basic、HMAC、またはOAuth)を組み合わせて、多層防御を実現します。
プラン証明書の更新
有効期限が切れる前に証明書を更新して、Webhook 配信の中断を回避します。更新された証明書をアップロードし、通知プロファイルを更新します。
申し込む前に確認してください
運用通知プロファイルに適用する前に、必ず証明書の状態を確認してください。証明書ステータスの取得 API 要求を使用します。
安全なパスフレーズストレージ
証明書のパスフレーズを安全に保存します。NTT CPaaSにアップロードする際にはパスフレーズが必要です。
通知プロファイルの管理
Webhook エンドポイントに証明書をアタッチします。
認証設定の管理
セキュリティを強化するためにアプリケーションレベルの認証を構成します。
Webhook サブスクリプションの管理
サブスクリプションを作成および管理します。
サブスクリプションの階層と削除ルール
コンポーネントの関係と削除の依存関係。