セキュリティ

Oleafly Server のセキュリティ

Oleafly Server は、Oleafly デスクトップアプリ用のセルフホスト型コラボレーションサーバーです。国立研究所や大学の研究者が使い始める前に、通常はその組織の IT 部門またはセキュリティチームによる審査が必要です。このページはそのチームに向けて書いています。サーバーが現在行っていることと、規制のある環境での導入に向けて予定していることを説明します。

このページはサーバーについて説明しています。デスクトップアプリ単体については、プライバシーページをご覧ください。

現在の対応

サーバーが現在行っていること

セルフホスト

サーバーは、自組織のマシンまたはクラウドアカウント上で運用します。Docker、Coolify、Render、Railway のほか、通常の Linux サービスとしても動かせます。プロジェクトのファイルとデータベースはその環境にとどまります。ファイルはディスクにも、S3 互換の任意のストレージにも保存できます。

外部への通信なし

サーバーは、組織が設定したサインインプロバイダーへの通信を除き、外部へのネットワーク通信を行いません。

自組織の ID プロバイダー

ユーザーは組織の OpenID Connect ID プロバイダーでサインインします。GitHub やメールのリンクでもサインインでき、ブラウザからアプリに戻れないデバイスではサインインコードも使えます。

参加できるユーザーは管理者が決定

管理者は許可リストとドメインルールで参加できるユーザーを管理し、各ユーザーに管理者、メンテナー、メンバー、ゲストのいずれかのロールを割り当てます。ゲストは招待されたプロジェクトだけを閲覧でき、必要であれば管理者の承認を条件にすることもできます。

デバイス鍵

デバイスごとに固有の鍵があり、セッションはその鍵に紐づけられます。そのため、トークンをコピーされても鍵がなければ使えません。リフレッシュトークンは 1 回限りで、再利用はサーバーが検知します。デバイスをサインアウトさせると、すでに開いている接続も含めて即座に反映されます。

署名付きの変更

変更は、それを行ったデバイスが署名します。サーバーは、編集を行う各 ID が、その変更に署名したデバイスに属していることを確認し、コメントの作成者も同じ方法で確認します。プロジェクトのスナップショットは、アップロードされたものを信頼せず、署名付きの変更ログからサーバー自身が作成します。

セキュリティログとアクセスログ

セキュリティログには、サインイン、拒否されたサインイン、管理者の操作、デバイスの変更が、それぞれクライアントのアドレスとともに記録されます。プロジェクトのオーナーは、誰がプロジェクトを開いたかを記録するアクセスログを残すこともできます。

コンテナイメージと SBOM

各リリースには、シェルを含まない小さなコンテナイメージ、ソフトウェア部品表(SBOM)、ビルドの来歴情報が付属します。

独立したレビュー

独立したレビュアーが、サーバーのセキュリティ、パフォーマンス、スケーラビリティを確認しました。指摘事項は修正済みで、修正にはテストが用意されています。

予定

規制のある環境での導入に向けた予定

導入環境によっては、サーバーの現在の機能だけでは足りない場合があります。このセクションの項目はまだ利用できません。審査がこれらの項目のいずれかに左右される場合は、お問い合わせの際にお知らせください。何から開発するかを決める参考になります。

FIPS モード

FIPS モードでは、TLS と署名に FIPS 140 検証済みの暗号モジュールを使用する予定です。

暗号化されたプロジェクト

プロジェクトの内容はメンバーのデバイス上で暗号化される予定です。サーバーは暗号化された変更を中継し、テキスト、コメント、ファイルを読むことはできなくなります。鍵はメンバーが削除されるたびにローテーションされるようになります。

管理者操作の確認強化

重要な管理者操作の前には、Touch ID、Windows Hello、または再サインインを求めるようになります。デバイス鍵は Secure Enclave または TPM に保管される予定です。ロールや設定が変更されるとすべての管理者にメールが届くようになり、セッションとアイドルのポリシーも設定できるようになります。

監査ログのエクスポート

セキュリティログとアクセスログは、syslog または JSON 形式でご利用の SIEM にストリーミングされるようになり、保持設定とリーガルホールドにも対応する予定です。

保存時の暗号化

データベースと保存ファイルは、自組織の鍵管理サービスの鍵で暗号化される予定です。

SCIM プロビジョニング

メンバーは、ご利用の ID プロバイダーから SCIM でプロビジョニングされるようになります。

インターネットなしでのインストール

インターネットに接続できないネットワークにサーバーをインストールする手順を、文書として用意する予定です。

セキュリティドキュメント

サーバーの脅威モデル、ハードニングガイド、責任共有マトリクス、脆弱性開示プロセスを公開し、第三者によるペネトレーションテストも実施する予定です。

お問い合わせ

セキュリティ審査や試験導入のご相談

Oleafly Server を審査中のチーム、または試験導入を希望するチームは、GitHub Discussions でスレッドを立ててください。審査に必要な事項を、予定リストの項目も含めてお知らせください。

脆弱性を見つけた場合は、公開の場に投稿しないでください。セキュリティポリシーの説明に従い、GitHub で非公開で報告してください。