Object Storageに関するよくある質問

 

一般的な質問

Oracle Cloud Infrastructure Object Storageとは何ですか?

Oracle Object Storage は、スケーラブルで完全にプログラム可能な、耐久性のあるクラウドストレージサービスです。開発者とIT管理者は、このサービスを使用して、低コストで無制限の量のデータを保存し、簡単にアクセスできます。

Oracle Object Storageで何ができますか?

Oracle Object Storageを使用すると、アプリケーションから直接、またはクラウド・プラットフォーム内から、いつでも安全にデータを保存および取得できます。Oracle Object Storageは、データ・コンテンツのタイプに依存しないため、さまざまな使用事例が可能です。バックアップ・データやアーカイブ・データをオフサイトに送信したり、ビジネス・インサイトを生成できるようにビッグ・データ分析ワークロードを設計したり、スケールアウトWebアプリケーションを作成したりできます。このサービスの備える弾力性により、小規模なアプリケーションから始め、発展に合わせて規模を拡大できます。また、その際は常に、使用した分以外には料金を支払う必要はありません。

オブジェクト・ストレージに対するOracle Cloud Infrastructureのアプローチでユニークな点は何ですか?

Oracle Object Storageサービスは、安全で管理しやすく、強力な一貫性があり、スケーラブルです。読み取り要求が行われると、Oracle Object Storageは、システムに書き込まれたデータの最新のコピーを提供します。Oracle Object Storageは、同じネットワーク上にコンピュート・リソースとオブジェクト・ストレージ・リソースが配置された、高性能で高帯域幅のネットワークに接続されています。そのため、Oracle Cloud Infrastructure内で実行されるコンピュート・インスタンスは、低レイテンシでオブジェクト・ストレージにアクセスできます。

Oracle Object Storageサービスのコア・コンポーネントは何ですか?

オブジェクト: コンテンツ・タイプに関係なく、すべてのデータはオブジェクトとしてOracle Object Storageに保存されます。たとえば、ログ・ファイル、ビデオ・ファイル、オーディオ・ファイルはすべてオブジェクトとして保存されます。

バケット: バケットは、オブジェクトを格納する論理コンテナです。関連するオブジェクトを一緒に格納するグループ化のための仕組みとしてバケットを使用できます。

ネームスペース: ネームスペースは、個人用のバケットのネームスペースを制御できる論理エンティティです。Oracle Cloud Infrastructure Object Storageバケット名はグローバルではありません。バケット名は、1つのネームスペースのコンテキスト内では一意である必要がありますが、複数のネームスペース間で繰り返し使用できます。各テナントは、すべてのコンパートメントにまたがる1つのデフォルト・ネームスペース(テナント名)に関連付けられています。

Oracle Cloud Infrastructure Object Storageの使用を開始するにはどうすればよいですか?

OCI Cloud Free TierへのサインアップOracle Cloudでアプリケーションを構築、テスト、デプロイしましょう。(無料)

Oracle Cloud Infrastructure Object Storageに保存されるデータの耐久性はどれくらいですか?

Oracle Object Storageは、非常に耐久性が高く、99.999999999%(イレブン・ナイン)の年間耐久性を提供するように設計されています。この耐久性を実現するために、各オブジェクトは、複数の可用性ドメインが存在するリージョン内の3つの異なる可用性ドメインと、単一の可用性ドメインが存在するリージョン内の3つの異なるフォルト・ドメインにまたがって冗長保存されます。データの整合性はチェックサムを使用して積極的に監視され、破損したデータは検出されて自動的に修復されます。データの冗長性が失われた場合はそのことが検出され、お客様による介入やお客様への影響なしに修正されます。

Object Storageサービスではイレイジャー・コーディングを使用していますか?

はい、OCI Object Storageでは、イレイジャー・コードなど、さまざまなストレージ方式を採用しています。オブジェクトに使用されるストレージスキームは、お客様による影響を受けず、利用されるスキームも時間と共に変化する可能性があります。

Oracle Cloud Infrastructure Object Storageにはどのくらいの信頼性がありますか?

Oracle Object Storageは非常に高い信頼性があります。このサービスは、99.9%の可用性を実現するように設計されています。予期しないダウンタイムから保護するために、サービスの状態を監視するための複数の保護機能がプラットフォームに組み込まれています。

オブジェクトにメタデータ・タグを割り当てることはできますか?

はい。ユーザーが指定した複数のメタデータのキーと値のペアで、オブジェクトをタグ付けできます。詳細については、Object Storageでのオブジェクトの管理に関する資料を参照してください。

Oracle Cloud Infrastructure Object Storageにはどのくらいの量のデータを保存できますか?

Oracle Object Storageに無制限の量のデータを保存できます。1アカウントに数千のバケットを作成でき、各バケットで無制限の数のオブジェクトをホストできます。最小0バイトから最大10 TiBまでのオブジェクトを保存できます。100 MiBを超えるオブジェクトを保存する場合は、マルチパート・アップロードを使用することをお勧めします。詳細については、Oracle Cloud Infrastructureの資料の「サービス制限」を参照してください。

Oracle Cloud Infrastructure Object Storageは、可用性ドメインまたはリージョンのどちらに固有ですか?

Oracle Object Storageはリージョン・サービスです。専用のリージョンAPIエンドポイントからアクセスできます。

Oracle Cloud Infrastructure Object StorageのネイティブAPIエンドポイントは、一貫したURL形式https://objectstorage.<region-identifier>.oraclecloud.comを使用します。たとえば、米国西部(us-phoenix-1)のOCI Object StorageのネイティブAPIエンドポイントは、https://objectstorage.us-phoenix-1.oraclecloud.comです。

Swift APIエンドポイントは、一貫したURL形式https://swiftobjectstorage.<region-identifier>.oraclecloud.comを使用します。たとえば、米国東部(us-ashburn-1)のOCI Object StorageのネイティブAPIエンドポイントは、https://swiftobjectstorage.us-ashburn-1.oraclecloud.comです。

