データの場所
R2に保存されているデータの場所がどのように決定されるか、また、バケット内のオブジェクトが保存される物理的な場所を制御するためのさまざまな入力について学びます。
新しいバケットを作成すると、データの場所はデフォルトで自動に設定されます。現在、このオプションは、呼び出し元の位置に基づいて、バケット作成リクエストに最も近い利用可能なリージョンのバケットの場所を選択します。
ロケーションヒントは、バケット作成時に提供できるオプションのパラメータで、データにアクセスされることを期待する主な地理的場所を示します。
ロケーションヒントを使用することは、バケット内のデータへのアクセスの大部分が、バケット作成リクエストの発信元とは異なる場所から来ると予想される場合に良い選択肢となります。ロケーションヒントは最善の努力であり、保証ではないことを念頭に置いておき、定期的に更新されるコンテンツをユーザーに近づけることでパフォーマンスを最適化する手段としてのみ使用するべきです。
自分の位置に基づいて最も近い利用可能なリージョンでバケットを自動的に作成するか、リストから特定の場所を選択することができます。
- Cloudflareダッシュボード ↗にログインし、R2を選択します。
- バケットを作成を選択します。
- バケットの名前を入力します。
- 場所の下で、自動選択のためにNoneを選択したままにするか、リストからリージョンを選択します。
- バケットを作成を選択して、バケット作成プロセスを完了します。
S3 APIを使用してLocationConstraintパラメータを介してロケーションヒントを設定できます:
await S3.send( new CreateBucketCommand({ Bucket: "YOUR_BUCKET_NAME", CreateBucketConfiguration: { LocationConstraint: "WNAM", }, }));他のS3 SDKからの追加の例については、Examplesを参照してください。
以下のヒントの場所がサポートされています:
| ヒント | ヒントの説明 |
|---|---|
| wnam | 北米西部 |
| enam | 北米東部 |
| weur | 西ヨーロッパ |
| eeur | 東ヨーロッパ |
| apac | アジア太平洋 |
ロケーションヒントは、特定の名前のバケットが最初に作成されるときのみ尊重されます。同じ名前のバケットを削除して再作成すると、元のバケットの場所が使用されます。
法的制限は、バケット内のオブジェクトが特定の法的管轄区域内に保存されることを保証します。
データの居住要件を満たすために、データが法的管轄区域内に保存および処理されることを確保する必要がある場合は、法的制限を使用します。これには、GDPR ↗やFedRAMP ↗などの地域の規制が含まれます。
- Cloudflareダッシュボード ↗にログインし、R2を選択します。
- バケットを作成を選択します。
- バケットの名前を入力します。
- 場所の下で、管轄を指定を選択し、リストから管轄を選択します。
- バケットを作成を選択して、バケット作成プロセスを完了します。
Workersから特定の管轄に属するR2バケットにアクセスするには、wrangler.tomlのbindingsの一部として管轄とバケット名を指定する必要があります:
[[r2_buckets]]bindings = [ { binding = "MY_BUCKET", bucket_name = "<YOUR_BUCKET_NAME>", jurisdiction = "<JURISDICTION>" }]始めるための詳細については、Use R2 from Workersを参照してください。
定義された管轄に属するR2リソースとS3 APIまたは既存のS3互換SDKを使用して対話する場合、S3エンドポイントで管轄を指定する必要があります:
https://<ACCOUNT_ID>.<JURISDICTION>.r2.cloudflarestorage.com
管轄特有のエンドポイントを使用して、任意のサポートされているS3 API操作を実行できます。管轄エンドポイントを使用する場合、その管轄外のR2リソースにアクセスすることはできません。
以下の例は、JavaScriptの@aws-sdk/client-s3 ↗パッケージを使用してeu管轄内にR2バケットを作成する方法を示しています。
import { S3Client, CreateBucketCommand } from "@aws-sdk/client-s3";const S3 = new S3Client({ endpoint: "https://4893d737c0b9e484dfc37ec392b5fa8a.eu.r2.cloudflarestorage.com", credentials: { accessKeyId: "7dc27c125a22ad808cd01df8ec309d41", secretAccessKey: "1aa5c5b0c43defdb88f567487c071d17e234126133444770a706ae09336c57a4", }, region: "auto",});await S3.send( new CreateBucketCommand({ Bucket: "YOUR_BUCKET_NAME" }));他のS3 SDKからの追加の例については、Examplesを参照してください。
以下の管轄がサポートされています:
| 管轄 | 管轄の説明 |
|---|---|
| eu | 欧州連合 |
| fedramp | FedRAMP |
ベータ版中は、次のサービスは割り当てられた管轄のR2リソースと相互作用しません:
R2バケットが作成されると、管轄を変更することはできません。