始める
プライバシーゲートウェイの実装は、主に3つの部分から構成されています。
- アプリケーションゲートウェイサーバー/バックエンドの設定(あなたが運営します)。
- クライアントの設定(あなたが運営します)。
- プライバシーゲートウェイリレイサーバーへの接続(Cloudflareが運営します)。
プライバシーゲートウェイは現在、クローズドベータ版です。興味がある方は、お問い合わせください ↗。
プライバシーゲートウェイの顧客として、アプリケーションゲートウェイサーバーを実装することでOHTTPのサポートを追加する必要があります。アプリケーションゲートウェイは、受信リクエストの復号化、内部リクエストの宛先への転送、および対応するレスポンスをクライアントに再暗号化する責任があります。
サーバー実装は、受信リクエストを処理し、レスポンスを生成し、クライアントがアクセスできるように公開鍵設定を広告します。公開鍵設定は安全に生成され、APIを介して利用可能になります。設定の詳細については、README ↗を参照してください。
アプリケーションはこの機能を自分で実装することもできます。公開鍵設定 ↗、HTTPメッセージの暗号化と復号化 ↗、およびサーバー固有の詳細 ↗については、OHTTP仕様に記載されています。
サーバー設定のヘルプには、以下のリソースを使用してください:
- Go:
- Rust: ゲートウェイライブラリ ↗
- JavaScript / TypeScript: ゲートウェイライブラリ ↗
プライバシーゲートウェイの顧客として、ゲートウェイのクライアント側サポートを設定する必要があります。クライアントは、リクエストを暗号化し、それをCloudflareプライバシーゲートウェイに送信し、対応するレスポンスを復号化する責任があります。
さらに、アプリ開発者は、ゲートウェイの公開鍵設定を取得または発見するためにクライアントを設定する必要があります。これがどのように行われるかは、ゲートウェイが公開鍵設定をどのように提供するかによります。この設定に関して助けが必要な場合は、お問い合わせください ↗。
クライアント設定のヘルプには、以下のリソースを使用してください:
- Objective C: サンプルアプリケーション ↗
- Rust: クライアントライブラリ ↗
- JavaScript / TypeScript: クライアントライブラリ ↗
クライアントとサーバーを設定した後、Cloudflareおよびアプリケーションバックエンドに意図したデータのみを送信していることを確認するために、アプリケーションをレビューしてください。特に、アプリケーションデータにはエンドユーザーに特有の情報を含めるべきではなく、これによりOHTTPが提供する利点が無効になります。
- アプリケーションは、プライバシーゲートウェイを通じて転送されるリクエストから識別可能なユーザーデータを削除する必要があります。これには、名前、メールアドレス、電話番号などが含まれます。
- アプリケーションは、プライバシーゲートウェイを使用する際にユーザーにクラッシュレポートを無効にするよう促すべきです。クラッシュレポートには、メールアドレスを含む敏感なユーザー情報やデータが含まれる可能性があります。
- 可能な限り、アプリケーションデータはクライアントデバイス上で、クライアントのみが知っている鍵で暗号化されるべきです。たとえば、iOSは一般的にクライアント側の暗号化(およびKeyChainを介した鍵の同期) ↗に対して良好なサポートを提供しています。Androidも同様の機能を提供している可能性があります。
リクエストを送信する前に、まずCloudflareでアカウントを設定する必要があります。それには、お問い合わせください ↗し、アプリケーションゲートウェイサーバーのURLを提供する必要があります。
次に、以下の規約に従って、相互に合意されたURLにリクエストを転送していることを確認してください。
https://<APPLICATION_NAME>.privacy-gateway.cloudflare.com/