すべてのOCIリージョンのリージョン識別子については、https://docs.cloud.oracle.com/en-us/iaas/Content/General/Concepts/regions.htmをご覧ください。

Oracle Cloud Infrastructure Object Storageのデータはどこに保存されますか?

Oracle Object StorageはすべてのOracle Cloud Infrastructureリージョンで利用可能であり、データはそれらのリージョン内に保存されます。お客様は、データを配置する地域を柔軟に選択できます。利用可能なリージョンと可用性ドメインの詳細については、こちらを参照してください。

Oracle Cloud Infrastructure Object Storageではデータはどれくらい安全ですか?

Oracle Object Storageは非常に安全です。Oracle Object Storageは、Oracle Cloud Infrastructure Identity and Access Managementと緊密に統合されています。デフォルトでは、特定のリソースへのアクセスを明示的に許可された認証済みユーザーのみが、Oracle Object Storageに保存されているデータにアクセスできます。データは、HTTPSプロトコルを使用し、SSLエンドポイントを介してOracle Object Storageとの間でアップロードおよびダウンロードされます。デフォルトでは、保存されているデータはすべて暗号化されます。セキュリティをさらに強化するために、オブジェクトをOracle Object Storageに送信する前に暗号化することもできます。これにより、データだけでなく、データの暗号化に使用される暗号化キーも完全に制御できます。

Oracle Cloud Infrastructure Object Storageはオブジェクトレベルのアクセス許可制御をサポートしていますか?

OCI Object Storageは、コンパートメントレベルおよびバケットレベルの権限だけでなく、オブジェクトレベルの権限をサポートしています。オブジェクトレベルの権限により、共有バケット内のデータが権限のないユーザーから保護され、より一層セキュリティが強化されます。

次のようなメリットがあります。

  • 個々のオブジェクトまたはオブジェクト・セットに対する緻密な制御
  • ユーザー・アクセスを特定の操作(取得、作成、削除、名前の変更、コピーなど)に制限する機能

オラクルのIdentity and Access Management(IAM)は、すべてのOCIサービスに一貫性のあるポリシー・セットを提供し、さまざまなレベルで詳細な権限を作成、適用、集中管理できます。

Oracle Cloud Infrastructure Object Storageをビッグ・データのプライマリ・データ・ストレージとして使用できますか?

はい。Oracle Object Storageをビッグ・データのプライマリ・データ・リポジトリとして使用できます。そのため、Oracle Cloud Infrastructureでビッグ・データ・ワークロードを実行できます。オブジェクト・ストレージ用HDFSコネクタは、複数の一般的なビッグ・データ分析エンジンへの接続を提供します。この接続により、分析エンジンはOracle Cloud Infrastrucutre Object Storageに保存されたデータを直接操作できます。HDFSコネクタの詳細については、こちらを参照してください。

どこからでもOracle Cloud Infrastructure Object Storageにアクセスできますか?

インターネット接続にアクセスでき、そのサービスにアクセスするために必要なアクセス許可がある限り、どこからでもOracle Object Storageにアクセスできます。Object Storageのレイテンシは、サービスにアクセスする場所によって異なりますが、長距離からアクセスする場合、それ以外がすべて同じ条件であればレイテンシは長くなります。たとえば、データが米国西部リージョンに保存されている場合、そのデータにネバダからアクセスする際のレイテンシは、同じデータにロンドンやニューヨークからアクセスする場合よりも短くなります。

削除または上書きされたデータを復元できますか?

いいえ、削除および上書きされたデータは復元できません。

ただし、オブジェクトのバージョニングがバケットで有効になっている場合は、オブジェクトが上書きされたとき、またはバージョニング対応の削除操作が実行されたときでもデータが失われることはありません。どちらの場合も、オブジェクトの以前のコンテンツは、オブジェクトの前のバージョンとして保存されます。以前のバージョンはいつでもアクセスまたは復元でき、ライフサイクル・ポリシーまたは対応するバージョンの削除操作によって明示的に削除する必要があります。データを保護するため、削除や上書きを行うときはオブジェクトのバージョニングを有効にする必要があります。

Object Storageのデータをバックアップする必要がありますか?

いいえ、Oracle Cloud Infrastructure Object Storageに保存されているデータをバックアップする必要はありません。Oracle Object Storageは、本質的に耐久性の高いストレージ・プラットフォームです。すべてのオブジェクトは、リージョン内の複数の可用性ドメインにまたがって、複数のストレージ・サーバーに冗長的に保存されます。データの整合性はチェックサムを使用して常に監視され、破損したデータは自己修復されます。Object Storageのネイティブ耐久性により、従来のバックアップは事実上不要になります。

Oracle Cloud Infrastructure Object Storageをオンプレミス・バックアップの宛先として使用できますか?

バックアップが作成されたのがクラウドかオンプレミスのデータ・センターかに関係なく、Oracle Object Storageをバックアップの宛先として使用できます。Oracle Cloud Infrastructure Block Volumesバックアップは、デフォルトでOracle Cloud Infrastructure Object Storageに保存されます。

Swift API統合を介してOracle RMANバックアップをObject Storageに送信することもできます。Oracle RMANの場合、正しいSwift APIエンドポイントを使用する必要があります。Swift APIエンドポイントは、一貫したURL形式https://swiftobjectstorage.<region-identifier>.oraclecloud.comを使用します。たとえば、米国東部(us-ashburn-1)のOCI Object StorageのネイティブAPIエンドポイントは、https://swiftobjectstorage.us-ashburn-1.oraclecloud.comです。

すべてのOCIリージョンのリージョン識別子については、https://docs.cloud.oracle.com/en-us/iaas/Content/General/Concepts/regions.htmをご覧ください。

Oracle Cloud Infrastructure Object Storageバケットを、従来のNFS/SMBマウントポイントとしてベアメタル・コンピュート・インスタンスにマウントできますか?

ベアメタル・コンピュート・インスタンスでNFS/SMBマウント・ポイントとしてバケットを公開することは、サポートされていません。現在、Oracle Object Storageにアクセスするには、ネイティブAPI、SDK、またはHDFSコネクタを使用できます。

