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

:バケットに関する情報の照会

最終更新日:Dec 19, 2023

バケットは、オブジェクトをOSS (Object Storage Service) に格納するために使用されるコンテナーです。 OSS内のすべてのオブジェクトはバケットに含まれています。 このトピックでは、バケットに関する情報をクエリする方法について説明します。

使用状況ノート

  • このトピックでは、中国 (杭州) リージョンのパブリックエンドポイントを使用します。 OSSと同じリージョンにある他のAlibaba Cloudサービスを使用してOSSにアクセスする場合は、内部エンドポイントを使用します。 OSSのリージョンとエンドポイントの詳細については、「リージョンとエンドポイント」をご参照ください。

  • このトピックでは、OSSエンドポイントを使用してOSSClientインスタンスを作成します。 カスタムドメイン名またはSTS (Security Token Service) を使用してOSSClientインスタンスを作成する場合は、「初期化」をご参照ください。

  • バケットに関する情報を照会するには、oss:GetBucketInfo権限が必要です。 詳細については、「RAMユーザーへのカスタムポリシーのアタッチ」をご参照ください。

サンプルコード

次のサンプルコードは、バケットのリージョン、作成日、アクセス制御リスト (ACL) など、バケットに関する情報をクエリする方法の例を示しています。

Aliyun.OSSを使用した
Aliyun.OSS.Common; を使用
// バケットが配置されているリージョンのエンドポイントを指定します。 たとえば、バケットが中国 (杭州) リージョンにある場合、エンドポイントをhttps://oss-cn-hangzhou.aliyuncs.comに設定します。 
var endpoint = "yourEndpoint";
// 環境変数からアクセス資格情報を取得します。 サンプルコードを実行する前に、OSS_ACCESS_KEY_IDおよびOSS_ACCESS_KEY_SECRET環境変数が設定されていることを確認してください。 
var accessKeyId = Environment.GetEnvironmentVariable("OSS_ACCESS_KEY_ID");
var accessKeySecret = Environment.GetEnvironmentVariable("OSS_ACCESS_KEY_SECRET");
// バケットの名前を指定します。 
var bucketName = "yourbucketname";

// OSSClientインスタンスを作成します。 
var client = new OssClient (エンドポイント、accessKeyId、accessKeySecret);
トライ
{
    // バケット情報には、バケットのリージョン (regionまたはLocation) 、作成日 (CreationDate) 、所有者 (owner) 、およびACL (Grants) が含まれます。 
    var bucketInfo = client.GetBucketInfo(bucketName);
    Console.WriteLine("Get bucket:{0} Info successed", bucketName);
    // バケットのリージョンを照会します。 
    Console.WriteLine("bucketInfo Location: {0}", bucketInfo.Bucket.Location);
    // バケットの作成日を照会します。 
    Console.WriteLine("bucketInfo CreationDate: {0}", bucketInfo.Bucket.CreationDate);
    // バケットのディザスタリカバリタイプを照会します。 
    Console.WriteLine("bucketInfo DataRedundancyType: {0}", bucketInfo.Bucket.DataRedundancyType);
    // バケットのACLを照会します。 
    Console.WriteLine("bucketInfo Grant: {0}", bucketInfo.Bucket.AccessControlList.Grant);
}
キャッチ (OssException ex)
{
    Console.WriteLine("Failed with error code: {0}; エラー情報: {1} 。 \nRequestID:{2}\tHostID:{3}"、
        ex.ErrorCode, ex.Message, ex.RequestId, ex.HostId);
} 

参考資料

バケットに関する情報を照会するために呼び出すことができるAPI操作の詳細については、「GetBucketInfo」をご参照ください。