トラフィックがトークナイゼーションサービスに到達する前に多くの複雑なデータ処理が必要な場合、Runtime Fabric インバウンドロードバランサーがトラフィックを転送できる、転送先の Mule アプリケーションをセットアップすることをお勧めします。このシナリオでは、Mule アプリケーションがデータを処理し、トラフィックをトークナイゼーションサービスに送信します。
Mule アプリケーションでデータ処理を実行する必要がない場合は、トークナイゼーションサービスをパススルーとして公開できます。
前提条件
トークナイゼーションサービスを設定し、使用するには、以下が必要です。
-
トークナイゼーションサービスを管理する権限を取得するためのトークナイゼーション権限を付与します。
-
Runtime Fabric をインストールします。
Anypoint Runtime Fabric は、Mule アプリケーションや API ゲートウェイのデプロイメントおよびオーケストレーションを自動化するコンテナサービスです。 -
Runtime Fabric でインバウンドトラフィックを有効化します。
-
トークナイゼーション形式を作成します。
-
トークナイゼーションサービスを作成します。
トークナイゼーション RAML から API を作成する
API ゲートウェイを使用して、ルーティング可能なトークナイゼーションサービスをセットアップするのに必要な情報を取得したら、トークナイゼーション RAML から API を作成します。
-
公開の Anypoint Platform 開発者ポータルに移動し、「Tokenization API」 (トークナイゼーション API) を検索します。
-
[Download (ダウンロード)] > [As RAML (RAML として)] を選択します。RAML が ZIP ファイルとしてダウンロードされます。
-
Exchange ポータルに移動して、[New asset (新規アセット)] をクリックします。
-
[Name (名前)] を「
Tokenization API」として設定し、[Type (種別)] を「REST API - RAML」として設定します。 -
ダウンロードした ZIP ファイルを選択し、[Publish (パブリッシュ)] をクリックします。
-
Anypoint Studio または Design Center で、
Tokenization API RAML に基づいて HTTP アウトバウンド接続を作成します。
Runtime Fabric のトークナイゼーションサービスは、ポート 3443 をリスンし、HTTPS 経由でのみ使用できます。
アウトバウンド URL のホスト名部分は、サービス名 + -tokenizer の形式を取ります。たとえば、トークナイゼーションサービス名が「mytoken1」の場合、アウトバウンド URL は https://mytoken1-tokenizer:3443 になります。 -
HTTP アウトバウンド接続の前に Dataweave 変換ステップを使用して、
Tokenization API RAML で定義された TokenizationServiceRequest データ型に入力データを変換します。
要求は項目の配列です (例:{"format" : "ssnonly", "data" : "333-33-3333"})。format の値は、サービスで定義されたトークナイゼーション形式に一致します。 data の値は、何をトークナイズまたはデトークナイズするかを示します。配列で許容される最大項目数は 100 です。配列に 100 を超える項目が含まれる場合は、トークナイゼーションサービスへの複数の要求に分割する必要があります。 -
Mule アプリケーションの HTTP リスナーを HTTPS に設定します。
-
Mule アプリケーションをエクスポートします。
-
Runtime Manager で、アプリケーションを Runtime Fabric にデプロイします。
Runtime Fabric インバウンドロードバランサーと Mule アプリケーション間の TLS を有効にするには、[Last mile security (Last Mile セキュリティ)] チェックボックスをオンにする必要があります。 -
(省略可能) Mule アプリケーションのセキュリティと保護を強化するには、認証方法を追加します。
TLS を設定する
トークナイゼーションサービスは TLS トラフィックのみを受け入れるため、Mule HTTP アウトバウンド接続に対して TLS を有効化する必要があります。また、Mule アプリケーションを Runtime Fabric にデプロイする場合は、Last-Mile セキュリティを有効化し、インバウンドロードバランサーと Mule アプリケーション間の接続で TLS が使用されるようにする必要があります。
次に、Studio 7.3 で Mule アプリケーションの TLS を設定する方法の例を示します。
-
Anypoint Studio に移動して、対象の Mule アプリケーションのプロジェクトを開きます。
-
src/main/resources に移動し、キーストアを追加します。この例では、キーストアの名前は「tester.jks」となっています。 -
後で [Last Mile Security (Last-Mile セキュリティ)] フラグを有効にできるように、TLS をリスナー側に追加します。これを行うには、まず HTTPS フラグを設定します。
-
[TLS] タブをクリックし、キーストア情報を設定して、以下を選択します。
-
[TLS Configuration (TLS 設定)] ドロップダウンから [Edit inline (インライン編集)] を選択します。
-
[Trust Store Configuration (トラストストア設定)] で [Insecure (安全ではない)] ボックスをオンにします。
-
[Key Store Configuration (キーストア設定)] でキーストアの情報を入力し、[OK] をクリックします。
この例では、トラストストア側は [insecure (安全でない)] に設定されており、キーストア、別名、パスワード情報が追加されています。
-
-
Mule から、トークナイズされたサービスへの HTTP 接続に対して、TLS を有効にするように HTTP エンドポイントの設定を編集します。
== Runtime Fabric にアプリケーションをデプロイする
-
アプリケーションを保存して、エクスポートします。
-
Anypoint Platform で、Runtime Manager に移動して、[Deploy Application (アプリケーションをデプロイ)] をクリックします。
-
[Deploy Application (アプリケーションをデプロイ)] ページで、次の手順を実行します。
-
[Application Name (アプリケーション名)] を入力します。
-
[Deployment Target (デプロイメント対象)] ドロップダウンから、アプリケーションのデプロイ先の Runtime Fabric を選択します。
-
[Choose File (ファイルを選択)] をクリックし、エクスポートしたアプリケーションをアップロードします。
-
アプリケーションを実行する Mule の [Runtime version (ランタイムバージョン)] を選択し、[Replicas (レプリカ)] と [Resource Allocation (リソース割り当て)] を設定します。
-
[Ingress (イングレス)] タブをクリックし、[Enable Last-Mile Security (Last-Mile セキュリティを有効化)] オプションを選択します。
-
-
[Deploy Application (アプリケーションをデプロイ)] をクリックします。