Oracle Cloud Infrastructure Object Storageの使用量は、どのように計測されて請求されますか?

Oracle Object Storageは従量制料金サービスとして利用でき、以下の使用量に基づいて課金されます。

  • 1か月あたりのストレージ使用量。ストレージ・バイト時間を測定し、1か月ごとに集計。
  • 受信した1か月あたりのリクエストの総数。削除リクエストは無償です。
  • アウトバウンド・インターネット転送。アウトバウンド転送の最初の10 TBは無償です。

Oracle Cloud Infrastructure Object Storageの価格の詳細については、こちらを参照してください。

Oracle Cloud Infrastructure Object StorageのIPアドレス範囲をオンプレミスのファイアウォールやOracle Cloud Infrastructureセキュリティ・リストに追加したいのですが、IPアドレス範囲はどこで見つかりますか?

Object StorageのIPアドレス範囲については、Object Storage製品に関する資料を参照してください。

Oracle Cloud Infrastructure Object StorageはCORをサポートしていますか?

Oracle Cloud Infrastructure Object Storage APIとSwift APIは、Cross-Origin Resource Sharing(CORS)ヘッダーを返します。ただし、返されるヘッダーは固定されており、編集できません。Amazon S3互換APIはCORSヘッダーを返しません。

暗号化

Oracle Cloud Infrastructure Object Storageはサーバー側の暗号化をサポートしていますか。

はい。Oracle Object Storageはサーバー側の暗号化をサポートしています。Oracle Object Storageに保存されているすべてのデータは自動的に暗号化されます。お客様は、お客様が用意したキーによるサーバー側の暗号化(SSE-C)またはVaultのマスター暗号化キーを使用することも選択できます。

Oracle Cloud Infrastructure Object Storageの暗号化機能を有効にするにはどうすればよいですか?

暗号化はすべてのデータに対して自動的に有効になります。お客様側の対応は必要ありません。

クライアントでデータ復号化を行う必要がありますか?

データを復号化するために必要な操作は特にありません。引き続き、通常のHTTPS GETリクエストを実行してデータを取得できます。

暗号化キーはローテーションされますか?

はい。暗号化キーは、厳格な内部ポリシーに基づいて頻繁にローテーションされます。

クライアント側の暗号化はサポートされていますか?

はい、クライアント側の暗号化はサポートされています。Oracle Object Storageに送信する前にデータを暗号化できます。暗号化されたデータを送信すると、暗号化キーを自社で完全に制御できるようになり、データへの意図しないアクセスや不正なアクセスに対して防御を強化できます。この機能を強化するために、クライアント側の暗号化を行うためのSDKの拡張機能がリリースされています。

オブジェクトのデータとユーザー定義メタデータの両方が暗号化されますか?

はい。オブジェクトのデータと、そのオブジェクトに関連付けられたユーザー定義メタデータの両方が暗号化されます。

データの暗号化にはどの暗号化アルゴリズムが使用されますか?

256ビットのAdvanced Encryption Standard(AES-256)を使用して、すべてのデータと暗号化キーを暗号化します。AES-256は、現在存在する最も強力な暗号化アルゴリズムの1つと考えられています。

マルチパート・アップロード

Oracle Cloud Infrastructure Object Storageに大きなオブジェクトをアップロードする必要があります。アップロード・プロセスを最適化するにはどうすればよいですか?

大きなオブジェクトをOracle Object Storageにアップロードする場合、マルチパート・アップロードを使用することを検討してください。マルチパート・アップロードを使用してデータを並行してアップロードする方が、1回のアップロードで大きなオブジェクトをアップロードするよりも高速で効率的です。何らかの理由でマルチパート・アップロードが失敗した場合、オブジェクト全体のアップロードを再開する代わりに、オブジェクトの失敗したパーツのアップロードを再試行するだけで済みます。サイズが100 MiBを超えるオブジェクトをアップロードする場合は、常にマルチパート・アップロードの使用を検討することをお勧めします。

OCIコマンドライン・インターフェイスとOCIコンソールは、マルチパート・アップロードを自動的に実行します。マルチパート・アップロードの詳細については、https://docs.cloud.oracle.com/en-us/iaas/Content/Object/Tasks/usingmultipartuploads.htmをご覧ください。

マルチパート・アップロードを使用してアップロードするときに、ユーザー定義のメタデータをオブジェクトに関連付けることはできますか?

はい。マルチパート・アップロードを開始するときに、オブジェクトに関連付けるメタデータを指定できます。すべての構成パーツがアップロードされた後、オブジェクトがコミットされると、合成されたオブジェクトにメタデータが関連付けられます。

1回のマルチパート・アップロードで、最大何個のパーツが許可されていますか?

オブジェクトは最大10,000個のパーツに分割できます。各パーツのサイズは10 MiB以上にする必要があります。オブジェクトのパーツの上限サイズは50 GiBです。サイズが100 MiBを超えるオブジェクトをアップロードする場合は、マルチパート・アップロードの使用を検討することをお勧めします。オブジェクトを合計何個に分割したかに関係なく、オブジェクトの合計サイズは10 TiBを超えることはできません。

アップロードが失敗した場合、特定のパーツのアップロードを再試行できますか?

はい。何らかの理由でアップロードが失敗した場合、特定のパーツのアップロードを再試行できます。アップロードを再開するときは、正しいアップロードIDとパーツ番号を指定する必要があります。

すでにアップロードされているパーツを置き換えることはできますか?

はい、パーツがアップロードされた後、オブジェクトがまだコミットされていない場合にのみ、パーツを置き換えることができます。マルチパート・アップロードでオブジェクトのパーツを置き換えるには、正しいアップロードIDとパーツ番号を使用してアップロードを再開してください。

オブジェクトのアップロードを一時停止して再開できますか?

はい、オブジェクトのアップロードは一時停止して再開できます。特定の構成パーツに対してマルチパート・アップロードが開始された場合、Oracle Object Storageがそのパーツのアップロードが完了するまで待機する必要があります。Oracle Object Storageは、進行中のパーツのアップロードの一時停止と再開はサポートしていません。

