ArcGIS に外部コンテンツを埋め込む

このパターンは、ArcGIS Experience Builder、ArcGIS Dashboard、その他の構成可能な Web アプリ、または ArcGIS Pro などの ArcGIS アプリにおける主要なユーザー エクスペリエンスに依存しています。 望ましい統合は、以下のような一般的なパターンで、他のシステムからのコンテンツを ArcGIS インターフェイスに埋め込むことです:

ArcGIS における統合パターン

ArcGIS Enterprise や ArcGIS Online のさまざまな構成構成可能なアプリは、<iframe> アプローチを通じてコンテンツを埋め込むことができます。 Web マップを利用するアプリであれば、ArcGIS Pro や ArcGIS Maps SDK を含め、ポップアップが設定された埋め込み画像を扱えます。

機能 ArcGIS Online ArcGIS Enterprise ArcGIS Location Platform ArcGIS Pro
ArcGIS に外部コンテンツを埋め込む N/A N/A

フルサポート 一部サポート


URL パラメーターの使用

多くの外部 Web アプリケーションでは、URL パラメーターを通じて定義される、読み込み時に構成可能なプロパティがサポートされています。たとえば、https://myapp.domain.com/showdocument/docId=BND12 と指定すると、ID が BND12 のドキュメントを表示します。 この統合パターンを使用する場合、親アプリケーションやビジネス システム アプリケーションのプロパティを使って、これらの URL パラメーター (iframe アプリケーションの読み込み方法を制御する) を動的に設定することが一般的です。 たとえば、ユーザーが BND12 の識別子を持つレコードを ArcGIS アプリケーションで表示している場合、iframe を定義して、外部システムからリモート アプリケーションを読み込む URL を使用するよう設定できます。このとき、対象データがすでに表示されているか、フォームまたはインターフェイスが事前に読み込まれた状態にすることができます。

<iframe> の埋め込みに関するベスト プラクティスと課題

これまで、iframe は広く普及してきた技術でありながら、多くのセキュリティー上の課題ももたらしてきました。 そのため、iframe にはさまざまなブラウザーによる制約があり、システム間での機能性や利便性が制限されることがあります。 主な課題は以下のとおりです:

  • シングル サインオンが複雑になる。 ブラウザーの標準仕様では、<iframe> のドメインが親コンテンツのドメインと一致しない限り、<iframe> 内で既存のセッション Cookie を再利用することをブロックすることがよくあります。 つまり、ユーザーは <iframe> に埋め込まれた ArcGIS システムに認証を行う必要があり、ログイン操作が求められます。 フレームの親とフレーム自体の両方が同じアイデンティティー プロバイダーで認証されている場合、ユーザーはシングル サイン オンを期待するため、2 度目のログインが必要になることに不満を持つことがあります。 また、一部のエンタープライズ向けアイデンティティー プロバイダーも、iframe のサインイン ダイアログの使用をブロックすることがあるので、慎重に作成された Content-Security-Policy ヘッダーなど、別のアプローチが必要になることがあります。
  • この問題に適切に対処するには、親サイトと iframe サイトの両方で同じドメイン (.domain.com など) を使用し、同じシングル サインオン プロバイダーを使用して、必要に応じてアプリが自動的にユーザーをログイン画面に転送するよう設定します。
  • ファイルのダウンロードやアップロードがブロックされる場合がある。 ブラウザーのセキュリティー機能により、iframe からのファイル ダウンロードがブロックされることがあります。この場合、埋め込みアプリのダウンロード リンクやダウンロード ボタンが error や失敗を表示せず、フィーチャ テーブルからのエクスポートなどのファイルが単純にダウンロードされなくなります。 このような問題は、通常、ブラウザーの JavaScript コンソール メッセージを通じて報告されます。

  • 画面サイズがユーザー インターフェイスに悪影響を及ぼす可能性がある。 iframe は、ピクセル単位で固定されたフレーム サイズとして定義されることが多く、埋め込まれるアプリはその想定される表示サイズに合わせて設計される必要があります。 親アプリケーションがユーザーの画面解像度に合わせて iframe を適切に拡大縮小できれば、画面の大きいユーザーはレスポンシブな体験を得られますが、サイズが固定された iframe では小さな埋め込みウィンドウになり、ユーザー エクスペリエンスが損なわれるおそれがあります。 埋め込みアプリは、すべての主要な UI 要素や操作が所定の画面領域内で提供できるように設計されるべきです。

  • iframe と親ウィンドウ間の通信は、通常、制限されている。 一部の <iframe> パターンでは、postMessage などのプロトコルやパターンを通じて親ウィンドウと <iframe> 間の通信をサポートしていますが、ほとんどの ArcGIS アプリケーションはこの機能を提供していないため、iframe アプリケーション内の操作は親ウィンドウに影響を与えません。また、その逆も同様です。
Top