MQTT 接続の保護

メッセージ・フロー内の MQTT ノードと MQTT サーバーの間の接続は、SSL で暗号化できます。

MQTT サーバーへの接続を暗号化する前に、以下のタスクを実行する必要があります。
  • トラストストアを作成 (トラストストアがまだ存在しない場合) し、MQTT サーバーの公開証明書をトラストストアにインポートします。
  • トラストストアを使用するように統合サーバーを構成します。 統合サーバー・レベルでの鍵ストアおよびトラストストアのランタイム・プロパティーの表示および設定を参照してください。
  • MQTT サーバーへの接続に使用できるユーザー名とパスワードを (MQTT サーバー管理者から) 取得します。
  • MQTT メッセージ・フロー・ノードのセキュリティー ID プロパティーの値を設定します。
  • mqsisetdbparms コマンドを使用して、MQTT メッセージ・フロー・ノードの「セキュリティー ID」プロパティーをユーザー名とパスワードにリンクします。 mqsisetdbparms コマンドを参照してください。
以下のいずれかの方法を使用して、MQTT サーバーと MQTTSubscribe または MQTTPublish メッセージ・フロー・ノードとの間の接続を暗号化できます。
開発時
MQTT メッセージ・フロー・ノードのプロパティーで「SSL の使用」チェック・ボックスを選択し、適切なポート番号を設定します。 デフォルトの SSL ポート番号は 8883 です。
デプロイメント中
mqsiapplybaroverrideを使用して connectionUrl プロパティーを設定します。 connectionUrl プロパティーには、プロトコル、ホスト名、およびポートを含める必要があります。 以下に例を示します。
mqsiapplybaroverride -b my.bar -k myApplication -m myFlow#MQTTPublish.connectionUrl=ssl://myMQTTserver.com:8883
    
SSL が使用されないように接続を構成するには、プロトコルを tcp に変更します。 以下に例を示します。
mqsiapplybaroverride -b my.bar -k myApplication -m myFlow#MQTTPublish.connectionUrl=tcp://myMQTTserver.com:1883
    
connectionUrl プロパティーの値が設定された場合、以下の MQTT メッセージ・フロー・ノードのプロパティーの値よりも優先されます。
  • ホスト名
  • ポート
  • SSL の使用
mqsiapplybaroverrideについて詳しくは、 mqsiapplybaroverride コマンドを参照してください。
実行時
LocalEnvironment.Destination.MQTT.Output サブツリー内の connectionUrl ローカル環境変数を設定します。 MQTT ノードでのローカル環境変数の使用を参照してください。