オブジェクトが構成パーツから合成されてコミットされた後で、オブジェクトのパーツに対してGETやLISTを実行することはできますか?

いいえ、マルチパート・アップロードが完了してオブジェクトがコミットされると、オブジェクトのアップロードされたパーツに対して「GET」や「LIST」を実行することはできません。オブジェクトのパーツを取得するには、マルチパート・アップロード機能とは異なる、Range GETリクエストを使用する必要があります。

マルチパート・アップロードがコミットされた後、オブジェクトのアップロードに使用されるオブジェクトのパーツサイズを決定できますか?

いいえ。マルチパーツ・アップロードがコミットされ、パーツがオブジェクトに組み立てられた後で、使用パーツサイズを決定することはできません。

オブジェクトを合成する前にオブジェクトのパーツを並べ替えることはできますか?

いいえ、オブジェクトのパーツを並べ替えることはできません。パーツ番号は、パーツがオブジェクトにコミットされる順序を決定します。

オブジェクトのパーツを使用して別のオブジェクトを合成できますか?

いいえ、オブジェクトのパーツを別のオブジェクトを合成するために再利用することはできません。オブジェクトは、共通のアップロードIDを持つオブジェクト・パーツのみで合成できます。

アップロードされた複数のパーツのパーツ番号が同じ場合、どのような動作になりますか?

同じパーツ番号を使用して複数のオブジェクト・パーツがアップロードされた場合、最後にアップロードされたパーツが優先されてオブジェクトの合成に使用されます。

オブジェクトがコミットされない場合、オブジェクト・パーツはどうなりますか?

Oracle Object Storageでは、開始したアップロードが完了しなかった場合、お客様がマルチパート・アップロードを明示的に中止するまでインベントリ内にパーツが保持されます。Oracle Object Storageでは、オブジェクトがコミットされたかどうかに関係なく、オブジェクト・パーツのストレージに対して課金されます。お客様は、アクティブなアップロードを一覧表示して、どのアップロードを中止するかを決定できます。アクティブなアップロードを削除すると、アップロード済みのすべてのパーツが削除され、ストレージスペースが解放されます。また、オブジェクトのライフサイクル管理ルールを設定し、コミットされていないマルチパート・アップロードや失敗したマルチパート・アップロードを自動的に削除することもできます。

マルチパート・アップロードを中止し、すでにアップロードされているパーツを削除できますか?

はい。プロセスを中止することで、進行中のマルチパート・アップロードを終了できます。マルチパート・アップロードを中止すると、特定のアップロードIDに関連付けられているすべてのオブジェクト・パーツが削除されます。

アップロードがコミットされた後でオブジェクトにパーツを追加できますか?

いいえ、アップロードのコミット後にオブジェクトにパーツを追加することはできません。

マルチパート・アップロードでパーツをアップロードするときに、パーツ番号をスキップできますか?

はい、パーツをアップロードするときにパーツ番号をスキップできます。パーツ番号は連続している必要はありません。

アップロードをコミットする前に、手動でパーツを削除してオブジェクトのアップロードから除外できますか?

いいえ、アクティブなマルチパート・アップロードに関連付けられているアップロード済みのパーツを指定して削除することはできません。ただし、オブジェクトをコミットするときに、アップロード済みのパーツを除外することができます。除外したパーツは自動的に削除されます。

マルチパート・アップロード・プロセスを使用してアップロードされたオブジェクトの整合性を確認するにはどうすればよいですか?

Oracle Object Storageは、オブジェクト・パーツのアップロードを通常のオブジェクトのアップロードと同様に扱います。オブジェクトが意図せず破損していないことを確認するには、オブジェクト・パーツのMD5ハッシュを送信するか、リクエストへの応答で返されるMD5ハッシュをキャプチャします。アップロードがコミットされると、オブジェクトを構成する個々のパーツのMD5ハッシュのMD5ハッシュも受信します。このMD5ハッシュを使用して、オブジェクト全体の整合性を検証できます。

どのOracle Cloud Infrastructure Object Storageクライアントがマルチパート・アップロードをサポートしていますか?

マルチパート・アップロード機能は、Oracle Object StorageのネイティブAPI、Oracle Cloud Infrastructure(OCI)ソフトウェア開発キット(SDK)、OCIコマンドライン・インターフェイス(CLI)、およびOCIコンソールでサポートされています。

パブリックバケット

パブリックバケットとは何ですか?

パブリックバケットとは、Object Storageに保存されているデータを自由に共有できるバケットタイプです。パブリック・バケット名とそれに関連付けられたネームスペースを知っていれば、誰でも匿名でデータを読み取ったり、オブジェクトを一覧表示したり、オブジェクトのメタデータを取得したりできます。パブリック・バケットにデータを保存する匿名PUT操作はサポートされていません。バケットはデフォルトではプライベートです。バケットをパブリックにするには、バケットのプロパティを明示的に設定する必要があります。

パブリック・バケットは匿名データ・アクセスをサポートしているため、パブリック・バケットを作成するときは注意して慎重に行ってください。最大限慎重に扱い、絶対に必要な場合以外はパブリック・バケットを使用しないことをお勧めします。パブリック・バケットはデータを広く共有するための非常に効果的な方法ですが、セキュリティ面のデメリットがあります。パブリック・バケットに保存されたデータに誰でも匿名でアクセスできるため、保存されたデータに誰がアクセスしているかを確認したり制御したりすることができません。多くの場合、パブリック・バケットの代わりにOracle Cloud Infrastructure Identity and Access Managementルールや事前認証済みリクエストを利用できます。

パブリック・バケットを作成するにはどうすればよいですか?

API、SDK、CLI、およびOracle Cloud Infrastructureコンソールを使用して、パブリック・バケットを作成できます。パブリック・バケットは、他の通常のバケットと同様に作成できますが、属性「publicAccessType」の値を「ObjectRead」に設定する必要がある点が異なります。デフォルトでは、この変数の値は「NoPublicAccess」に設定されています。この属性の値は、バケットを作成するとき、またはバケット作成後にバケットを更新して設定できます。

