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

Object Storage Service:バケットの作成

最終更新日:Dec 19, 2023

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

使用上の注意

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

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

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

次のコードは、examplebucketという名前のバケットを作成する方法の例を示しています。

id<OSSCredentialProvider> credentialProvider = [[OSSAuthCredentialProvider alloc] initWithAuthServerUrl:@ "<StsServer>"];
OSSClientConfiguration * cfg = [[OSSClientConfiguration alloc] init];
cfg.maxRetryCount = 3;
cfg.timeoutIntervalForRequest = 15;

// OSSClientインスタンスがリリースされると、セッション内のすべてのタスクがキャンセルされ、セッションは無効になります。 リクエストが完了する前に、OSSClientインスタンスがリリースされていないことを確認してください。 
// バケットが配置されているリージョンのエンドポイントを指定します。 たとえば、バケットが中国 (杭州) リージョンにある場合、エンドポイントをhttps://oss-cn-hangzhou.aliyuncs.comに設定します。 
OSSClient * client = [[OSSClient alloc] initWithEndpoint:@ "Endpoint" credentialProvider:credentialProvider clientConfiguration:cfg];

OSSReateBucketRequest * create = [OSSReateBucketRequest new];
// バケット名をexamplebucketに設定します。 
create.bucketName = @ "examplebucket";
// バケットのアクセス制御リスト (ACL) をprivateに設定します。 
. xOssACL = @ "private" を作成します。// バケットのストレージクラスを低頻度アクセス (IA) に設定します。 
create.storageClass = OSSBucketStorageClassIA;

OSSTask * createTask = [client createBucket:create];

[createTask continueWithBlock:^ id(OSSTask * task) {
    if (!task.error) {
        NSLog(@ "create bucket success!");
    } else {
        NSLog(@ "create bucket failed, error: % @", task.error);
    }
    nilを返します。}]; 

参考資料

  • バケットの作成に使用される完全なサンプルコードの詳細については、GitHubをご覧ください。
  • バケットを作成するために呼び出すことができるAPI操作の詳細については、「PutBucket」をご参照ください。