Bucketの設定
Versioning
VersioningはFPT Object Storage上でオブジェクトの複数バージョンを保存・管理できる機能です。Versioningを有効にすると、オブジェクトを更新または削除するたびに新しいバージョンが作成・保存されます。この機能を使用して、Bucket内のすべてのオブジェクトのバージョンを保存・復元できます。
現在、FPT Portalでは非現行バージョンの管理はサポートされていません。この機能を完全に活用するには、SDKまたはクライアントをご利用ください。
Bucketのこの機能を有効にするには、以下の手順に従ってください:
- 設定したいBucketのActionセクションでConfigを選択します。
- Versioningタブを開きます。
- EnableまたはDisableを選択し、Saveをクリックします。
Static Website Hosting
Static Website Hostingは、静的Webサイト全体のリソースをFPT Object Storageに保存できる機能です。通常のファイル保存だけでなく、HTML、CSS、JavaScriptファイルやその他の静的アセットをBucketに保存し、Webサイトとしてユーザーに公開できます。 BucketでStatic Website Hosting機能を有効にすると、FPT Object Storageから公開URLが提供されます。このURLを使用して、Webホスティングサービスと同様にWebサイトをアクセス・共有できます。 FPT Object StorageでのStatic Website Hostingの作成・設定手順:
- WebサイトのソースをすべてS3 Bucketにアップロードします。
- 設定したいBucketのActionセクションでConfigを選択します。
- Static Website Hostingタブを開きます。
- ENABLE WEBSITE HOSTINGを選択し、必要な情報を入力します:
- Index Document: Webサイトのホームページ。
- Error Document: ユーザーが無効なURLをリクエストした場合に表示される404ページ。
EndpointsのURLからアクセスします。アクセス可能にするには、Bucket内のファイルをPublic状態にする必要があります。
Lifecycle Configurations
Lifecycle Configurationsは、Bucket内のオブジェクトのライフサイクルを自動で管理できる機能です。一定期間後にオブジェクトを自動削除する用途に特に効果的です。 1つのBucketに複数のLifecycle Ruleを作成でき、各ルールをオブジェクトのグループに適用するか、Bucket全体に1つのルールを使用できます。標準的なLifecycle Ruleは以下のコンポーネントで構成されます:
- Scope: ルールが適用されるオブジェクトの範囲を決定します。Bucket全体に使用するか、特定のオブジェクトグループに適用するためのプレフィックスを指定できます。
- Delete current versions of objects: スコープ内のオブジェクトの現行バージョンが削除されるタイミングを指定します。Versioningを使用していない場合、現行バージョンの削除はオブジェクトの完全削除に相当します。
- Permanently delete non-current versions of objects: スコープ内のオブジェクトの非現行バージョンが削除されるタイミングを指定します。非現行バージョンはVersioning使用時にのみ作成されるため、Versioningを使用していない場合はこの設定は不要です。
- Delete incomplete multipart uploads: 未完了のマルチパートアップロードを削除するタイミングを指定します。
- Delete expired object delete markers: 有効期限切れのdelete marker(古いバージョンが存在しないオブジェクト)を削除します。
Lifecycle Configurationsを使用することで、Bucket内のオブジェクトのライフサイクルを自動管理し、ストレージコストの削減とデータ管理の効率化が図れます。
ファイルを特定日に完全削除、Transitions Classなどの高リスクなアクションはFPT Portalから削除されています。これらのアクションが必要な場合は、S3 Clientsを使用して設定してください。
A. 新しいLifecycle Ruleの作成
- Object Storage Managementダッシュボードで、Lifecycle Ruleを設定したいBucketのConfigを選択します。
- Lifecycle Configurationsタブを開き、Create Ruleを選択します。
- Lifecycle Ruleの情報を対応するフィールドに入力します:
- Rule Name: ルールの名前。
- Rule Scope: ルールが適用されるオブジェクトの範囲。Bucket全体(Full)にルールを適用するか、Bucket内の特定のオブジェクトグループに適用するためのプレフィックスを指定できます。
| アクション | 説明 |
| --- | --- |
| Delete current versions of objects | オブジェクトの現行バージョンが削除されるまでの日数を選択します。 |
| Permanently delete non-current versions of objects | オブジェクトの非現行バージョンが削除されるまでの日数を選択します。 |
| Delete incomplete multipart uploads | 未完了のマルチパートアップロードが削除されるまでの日数を選択します。 |
| Delete expired object delete markers | 有効期限切れのobject delete markerが削除されるまでの日数を選択します。 |
- FPT Object StorageでVersioningを有効にしている場合、オブジェクトを削除するとすぐに削除されるのではなく、delete markerが作成されます。Delete markerは、オブジェクトが削除されたことを示すために作成される固有のエンティティです。Delete markerを作成することで、削除履歴を追跡し、必要に応じて将来のデータ復元が可能になります。
- オブジェクトの古いバージョンがすべて削除され、バージョンリストにdelete markerのみが残った場合、そのdelete markerはExpired delete markerとなります。
B. Lifecycle Ruleの更新
- 更新したいLifecycle RuleでEditを選択します。
- Lifecycle Ruleの更新情報を入力します。
C. Lifecycle Ruleの削除
- 削除したいLifecycle RuleでDeleteを選択します。
- 確認ダイアログが表示され、ルール名とユーザー確認が求められます。Deleteを選択して削除を実行します。
Bucket CORS設定
CORS(Cross-Origin Resource Sharing)は、Webサイトがお互いに安全にデータを共有・連携できるようにする仕組みです。 デフォルトでは、FPT Object Storageはすべてのオリジン(Webサイト、サーバー)からBucketへのリクエストをブロックします。Bucket CORS機能を使用することで、特定のオリジンのWebサイトが同一オリジンポリシー(SOP)にブロックされることなくBucketのリソースをリクエストできます。 WebサイトがFPT Object Storageのリソースにアクセスしようとすると、ブラウザはFPT Object StorageサーバーにCross-Originリクエスト(CORSリクエスト)を送信します。サーバーはCORSポリシーを含むHTTPヘッダーを送信してこのリクエストに応答する必要があります。ブラウザはこれらのヘッダーを確認してアクセスが許可されているか判断します。 オリジン(Webサイト、サーバー)がBucketからデータをGETできるようにするには、Bucket CORS Configに宣言する必要があります。
A. 新しいBucket CORS Ruleの作成
ステップ1 :Object Storage Managementダッシュボードで、CORSを設定したいBucketのConfigを選択します。
ステップ2 :Bucket CORSタブを開き、Create Ruleを選択します。
ステップ3 :CORS Ruleの情報を対応するフィールドに入力します:
| アクション | 説明 |
|---|---|
| Rule Name | ルールの名前 |
| Allowed Origins | CORSリクエストを許可するオリジン。*を使用するとすべてのオリジンを許可します。 |
| Allowed Methods | オリジンが実行できる1つ以上のHTTPメソッドを許可します。 |
| Max Age Seconds | キャッシュの有効期間。 |
| Advanced setting | Expose Headers: クライアントがアプリケーションからアクセスできるようにする1つ以上のレスポンスヘッダー。Allowed Headers: Access-Control-Request-Headersで指定するヘッダー。 |
B. Bucket CORS Ruleの更新
ステップ1 :更新したいBucket CORS RuleのEditを選択します。
ステップ2 :CORS Ruleの更新情報を入力します。
C. Bucket CORS Ruleの削除
ステップ1 :削除したいBucket CORS RuleのDeleteを選択します。
ステップ2 :確認ダイアログが表示され、ルール名とユーザー確認が求められます。Deleteを選択して削除を実行します。