パブリック・バケットを作成するには、どのOracle Identity and Access Management(IAM)権限が必要ですか?

パブリック・バケットを作成するには、IAM権限BUCKET_CREATEとBUCKET_UPDATEが付与されている必要があります。

パブリック・バケットをプライベートにしたり、プライベート・バケットをパブリックにしたりできますか?

はい、バケット属性「publicAccessType」を更新することにより、パブリック・バケットとプライベート・バケットを切り替えることができます。

プライベート・バケット

プライベート・バケットとは何ですか?

Object Storageバケットを作成すると、デフォルトでプライベート・バケットとして作成されます。プライベート・バケットに保存されているデータを他のユーザー・グループと共有するには、対象となるグループの適切なIAM権限を定義する必要があります。

特定の仮想クラウド・ネットワークまたはサブネットからしかObject Storageバケットにアクセスできないように制限できますか?

はい、リクエストが特定のVCNまたはそのVCN内のCIDRブロックから発信された場合にのみ許可されるように、バケットのIAMポリシーを定義できます。ただし、Oracle Cloud Infrastructure Service Gatewayを使用してObject Storageにアクセスし、そのようなIAMポリシーを適用する必要があります。インターネット・ゲートウェイを介してパブリックIPアドレスを持つインスタンスから、またはオンプレミス・ネットワークで実行されているインスタンスからOracle Object Storageにアクセスしようとすると、アクセスがブロックされます。

特定のObject Storageバケットにオブジェクトを書き込むことを特定のVCNのリソースのみに許可する方法については、サンプルIAMポリシーに関する資料を参照してください。詳細については、Service Gateway製品に関する資料を参照してください。

事前認証済みリクエスト

事前認証済みリクエスト(PAR)とは何ですか?

事前認証済みリクエスト(PARs)は、Object Storageに保存されているデータをサード・パーティと共有できる仕組みを提供します。PARを使用すると、API、SDK、CLIなどのプログラム・インターフェイスを使用してObject Storageのデータにアクセスする必要がなくなります。PARは、バケットとオブジェクトの両方で定義できます。PARでcURLやwgetなどのツールを使用すると、Object Storageに保存されているデータにアクセスできます。また、PARを使用して任意の相手からデータを受信できます。PARを介して受信したデータは、PAR作成時に指定したObject Storageバケットに保存されます。

PARを作成すると、一意のPAR URLが生成されます。このURLにアクセスできるすべてのユーザーが、事前認証済みリクエストで指定されたリソースにアクセスできます。PARには有効期限があり、有効な期間が決まっています。PARの有効期限が切れると、PARは使用できなくなります。PARを作成および管理するには、PAR_MANAGE権限が必要です。PARを作成する場合、対象とするObject Storageリソースに対する読み取り権限、書き込み権限、またはその両方が必要です。PARの作成後、Object StorageバケットごとにPARを一覧表示して必要に応じて削除することで、有効期限が切れる前にPARを無効にできます。

事前認証済みリクエストはいつ使用すればよいですか?

サード・パーティとの間でデータの共有や受け渡しをする必要がある場合、PARを使用できます。PARは、サード・パーティがAPI、SDK、CLIなどの通常のObject Storageインターフェイスを使用してデータにアクセスできないか、これらのインターフェイスを使用したくない場合に役立ちます。その場合、cURLのような一般的なHTTPツールを使用できます。

PARを作成および共有するときは注意してください。PARを作成すると、PAR URLにアクセスできるすべてのユーザーが、指定されたObject Storageリソースにアクセスできます。PARの使用が許可されたユーザーによるものか、許可されていないユーザーによるものかを判断する明確な方法はありません。

事前認証済みリクエストを作成するにはどうすればよいですか?

PARを作成するには、Oracle Cloud Infrastructureサービス・コンソールを使用するか、Oracle Cloud InfrastructureのSDKやCLIを使用します。PARを作成するときは、Object Storageのリソース(オブジェクトまたはバケット)、エンドユーザーが実行できるアクション、およびPARの有効期間を指定する必要があります。

事前認証済みリクエストを定義できるObject Storageリソースはどれですか?

バケットとオブジェクトにPARを定義できます。バケットに定義されたPARはデータの受信のみが可能で、オブジェクトに定義されたPARはデータの送信と受信の両方に使用できます。

事前認証済みリクエストを作成および管理するには、どのOracle Identity and Access Management権限が必要ですか?

PARを作成および管理するには、PAR_MANAGE権限が必要です。また、アクセス許可を持つリソースにのみPARを作成できます。たとえば、バケットに対してPUT PARを作成する場合、その特定のバケットにデータを書き込む権限が必要です。オブジェクトに対してGET PARを作成する場合、共有する特定のオブジェクトを読み取るための権限が必要です。PARが作成および共有された後にObject Storageの権限が変更されると、PARに関連付けられた有効期限に関係なく、PARは無効になります。

バケットまたはオブジェクトごとにいくつの事前認証済みリクエストを作成できますか?

バケットまたはオブジェクトに作成できるPARの数に制限はありません。

PAR URLを生成した後でPARを管理できますか?

はい、作成したPARは簡単に管理できます。バケットおよびオブジェクトに対して作成されたPARは一覧表示できます。また、PARがアクティブか期限切れかに関係なく、PARを削除することもできます。PARが削除されると、PAR URLは即座に機能しなくなります。また、PAR URLは、PARを作成したユーザーの権限が変更され、指定されたターゲット・リソースへのアクセス権がなくなった場合にも機能しなくなります。

事前認証済みリクエストを更新できますか?

いいえ、PARの更新操作はサポートされていません。PARの有効期限を延長したり、PARで定義された操作を変更したりすることはできません。PARに変更を加える場合は、新しいPARを作成する必要があります。

PARを作成したユーザーのパスワードが変更されると、作成済みの事前認証済みリクエストはどうなりますか?

