16 lines
1.9 KiB
Markdown
16 lines
1.9 KiB
Markdown
`DifySandbox(ディファイサンドボックス)`は、PythonやNode.jsなど複数のプログラミング言語に対応した、軽量・高速・安全なコード実行環境です。Dify Workflowの様々な要素(コードノード、テンプレート変換ノード、LLMノード、ツールノードのコードインタプリターなど)の基盤となる実行環境として機能します。DifySandboxは、ユーザーが提供したコードを実行しつつ、システムのセキュリティを確保します。
|
||
|
||
### 特徴
|
||
- **複数言語対応**:DifySandboxはSeccompをベースに構築され、複数のプログラミング言語をサポートする低レベルのセキュリティ機構を実現しています。現在はPythonとNode.jsに対応しています。
|
||
- **システムセキュリティ**:予期せぬセキュリティ侵害を防ぐため、特定のシステムコールのみを許可する許可リストポリシーを採用しています。
|
||
- **ファイルシステムの隔離**:ユーザーのコードは独立したファイルシステム環境で実行されます。
|
||
- **ネットワーク隔離**:
|
||
- **DockerCompose環境**:専用のSandboxネットワークとプロキシコンテナを使用してネットワークアクセスを提供します。これにより、内部ネットワークのセキュリティを保ちつつ、柔軟なプロキシ設定が可能になります。
|
||
- **Kubernetes環境**:Egressポリシーを用いて直接ネットワーク隔離戦略を設定できます。
|
||
|
||
### プロジェクトリポジトリ
|
||
プロジェクトのソースコードの入手や、導入・使用方法に関する詳細な情報については、[DifySandbox](https://github.com/langgenius/dify-sandbox)リポジトリをご覧ください。
|
||
|
||
### 貢献
|
||
`DifySandbox`の開発に参加する方法については、[貢献ガイド](contribution.md)をご参照ください。
|