すべてのプロダクト
Search
ドキュメントセンター

Object Storage Service:エンドポイント

最終更新日:Feb 19, 2025

Object Storage Service (OSS) は、RESTful API 操作を使用してサービスを提供し、各バケットにデフォルトのエンドポイントを割り当てます。

フォーマット

GetService (ListBuckets) および DescribeRegions リクエストを除き、OSS ドメイン名経由の OSS へのすべてのリクエストには、ドメイン名にバケット情報が含まれています。

バケットへのアクセスに使用するドメイン名は、BucketName.Endpoint 形式です。ここで、BucketName はバケットの名前、Endpoint はバケットが配置されているリージョンのエンドポイントです。

OSS エンドポイントには、内部エンドポイント、パブリックエンドポイント、およびアクセラレーションエンドポイントが含まれます。たとえば、中国 (杭州) リージョンにあるバケットにアクセスするには、次のエンドポイントを使用します。

パブリックエンドポイント

追加の構成なしでパブリックエンドポイントを使用できます。

oss-cn-hangzhou.aliyuncs.com

内部エンドポイント

追加の構成なしで内部エンドポイントを使用できます。

oss-cn-hangzhou-internal.aliyuncs.com

アクセラレーションエンドポイント

アクセラレーションエンドポイントには、グローバルアクセラレーションエンドポイントと中国本土以外のリージョンのアクセラレーションエンドポイントが含まれます。

  • グローバルアクセラレーションエンドポイント

    oss-accelerate.aliyuncs.com
  • 中国本土以外のリージョンのアクセラレーションエンドポイント

    oss-accelerate-overseas.aliyuncs.com

パブリックネットワーク経由で OSS にアクセスする

パブリックネットワークはインターネットです。OSS を使用すると、インターネット経由で OSS にデータを無料でアップロードまたは書き込むことができます。OSS からデータをダウンロードまたは読み取る場合は課金されます。

説明

OSS の料金と請求ルールについては、「OSS の価格」および「請求の概要」をご参照ください。

インターネット経由で OSS にアクセスするには、次のいずれかの方法を使用できます。

方法 1: URL を使用して OSS オブジェクトにアクセスする

URL を使用して OSS オブジェクトにアクセスする場合、オブジェクトに対して構成されているアクセス制御リスト (ACL) によって、オブジェクトの読み取りと書き込みが可能かどうかが決まります。

オブジェクト ACL

公開読み取りまたは公開読み書き

非公開

URL 形式

<スキーマ>://<バケット>.<パブリックエンドポイント>/<オブジェクト>

<スキーマ>://<バケット>.<パブリックエンドポイント>/<オブジェクト>?署名情報

パラメーターの説明

  • スキーマ: HTTP または HTTPS。

  • バケット: OSS バケットの名前。

  • パブリックエンドポイント: インターネット経由でバケットが配置されているリージョンにアクセスするために使用されるエンドポイント。さまざまなリージョンにアクセスするために使用されるエンドポイントについては、「リージョンとエンドポイント」をご参照ください。

  • オブジェクト: オブジェクトのパス。

プライベートオブジェクトにアクセスするために使用される URL には、公開読み取りおよび公開読み書きオブジェクトの URL のすべてのパラメーターに加えて、署名情報が含まれています。URL の署名情報には、Expires、AccessKey ID、および Signature パラメーターが含まれます。Expires パラメーターは、URL の有効期限を指定します。

オブジェクト URL に署名を追加する方法については、「URL に署名を追加する」をご参照ください。

中国 (杭州) リージョンに examplebucket という名前のバケットを作成します。バケットには example.txt オブジェクトが含まれています。オブジェクトは exampledir ディレクトリにあり、匿名アクセスを許可します。この場合、オブジェクト URL は https://examplebucket.oss-cn-hangzhou.aliyuncs.com/exampledir/example.txt です。

中国 (杭州) リージョンに examplebucket という名前のバケットを作成します。バケットには example.txt オブジェクトが含まれています。オブジェクトは exampledir ディレクトリにあります。オブジェクトの ACL は非公開に設定されています。この場合、オブジェクト URL は https://examplebucket.oss-cn-hangzhou.aliyuncs.com/exampledir/example.txt?OSSAccessKeyId=nz2p***********&Expires=1141889120&Signature=vjbyPxybdZaNmGa%2ByT272Y******** です。

方法 2: OSS SDK を使用してパブリックエンドポイントを構成する