何も起こりません。事前認証済みリクエストの利点の1つは、Oracle Cloud Infrastructureのユーザー・アカウントの資格情報から分離されていることです。パスワードを変更しても、PARの有効性に影響はありません。

事前認証済みリクエストはどれくらい安全ですか?

全体として、事前認証済みリクエストは、データを共有する安全な手段です。事前認証済みリクエストは、そのようなリクエストを作成する権限を持つユーザーのみが作成できます。また、リクエストを作成するユーザーは、リクエストで許可するアクションを実行できる必要があります。

たとえば、オブジェクトをアップロードするための事前認証済みリクエストを作成するユーザーは、ターゲット・コンパートメントでOBJECT_CREATEとPAR_CREATEの両方の権限が必要です。リクエストを作成したユーザーがリクエストの作成後にOBJECT_CREATE権限を失うと、そのリクエストは機能しなくなります。

PAR URLを共有するときは注意してください。目的のユーザーのみがアクセスできるようにする必要があります。PAR URLにアクセスできるすべてのユーザーには、PARで指定されたObject Storageリソースへのアクセスが自動的に許可されます。PARの使用が許可されたユーザーによるものか、許可されていないユーザーによるものかを判断する明確な方法はありません。

パブリック・バケットに対してPARを作成できますか?

はい、パブリック・バケットに対してPARを作成できます。

最初にプライベートであったバケットにPARを作成した後で、バケットが更新されてパブリック・バケットになった場合、当初の想定どおりに動作しますか?

はい、バケットがプライベートからパブリックに移行した場合、またはその逆の場合でも、PARは引き続き機能します。

有効期限が切れる前にPARを廃止できますか?

はい。PARを削除することにより、有効期限前にPARを廃止できます。PARを削除すると、PAR URLは即座に機能しなくなります。

有効期限のないPARを作成するにはどうすればよいですか?

PARの有効期限を将来の非常に遠い日時に設定することで、事実上期限切れにならないPARを作成できます。

PAR操作を追跡するにはどうすればよいですか?

PARの作成および管理操作は、すべて監査サービスのログに記録されます。監査ログを表示すると、実行したすべてのPAR管理操作を可視化できます。Object Storageのサービスログ(オプション)を有効にすることで、PARへのアクセス操作をログに記録できます。

オブジェクトのライフサイクル管理

オブジェクトのライフサイクル管理とは何ですか?

オブジェクトのライフサイクル管理を使用すると、自動化されたアーカイブと削除によりObject Storageデータのライフサイクルを管理することで、ストレージ・コストを削減して時間を節約できます。ライフサイクル管理は、バケットのルール・セット(ライフサイクル・ポリシー)を作成することで運用します。このルールでは、オブジェクトを使用期間に応じてアーカイブまたは削除します。オブジェクト名のプレフィックス一致条件を使用すれば、個々のライフサイクル・ポリシー・ルールの範囲を狭めることができます。これにより、バケット内のさまざまなオブジェクトのニーズに合わせてカスタマイズしたライフサイクル・ポリシーを作成できます。たとえば、名前プレフィックス「ABC」を含むオブジェクトを、作成されてから30日後に標準Object StorageからArchive Storageに自動的に移行し、作成されてから120日後に削除するライフサイクル・ポリシーを作成できます。後でアーカイブ・データの保持期間を延長するには、他のライフサイクル・ポリシー・ルールは変更せずに、対象となるアーカイブ・オブジェクトを保持する期間を決定する特定のライフサイクル・ポリシー・ルールを編集できます。

バケットにライフサイクル・ポリシーを作成するにはどうすればよいですか?

Oracle Cloud Infrastructureサービス・コンソール、CLI、SDK、またはAPIを使用して、バケットにライフサイクル・ポリシーを定義できます。バケットごとに1つのライフサイクル・ポリシーを定義でき、各ライフサイクル・ポリシーには最大1,000個のルールを含めることができます。各ルールは、バケット内のオブジェクトに対して実行できるアクション(アーカイブまたは削除)に対応しています。バケット内のすべてのオブジェクトに適用されるルール、または特定の名前プレフィックス・パターンを使用するオブジェクトのサブセットのみに適用されるルールを作成できます。

Archive Storageバケットにライフサイクル・ポリシーを定義できますか?

はい。Archive Storageバケットにライフサイクル・ポリシーを作成できます。ただし、「削除」ルールのみがサポートされています。ライフサイクル・ポリシーを使用して、アーカイブされたオブジェクトをArchive Storageから標準のObject Storageに移行することはできません。ライフサイクル・ポリシー・ルールを作成する場合、Archive Storageには、90日間の最小保持要件があることに注意してください。ライフサイクル・ポリシーで、保持要件を満たしていないアーカイブ・データを削除した場合、削除ペナルティが発生する可能性があります。削除ペナルティは、データを90日間保存するコストを日割り計算したものです。

ライフサイクル・ポリシーに定義したルールを無効にできますか?

はい。ライフサイクル・ポリシーに定義したルールを無効または再度有効にすることができます。

ライフサイクル・ポリシーを作成した後に、ルールを追加できますか?

はい。既存のライフサイクル・ポリシーにルールを追加できます。CLI、SDK、またはAPIを使用して個々のライフサイクル・ポリシー・ルールを追加、削除、または変更した場合は、更新情報にライフサイクル・ポリシー全体(変更されていないルールを含む)の編集バージョンを提供する必要があります。詳細については、資料を参照してください。

ライフサイクル・ポリシーを作成した後に、ルールを追加できますか?

はい。ライフサイクル・ポリシーは、ポリシーが作成される前にObject Storageバケットにアップロードされたデータに適用されます。たとえば、30日以上経過したすべてのオブジェクトをアーカイブするライフサイクル・ポリシー・ルールが実装され、40日経過したオブジェクトがバケットに含まれている場合、それらのオブジェクトは、サービスによって、すぐにアーカイブの対象として認識され、アーカイブ・プロセスが開始されます。

競合するライフサイクル・ルールの実行は、どのように評価されますか?

