Winter '26 のインテグレーションの新機能を確認する
学習の目的
この単元を完了すると、次のことができるようになります。
- MuleSoft for Flow とのインテグレーションのオプションを挙げる。
- アクセストークンを送信するセキュアな手法を実践する。
- バイナリファイルを外部サービスと交換するインテグレーションを設計する。
- 外部認証を使用する OAuth 2.0 クライアントログイン情報フローを設定する。
- 外部クライアントアプリケーションのログイン情報のローテーションを実装する。
MuleSoft for Flow: Integration を使用して外部システムとのインテグレーションを効率化する
インテグレーションは必ずしも厄介な作業ではありません。MuleSoft for Flow: Integration を使用すれば、コードを記述しなくても、Salesforce を外部システムに接続できます。サードパーティコネクタを使用すると、デリバリーが加速し、メンテナンスが軽減し、インテグレーションをシンプルな状態に保つことができます。
コネクタには次の主な機能があります。
機能 | 実行する作業 | 例 |
|---|---|---|
トリガー | 別のシステムでデータが変更されたときにフローを開始する。 | NetSuite に取引先責任者を新規作成すると、フローで Salesforce にリードが作成される。 |
アクション | Salesforce と別のシステム間でデータを受送信する。 | Salesforce で注文を作成すると、フローで NetSuite に販売注文が作成される。 |
項目の対応付け | Salesforce の項目を外部の項目に対応させる。 | データの正確性を維持するために、フローで直接項目を対応付ける。 |
オートメーション Lightning アプリケーションの [Connections (接続)] タブで各接続を管理します。その画面で、認証設定をチェックしてメタデータを確認し、フロー間で接続を再利用すれば、何度も設定する必要がありません。
別のシステムのイベントに Salesforce を反応させる必要がある場合は、外部システム変更トリガーフローを設計します。何か新しいことが生じたときに、どのシステムをポーリングし、どの変更を監視して、どのフローを実行するのかを Salesforce に指定します。これがイベント駆動型の自動化です。シンプルで、自ら管理できます。
クエリ文字列にアクセストークンを含めない
URL で機密情報を渡すのは危険です。今回のリリースから、要求のクエリ文字列にアクセストークンが含まれている場合、1 つのアクセスエンドポイントへの GET 要求がブロックされます。この変更により、よくあるセキュリティギャップが解消され、データを保護するベストプラクティスに従うことができます。
アクセストークンは認証ヘッダーに含めて送信します。
次に例を示します。
GET /services/oauth2/singleaccess HTTP/1.1 Host: mydomain.my.salesforce.com Authorization: Bearer <access token> |
|---|
POST 要求を実行する場合は、引き続きトークンをヘッダーまたはリクエストボディに含めて送信できます。いずれの方法でも、トークンがブラウザーのアドレスバーやログに示されることはありません。
外部サービスとファイルをアップロード/ダウンロードする
外部サービスがテキストベースのデータ以外にも対応するようになりました。画像や PDF のようなバイナリファイルを外部システムとの間で直接アップロードやダウンロードできます。このため、ドキュメントやメディアなど、テキスト以外の形式を伴うインテグレーションの柔軟性が高まります。
この設定手順は次のとおりです。
- OpenAPI 仕様の PUT または GET 操作を使用して外部サービスを登録します。
- Salesforce で、フローまたは Apex で使用する呼び出し可能なアクションが作成されます。
- ファイルを ContentDocument オブジェクトとしてアップロードするか、外部ファイルを ContentDocument オブジェクトとしてダウンロードします。
この拡張機能により、ドキュメント管理システムや、メディアアセットを保存するアプリケーションと簡単に統合できるようになります。カスタムコードを作成する必要はありません。
外部認証 ID プロバイダーを使用してインテグレーションを簡便にする
ID プロバイダーの中には、トークンを発行するときに、オーディエンスパラメーターなど特定の詳細を求めるものがあります。これまでは、こうした要求に対処するためにカスタム Apex コードを記述していました。今後はクリック操作ですべて設定できます。
外部認証 ID プロバイダーは、OAuth 2.0 クライアントログイン情報フローを完全にサポートしています。このプロバイダーを設定するときに、認証種別に [Client Credentials Flow (クライアントログイン情報フロー)] を選択します。次に、[Setup (設定)] で直接 audience などのカスタム要求パラメーターを追加します。クライアントログイン情報は安全に保存されるため、手動による管理は不要です。
プロバイダーにリンクする外部ログイン情報を作成するときは、[Client Credentials Flow Managed by External Auth Provider (外部認証プロバイダーによって管理されるクライアントログイン情報フロー)] を選択します。こうすれば、システムがトークンの交換 (ハンドシェイク) を処理してくれます。
外部クライアントアプリケーションのログイン情報のステージングとローテーションを行う
ログイン情報を長い間使い続ければ、セキュリティリスクが生じます。外部クライアントアプリケーションの安全を確保するために、静的キーに頼るのではなく、API を使用してログイン情報のステージングとローテーションを行うことになりました。
API を使用して次のことを実行できます。
- OAuth 利用状況エンドポイントからクライアントアプリケーション ID を取得する。
- POST 要求を実行して新しいログイン情報をステージングする。
- PATCH 要求を実行してログイン情報をローテーションする。
- 不要になった時点でログイン情報を削除する。
この機能により、接続アプリケーションのライフサイクル管理が可能になります。シークレットを定期的にローテーションすれば、脅威にさらされるリスクが軽減し、最新のセキュリティ対策に準拠します。また、このアプローチでは自動化が可能になるため、手作業を増やすことなく、セキュリティを維持するインテグレーションを設計できます。
まとめ
この単元では、MuleSoft for Flow コネクタを使用してインテグレーションを強化する新しい方法、安全性の高いトークンの処理、バイナリファイルのサポート、OAuth の簡単な設定、ログイン情報のローテーションについて確認しました。
リソース
- Salesforce ヘルプ: MuleSoft for Flow: Integration Connectors (MuleSoft for Flow: Integration コネクタ)
- Salesforce ヘルプ: NetSuite コネクタ
- Salesforce ヘルプ: Streamline External System Integration with MuleSoft for Flow: Integration (MuleSoft for Flow: Integration を使用した外部システムとのインテグレーションの効率化)
- Salesforce ヘルプ: GET Requests with Access Tokens in the URL Query String Are Blocked for the Single Access Endpoint (1 つのアクセスエンドポイントで URL クエリ文字列にアクセストークンを含む GET 要求をブロック)
- Salesforce ヘルプ: Upload and Download Files with External Services Binary File Support (外部サービスのバイナリファイルのサポートによるファイルのアップロードとダウンロード)
- Salesforce ヘルプ: Simplify Integrations with External Auth Identity Provider Support for Client Credentials (クライアントログイン情報に対する外部認証 ID プロバイダーのサポートを使用したインテグレーションの簡素化)
- Salesforce ヘルプ: Stage and Rotate External Client App Credentials (外部クライアントアプリケーションのログイン情報のステージングとローテーション)