OSS SDK は、各操作に指定したエンドポイントを連結します。操作を実行するバケットが配置されているリージョンに基づいてエンドポイントを指定する必要があります。

次のサンプルコードは、OSS SDK for Java を使用してエンドポイントを指定する方法の例を示しています。この例では、中国 (杭州) リージョンにあるバケットを管理するために OSSClient が作成されるときにエンドポイントが指定されます。

  import com.aliyun.oss.common.auth.*;

  EnvironmentVariableCredentialsProvider credentialsProvider = CredentialsProviderFactory.newEnvironmentVariableCredentialsProvider();
  String endpoint = "oss-cn-hangzhou.aliyuncs.com";
  OSS ossClient = new OSSClientBuilder().build(endpoint, credentialsProvider);

内部ネットワーク経由で OSS にアクセスする

同じリージョン内にある Alibaba Cloud サービス間で内部ネットワーク経由で通信するには、内部エンドポイントを使用できます。たとえば、OSS バケットと ECS インスタンスが同じリージョン内にある場合、内部ネットワーク経由で ECS インスタンスから OSS バケットにアクセスできます。内部ネットワーク経由で生成されたトラフィックについては課金されません。ただし、送信したリクエストについては課金されます。

説明

OSS の料金については、「OSS の価格」および「請求の概要」をご参照ください。

内部ネットワーク経由で OSS にアクセスするには、次のいずれかの方法を使用できます。

方法 1: URL を使用して OSS オブジェクトにアクセスする

URL を使用して OSS オブジェクトにアクセスする場合、オブジェクトに対して構成されている ACL によって、オブジェクトの読み取りと書き込みが可能かどうかが決まります。

オブジェクト ACL

公開読み取りまたは公開読み書き

非公開

URL 形式

<スキーマ>://<バケット>.<内部エンドポイント>/<オブジェクト>

<スキーマ>://<バケット>.<内部エンドポイント>/<オブジェクト>?署名情報

パラメーターの説明

  • スキーマ: HTTP または HTTPS。

  • バケット: OSS バケットの名前。

  • 内部エンドポイント: ECS インスタンスが内部ネットワーク経由で同じリージョンにあるバケットにアクセスするために使用するエンドポイント。各リージョンのエンドポイントについては、「リージョンとエンドポイント」をご参照ください。

  • オブジェクト: オブジェクトのパス。

プライベートオブジェクトにアクセスするために使用される URL には、公開読み取りおよび公開読み書きオブジェクトの URL のすべてのパラメーターに加えて、署名情報が含まれています。URL の署名情報には、Expires、AccessKey ID、および Signature パラメーターが含まれます。Expires パラメーターは、URL の有効期限を指定します。

オブジェクト URL に署名を追加する方法については、「URL に署名を追加する」をご参照ください。

中国 (杭州) リージョンに examplebucket という名前のバケットを作成します。バケットには example.txt オブジェクトが含まれています。オブジェクトは exampledir ディレクトリにあり、匿名アクセスを許可します。オブジェクト URL は https://examplebucket.oss-cn-hangzhou-internal.aliyuncs.com/exampledir/example.txt です。

中国 (杭州) リージョンに examplebucket という名前のバケットを作成します。バケットには example.txt オブジェクトが含まれています。オブジェクトは exampledir ディレクトリにあります。オブジェクトの ACL は非公開に設定されています。この場合、オブジェクト URL は https://examplebucket.oss-cn-hangzhou-internal.aliyuncs.com/exampledir/example.txt?OSSAccessKeyId=nz2p***********&Expires=1141889120&Signature=vjbyPxybdZaNmGa%2ByT272Y******** です。

方法 2: OSS SDK を使用して内部エンドポイントを構成し、内部ネットワーク経由で ECS インスタンスから OSS にアクセスする

次のサンプルコードは、OSS SDK for Java を使用して内部エンドポイントを指定する方法の例を示しています。この例では、エンドポイントは、中国 (杭州) リージョンにあるバケットを管理するために、中国 (杭州) リージョンの内部エンドポイントに設定されています。

  import com.aliyun.oss.common.auth.*;

  EnvironmentVariableCredentialsProvider credentialsProvider = CredentialsProviderFactory.newEnvironmentVariableCredentialsProvider();
  String endpoint = "oss-cn-hangzhou-internal.aliyuncs.com";
  OSS ossClient = new OSSClientBuilder().build(endpoint, credentialsProvider);