ルールは、実行時に競合がないか評価されます。オブジェクトを削除するルールは、同じオブジェクトをアーカイブするルールよりも常に優先されます。

クロスリージョン・コピー

クロスリージョン・コピーとは何ですか?

クロスリージョン・コピーを使用すると、オブジェクトを同じリージョン内の他のバケット、他のリージョン内のバケット、同じリージョン内または他のリージョン内の他のテナントのバケットに非同期にコピーできます。オブジェクトをコピーするとき、オブジェクト名を保持または変更することができます。コピー先バケットにコピーされたオブジェクトは、一意のETag値とMD5ハッシュを持つ新しいオブジェクトと見なされます。

クロスリージョン・コピーはどのように機能しますか?

Oracle Cloud Infrastructureサービス・コンソール、CLI、SDK、またはObject Storage APIを使用して、リージョン間でオブジェクトをコピーできます。オブジェクトをコピーするには、コピー元オブジェクト名、コピー先ネームスペース、コピー先リージョン、コピー先バケットを指定する必要があります。コピーは非同期です。つまり、キューを使用してコピー・リクエストを管理し、リソースが使用可能になったときにObject Storageがコピー・リクエストを処理します。コピー・リクエストを送信すると、ワークリクエストIDが生成されます。ワークリクエストをクエリして、オブジェクトのコピー・ステータスを監視できます。ワークリクエストは、API、CLI、またはSDKを使用してキャンセルすることもできます。ワークリクエストがキャンセルされると、コピー操作は中止されます。

任意のOracle Cloud Infrastructureリージョンのバケットにオブジェクトをコピーできますか?

はい。2つの利用可能なOracle Cloud Infrastructureリージョン間でオブジェクトをコピーできます。ただし、コピーを開始するユーザーには、コピー元リージョンとコピー先リージョンの両方でデータを読み書きするためのIAM権限が必要です。

コピー操作では、コピー元オブジェクトに定義されたカスタム・メタデータが保持されますか?

はい。オブジェクトをコピーすると、デフォルトでコピー元オブジェクトのメタデータは保持されます。ただし、API、CLI、またはSDKを使用して、コピー操作の一部としてオブジェクトのメタデータをオプションで変更または削除できます。

標準のObject StorageバケットからArchive Storageバケットへ、またはその逆にオブジェクトをコピーできますか?

はい。標準のObject StorageバケットとArchive Storageバケット間でオブジェクトをコピーできます。ただし、Archive Storageバケットからオブジェクトをコピーする前に、オブジェクトを復元する必要があります。

同じリージョン内のバケット間でオブジェクトをコピーできますか?

はい。同じリージョン内のバケット間でオブジェクトをコピーすることができます。

オブジェクトをコピーしたとき、コピー元オブジェクトとコピー先オブジェクトのMD5ハッシュは一致しますか?

コピー先オブジェクトのMD5ハッシュは、コピー元オブジェクトのMD5ハッシュと一致しない場合があります。これは、Object Storageサービスが使用するコピー先オブジェクトのチャンク・サイズが、コピー元オブジェクトを最初にアップロードするために使用したチャンク・サイズとは異なる場合があるためです。

クロスリージョン・コピー機能を使用して、複数のオブジェクトを一度にコピーできますか?

いいえ。クロスリージョン・コピー機能では、一度に1つのオブジェクトのみをコピーできます。ただし、CLIを使用して、コピー元からコピー先バケットへの一括コピー操作をスクリプト化できます。

Amazon S3互換API

Amazon S3互換APIとは何ですか?

Amazon S3互換APIは、Amazon S3などの他のストレージ・サービスと相互運用する製品やサービスを構築できる一連のObject Storage APIです。

Amazon S3互換APIのメリットは何ですか?

Amazon S3 APIには、次のメリットがあります。

  • 単一のベンダー・ストレージ・サービスにロックインされない
  • Oracle Object StorageでAmazon S3 APIを活用するお気に入りのクライアント、アプリケーション、またはサービスを引き続き使用できる

利用可能なすべてのAmazon S3 APIをサポートしていますか?

いいえ。利用可能なAmazon S3 APIのすべてをサポートしているわけではありません。現在サポートされているAmazon APIの完全なリストについては、Amazon S3互換APIの資料を参照してください。

Oracle Object Storageは、引き続き複数のAPIをサポートしますか、または単一のAPIに標準化しますか?

Oracle Object Storageは、ネイティブのObject Storage APIとAmazon S3互換APIの両方を引き続きサポートします。Amazon S3互換APIは、他のクラウド・ストレージ・プラットフォームとの相互運用性を促進するためのものです。利用可能なすべてのOracle Object Storage機能を使用する場合は、ネイティブのObject Storage APIを使用することをお勧めします。

どのようなときにAmazon S3互換APIを使用すればよいですか?

Amazon S3のようなAPIを活用しながら、特定のクライアントまたはアプリケーションを使用してObject Storageサービスにアクセスする場合は、Amazon S3互換APIの使用を検討することをお勧めします。製品またはサービスをAmazon S3のような複数のオブジェクト・ストレージ・ターゲットと相互運用する必要がある場合にも、Amazon S3互換APIの使用を検討することをお勧めします。

ネイティブのObject Storage APIとAmazon S3互換API間に機能パリティはありますか?

いいえ。2つのAPIセット間で機能パリティは保証されません。すべての新しいObject Storage機能は、最初にネイティブAPIでサポートされ、その後、状況に応じてAmazon S3互換APIでサポートされます。

Amazon S3互換APIを使用してデータを書き込んだ場合、Object StorageのネイティブAPIを使用してデータを読み取ることができますか?また、その逆の場合も、読み取りができますか?

はい。2つのAPIセットには、データの読み取りと書き込みの互換性があります。Amazon S3互換APIを使用してOracle Object Storageにデータを書き込んだ場合、ネイティブのObject Storage APIを使用してデータを読み取ることができます。逆の場合も、書き込んだデータを読み取ることができます。

Amazon S3互換APIには、Oracle Cloud Infrastructureに固有の概念となる、コンパートメントの概念がどのように組み込まれていますか?

