パブリックバケット
パブリックバケットは、ユーザーが自分のR2バケットの内容をインターネットに直接公開できる機能です。デフォルトでは、バケットは決して公開アクセスできず、常に明示的なユーザーの許可が必要です。
パブリックバケットは、次の2つの方法のいずれかで設定できます。
- 自分の管理下にあるカスタムドメインとしてバケットを公開する。
https://r2.devの下にCloudflare管理のサブドメインとしてバケットを公開する。
WAFカスタムルール、キャッシング、アクセス制御、またはボット管理をバケットに設定するには、カスタムドメインを通じて行う必要があります。
カスタムドメインを使用するには、r2.devを有効にする必要はありません。
カスタムドメインを通じたドメインアクセスにより、Cloudflare Cacheを使用してR2バケットへのアクセスを加速できます。
カスタムドメインのバケットへのアクセスを制限するには、Cloudflareの既存のセキュリティ製品を使用します。
- Cloudflare Zero Trust Access: チームメンバーのみがアクセスできるバケットを保護します。
- Cloudflare WAF Token Authentication: アクセストークンを提供することで、選択したユーザーに対してドキュメント、ファイル、メディアへのアクセスを制限します。
- Go to R2 and select your bucket.
- On the bucket page, select Settings.
- Under Public access > Custom Domains, select Connect Domain.
- Enter the domain name you want to connect to and select Continue.
- Review the new record that will be added to the DNS table and select Connect Domain.
Your domain is now connected. The status takes a few minutes to change from Initializing to Active, and you may need to refresh to review the status update. If the status has not changed, select the … next to your bucket and select Retry connection.
追加したDNSレコードを表示するには、接続されたドメインの横にある**…**を選択し、Manage DNSを選択します。
R2バケットにアクセスするためにカスタムドメインを使用する際には、いくつかの制限があります。
- 使用するドメインは、R2バケットと同じアカウントに属している必要があります。
- CNAMEフラッティングが有効なドメインの使用はサポートされていません。ドメインアクセスを有効にする前にCNAMEフラッティングを無効にする必要があります。
- オブジェクトアクセスはHTTPS経由のみ利用可能であり、平文HTTPはサポートされていません。
ドメインを無効にすると、そのドメインを通じてバケットへの公開アクセスがオフになります。他のドメインや管理されたr2.devサブドメインを通じたアクセスには影響しません。
指定されたドメインは、削除またはバケットを削除するまでR2に接続されたままになります。
ドメインを無効にするには:
- R2で、変更したいバケットを選択します。
- バケットページで、Settingsを選択します。
- Public access > Custom Domainsの下で、Connect Domainを選択します。
- 無効にしたいドメインの横にある**…**を選択し、Disable domainを選択します。
- Access to Bucketの下のバッジがNot allowedに更新されます。
ドメインを削除すると、ダッシュボードで設定したカスタムドメインの構成が削除されます。バケットは引き続き公開アクセス可能です。
ドメインを削除するには:
- R2で、変更したいバケットを選択します。
- バケットページで、Settingsを選択します。
- Public access > Custom Domainsの下で、Connect Domainを選択します。
- 無効にしたいドメインの横にある**…**を選択し、Remove domainを選択します。
- 確認ウィンドウで「Remove domain」を選択します。このステップの一環として、ドメインを指すCNAMEレコードも削除されます。ドメインを再度追加することは常に可能です。
ドメインはもはやバケットに接続されず、接続されたドメインのリストに表示されなくなります。
バケットの管理された公開アクセスを有効にすると、バケットの内容がCloudflare管理のr2.devサブドメインを通じてインターネットに公開されます。
バケットのr2.devへのアクセスを有効にするには:
- R2で、変更したいバケットを選択します。
- バケットページで、Settingsを選択します。
- Settingsで、Public Accessに移動します。
- R2.dev subdomainの下で、Allow Accessを選択します。
- **Allow Public Access?**で、確認のために「allow」と入力し、Allowを選択します。
- これで、パブリックバケットURLを使用してバケットとそのオブジェクトにアクセスできるようになります。
バケットが公開アクセス可能かどうかを確認するには、バケットに移動し、Public URL AccessがAllowedと表示されていることを確認します。
公開アクセスを無効にすると、バケットはr2.devサブドメインとしてインターネットに公開されなくなります。他のドメインが接続されている場合、バケットはそれらのドメインで引き続きアクセス可能です。
バケットの公開アクセスを無効にするには:
- R2で、変更したいバケットを選択します。
- バケットページで、Settingsを選択します。
- Bucket Details > R2.dev subdomainの下で、Disallow Accessを選択します。
- **Disallow Public Access?**で、「disallow」と入力して確認し、Disallowを選択します。
これで、バケットとそのオブジェクトにはパブリックバケットURLを使用してアクセスできなくなります。