OSS バケットと ECS インスタンスが同じリージョンにある場合、内部エンドポイントを使用して、内部ネットワーク経由で ECS インスタンスから OSS バケットにアクセスできます。OSS バケットと ECS インスタンスが異なるリージョンにある場合、内部エンドポイントを使用して、内部ネットワーク経由で ECS インスタンスから OSS バケットにアクセスすることはできません。たとえば、2 つの OSS バケットがあり、中国 (北京) リージョンにある ECS インスタンスを購入したとします。

  • 1 つのバケットの名前は srcbucket で、中国 (北京) リージョンにあります。https://srcbucket.oss-cn-beijing-internal.aliyuncs.com を使用して、中国 (北京) リージョンにある ECS インスタンスから srcbucket 内のリソースにアクセスできます。

  • もう 1 つのバケットの名前は destbucket で、中国 (青島) リージョンにあります。https://destbucket.oss-cn-qingdao-internal.aliyuncs.com を使用して、中国 (北京) リージョンにある ECS インスタンスから destbucket 内のリソースにアクセスすることはできません。中国 (北京) リージョンにある ECS インスタンスから destbucket 内のリソースにアクセスするには、https://destbucket.oss-cn-qingdao.aliyuncs.com を使用してインターネット経由で destbucket 内のリソースにアクセスする必要があります。

アクセラレーションエンドポイントを使用して OSS にアクセスする

OSS は、国やリージョンをまたがるデータのアップロードとダウンロードのデータ転送を高速化するための転送アクセラレーション機能を提供します。アクセラレーションエンドポイントを使用して OSS のバケットにアクセスするには、バケットの 転送アクセラレーションを有効にする 必要があります。バケットの転送アクセラレーションを有効にすると、パブリックエンドポイントの代わりにアクセラレーションエンドポイントを使用してバケットにアクセスし、データ転送を高速化できます。

たとえば、ブラウザから examplebucket バケットのルートディレクトリにある myphoto.jpg オブジェクトにアクセスし、グローバルアクセラレーションエンドポイントを使用してアクセスを高速化するとします。オブジェクトの ACL は公開読み取りまたは公開読み書きです。この場合、オブジェクトの URL は https://examplebucket.oss-accelerate.aliyuncs.com/myphoto.jpg です。

myphoto.jpg オブジェクトの ACL が非公開の場合、オブジェクト URL に署名情報を追加する必要があります。例: https://examplebucket.oss-accelerate.aliyuncs.com/myphoto.jpg?OSSAccessKeyId=nz2p***********&Expires=1141889120&Signature=vjbyPxybdZaNmGa%2ByT272Y********。オブジェクト URL に署名を追加する方法については、「URL に署名を追加する」をご参照ください。

参照

  • 異なるリージョンには、異なるエンドポイントを使用してアクセスします。詳細については、「リージョンとエンドポイント」をご参照ください。

  • このトピックにリストされているエンドポイントは IPv4 ドメイン名です。IPv6 経由で OSS バケットにアクセスする場合は、IPv6 をサポートするエンドポイントを使用する必要があります。詳細については、「IPv6 をサポートするエンドポイントを使用して OSS にアクセスする」をご参照ください。

  • 異なるリージョンにある ECS インスタンスまたはオンプレミスデータセンターのデバイスから内部ネットワーク経由で OSS バケットにアクセスするには、Cloud Enterprise Network (CEN)、Express Connect、専用回線、または VPN を使用して、OSS バケットが配置されているリージョンの内部ネットワークに接続できます。次に、内部ネットワークの仮想 IP アドレス (VIP) 範囲に転送するルートを構成できます。詳細については、「内部 OSS エンドポイントと VIP 範囲」をご参照ください。

  • カスタムドメイン名をマッピングする ことができ、そのドメイン名を使用してバケット内のリソースにアクセスできます。たとえば、static.example.com カスタムドメイン名をバケットにマッピングし、そのドメイン名を使用してバケット内のリソースにアクセスできます。

  • オブジェクトにアクセスするには、OSS ドメイン名にオブジェクトのパスを含める必要があります。たとえば、examplebucket.oss-cn-hangzhou.aliyuncs.com を使用して、OSS ドメイン名にオブジェクトのパスを含めずにオブジェクトにアクセスすると、エラーが報告されます。オブジェクトのパスを含めずに OSS エンドポイントを使用してオブジェクトにアクセスするには、静的 Web サイトホスティングを構成します。静的 Web サイトホスティング