Amazon S3互換APIを使用して作成したすべてのバケットは、Oracle Cloud Infrastructureの「ルート」コンパートメントに作成されます。ただし、ルート・コンパートメントにバケットを作成できない場合は、コンソールまたはコマンド・ライン・インターフェイス(CLI)を使用して、選択したコンパートメントにバケットを作成できます。その後、Amazon S3互換APIを使用してバケットを操作できます。

Amazon S3互換APIでは認証はどのように機能しますか?

このAPIを使用するには、Oracle Cloud Infrastructureコンソールを使用してAmazon S3互換アクセス・キー/秘密キーのペアを作成する必要があります。このアクセス・キー/秘密キーの組み合わせは、選択したクライアントで使用できます。Oracle Cloud Infrastructureは、署名バージョン4の署名メカニズムのみをサポートしていることに注意してください。Oracle Identity and Access Managementユーザーごとに、2つのアクティブなAPIキー/パスワードのペアを同時に設定することができます。

Amazon S3互換APIは、仮想ホスト・スタイルとパス・スタイルの両方のURLをサポートしていますか?

いいえ。Amazon S3互換APIは、パス・スタイルURLのみをサポートしています。

ネイティブAPIまたはOracle Cloud Infrastructureコンソールを使用して作成したバケットを再利用して、Amazon S3互換APIを使用できますか?

はい。ネイティブのObject Storage APIまたはコンソールを使用して作成されたバケットを再利用して、Amazon S3互換APIを使用できます。

Oracle Object Storageサービスは、Amazon S3互換APIでサポートされていないRESTヘッダーをどのように処理しますか?

Amazon S3 API呼び出しを通じて、サポートされていないRESTヘッダーまたはヘッダー値を参照した場合、それらのヘッダーまたは値は、リクエストの処理中に無視されます。

たとえば、PUT Object Storage APIを呼び出すときにヘッダーx-amz-server-side-encryptionを指定した場合、Oracle Object Storageはデフォルトですべてのオブジェクトを暗号化するため、このヘッダーは無視されます。

Amazon S3互換APIで、暗号化はどのようにサポートされていますか?

Oracle Object Storageのすべてのデータはデフォルトで暗号化されます。API呼び出しを処理するとき、暗号化ヘッダーは無視されます。

Amazon S3互換APIでは、どのクライアントが正式にサポートされていますか?

当社では、AWS SDK for Javaを使用して、Amazon S3互換APIをテストしました。ただし、Amazon S3などのAPIと連携する他のクライアントは、サポートされているAPIのみを参照している限り、Oracle Object Storageで動作するはずです。現在サポートされているAmazon APIの完全なリストについては、Amazon S3互換APIの資料を参照してください。

Amazon S3互換APIを使用して、オブジェクト・メタデータを割り当てることはできますか?

はい。オブジェクト・メタデータは、オブジェクトがアップロードされるときに割り当てることができます。

オブジェクト・メタデータ値は、Amazon S3互換APIによって検証されますか?

いいえ。ただし、末尾に空白があるメタデータ値では、末尾の空白が削除されます。

レプリケーション

レプリケーションとは何ですか?

レプリケーションは、Object Storageバケット内のオブジェクトをテナンシ内の別のバケットに非同期に複製するObject Storageの機能です。レプリケーション先バケットは、リモートOCIリージョンまたはレプリケーション元バケットと同じリージョンに存在できます。レプリケーション先バケット内に複製されたオブジェクトは、レプリケーション元バケット内のオブジェクトと同じ名前、メタデータ、eTag、MD5、およびバージョンIDを持つ、同一のコピーです。

レプリケーションは、ほぼリアルタイムで実行されますか?

はい。Object Storageは、レプリケーション元バケットに変更がないか常に監視しています。変更を見つけると、レプリケーション先バケットへのレプリケーションをすぐに開始します。

レプリケーションでは暗号化を使用しますか?

はい。Object Storageは、オブジェクトが保存または送信されるときに必ずオブジェクトを暗号化します。レプリケーションでは、暗号化されたレプリケーション元オブジェクトを読み取り、暗号化されたネットワークを介して送信します。

レプリケーションには、IAMポリシーが必要ですか?

はい。必要なIAMポリシーが作成されていないと、レプリケーションは正しく機能しません。詳しい情報については、レプリケーションのドキュメントを参照してください。

レプリケーション先を制限することはできますか。

はい、できます。レプリケーションにより、オブジェクトを「制限のない」OCIリージョンにグローバルに複製できます。レプリケーションを特定のレプリケーション元リージョンとレプリケーション先リージョンに制限することもできます。

ドキュメントで説明されているように、レプリケーション元リージョンのObject Storageサービスには、使用するレプリケーション元バケットとレプリケーション先バケットへの明示的なアクセス権を付与する必要があります。OCI Identity and Access Management(IAM)の既存機能を使用すると、Object Storageサービスに付与される権限を特定のレプリケーション元リージョンとレプリケーション先リージョンに制限できます。また、オプションで、特定のレプリケーション元バケットとレプリケーション先バケットに制限できます。Object Storageのレプリケーションを特定のレプリケーション元リージョンとレプリケーション先リージョンに制限するには、次の例のように、us-phoenix-1の任意のレプリケーション元バケットとus-ashburn-1の任意のレプリケーション先バケットを許可するポリシーを構成します。IAMポリシーでリージョンを参照する場合は、3文字のリージョン・キーを使用する必要があります。

allow service objectstorage-us-phoenix-1 to manage object-family in tenancy where any {request.region='phx', request.region='iad'}

Object Storageのレプリケーションをus-phoenix-1の「source_bucket」というレプリケーション元バケットとus-ashburn-1の「destination_bucket」というレプリケーション先バケットに制限するには、次のようなIAMポリシーを作成します。

allow service objectstorage-us-phoenix-1 to manage object-family in tenancy where any {all {request.region='phx', target.bucket.name='source_bucket'}, all {request.region='iad', target.bucket.name='destination_bucket'}}