モバイル - CNAMEの設定

概要

重要:AndroidおよびiOSでは、SDKバージョン2.5.1以降でサポートされています

CNAME機能を使用すると、お客様独自のアプリケーションのドメインの下にホスト名を作成できます。このホスト名は、イベントの送信やガイドコンテンツのダウンロードの際に、Pendoのホスト名の代わりに使用されます。これにより、イベントを確実に収集し、広告ブロックソフト、ファイアウォール、ウェブフィルタなどの対象となるエンドユーザーにガイドを提供することができます。

CNAMEとは何の略ですか?

正規名レコード(CNAMEレコードと略されます)は、ドメインネームシステム(DNS)で定義されるそのドメインについての情報の種類の1つで、あるドメイン名やホスト名の別名を定義するものです。別名は「エイリアス」(alias)と呼ばれます。

設定

product.example.comのような、企業ドメインのサブドメインを指定してください(ここで「example」はお客様の企業ドメインです)。

Pendoは、作成する必要のある一連の必須DNSエントリを提供します。これは次のようなものです。

ドメイン CNAME 説明
product.example.com 1234567812345678-txt.example.pendo.io このレコードは、PendoがGoogle App Engine経由でdata.product.example.comを提供できることをGoogleに検証するために使用されます。
mobile.product.example.com 1234567812345678-data.example.pendo.io データセンターによって、レコードは次のエイリアスのいずれかになります:data.pendo.io
data.eu.pendo.io
us1.data.pendo.io
_0123456789abcdef.content.product.example.com _fedcab987654321.acm-validations.aws このレコードは、Amazonに対してサブドメインの所有権を検証し、SSL証明書を自動生成できるようにするために使用されます。


上記の例はプレースホルダーであり、実際に作成されるDNSエントリのセットはPendoが提供します。Pendoをインストールしたサブスクリプションごとに、固有のコンテンツドメインが必要です。

DNSエントリが設定されると、Pendoはインフラの設定を完了します。これには新しいホスト名用のSSL証明書の自動生成が含まれます。

Pendoは、サブスクリプション設定の「データホスト」と「コンテンツホスト」を、mobile-data.product.example.comを指すように更新します。

AndroidでのCNAMEの有効化

アプリのManifest.xmlの<application>タグ内に以下のエントリを追加します。

例:
<meta-data android:name="pnd_device_url" android:value="https://mobile.product.example.com"/>
<meta-data android:name="pnd_app_url" android:value="https://mobile.product.example.com/"/>
<meta-data android:name="pnd_data_url" android:value="https://mobile.product.example.com/"/>

iOSでのCNAMEの有効化

info.plistに以下のマッピングを追加します。

<key>PNDCNames</key> 
<dict>
<key>PNDDeviceURL</key>
<string>https://mobile.product.example.com</string>

<key>PNDAppURL</key>
<string>https://mobile.product.example.com/string>

<key>PNDDataURL</key>
<string>https://mobile.product.example.com</string>
 


よくある質問

自分でSSL証明書を用意することはできますか?

データとコンテンツのホスト名の両方に適した単一のSSL証明書を提供することも、別々の証明書を提供することもできます。証明書を生成するには2つの方法があります。

  1. 鍵とCSRを生成し、CAから証明書を取得し、証明書チェーンと秘密鍵を含む暗号化されたアーカイブを弊社に送付してください。デフォルトでは、PGPで暗号化されたファイルをkeybase.io経由でhttps://keybase.io/a13mなどのOPSチームのメンバーに送信します。独自の安全なファイル転送メカニズムをご希望の場合は、そのメカニズムを使用することもできます。

  2. CSRの生成に適したテキストファイルを提供してください。Pendoが鍵とCSRを生成し、CSRをお客様に送り、お客様はそれを使ってCAから証明書を取得します。これにより、当事者間で秘密鍵をやり取りする必要がなくなり、証明書チェーンを平文の電子メールで送信しても安全になります。CSRの入力ファイルは以下のようになっています。
[ req ]
default_bits = 2048
prompt = no
encrypt_key = no
default_md = sha1
distinguished_name = dn
req_extensions = req_ext

[ dn ]
CN = data.product.example.com
O = Example, Inc.
L = Some City
ST = NC
C = US
0.OU= Engineering

[ req_ext ]
subjectAltName = DNS:data.product.example.com,DNS:content.product.example.com