Dify Lib by Omluc

オリジン制限iframeプラグイン

指定したWebサイトにDifyアプリを埋め込むため、表示元のドメインを制限します。本人認証の代わりにはなりません。

Dify上の実行結果は掲載していません。

iframe制限:埋め込み先のドメインを制限

埋め込み先を決めたサイトに絞る

Difyアプリを社内ポータルに埋め込む場合、どのサイトから表示できるかを制御します。許可する埋め込み元はドメイン名やURLで指定します。配布中の実装はサーバ側でドメインだけを照合し、通信方式やポートの違いを判定しません。ブラウザへの埋め込みは、返却するCSPでも制限します。

埋め込み制限と本人確認を分ける

許可するオリジンとDifyアプリの公開URLを設定します。許可外の表示は拒否できますが、ブラウザの参照元情報やプロキシ設定に左右されるため、利用者本人の認証や細かな権限管理は別に設計してください。複数の埋め込み元を使う場合は、許可リストと各環境での動作を確認します。

許可した画面と拒否された画面を比べる

許可オリジンと未許可オリジンから同じアプリを開き、表示結果を比較します。本人認証の検証とは分けます。

仕様・導入前に確認すること

対応環境・入力・出力・制約

認証方式

  • パスワードや利用者の本人認証は行いません

入力

  • エンドポイント設定のapp_public_url(必須)とallowed_frame_origins(許可する埋め込み元)

出力

  • 条件を満たす場合はDifyアプリをiframeで表示するHTML。拒否時はHTTP 403

制約

  • 許可リストが空、直接アクセス、Refererの欠落やドメインの不一致の場合は拒否します。
  • 判定はSec-Fetch-DestとRefererに依存し、ヘッダーを偽装できるクライアントへの認証にはなりません

配布内容を確認して申し込む

配布物、利用条件、申請後の案内を専用フォームで確認できます。

プラグインの配布を申請する

設定はいつでも変更できます。