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

Object Storage Service:初期化

最終更新日:Dec 19, 2023

OSSClientは、オブジェクトストレージサービス (OSS) クライアントとして機能します。バケットやオブジェクトなどのOSSリソースを管理できます。

OSSClientインスタンスの作成

説明

OSSClientインスタンスを作成するには、エンドポイントを指定する必要があります。 エンドポイントの詳細については、「リージョンおよびエンドポイント」をご参照ください。

次のいずれかの方法を使用して、OSSClientインスタンスを作成できます。

OSSエンドポイントを使用したOSSClientインスタンスの作成

次のサンプルコードは、OSSエンドポイントを使用してOSSClientインスタンスを作成する方法の例を示しています。

Aliyun.OSSを使用した

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

// OSSClientインスタンスを作成します。 
var ossClient = new OssClient (エンドポイント、accessKeyId、accessKeySecret); 

カスタムドメイン名を使用してOSSClientインスタンスを作成する

次のサンプルコードは、カスタムドメイン名を使用してOSSClientインスタンスを作成する方法の例を示しています。

重要

カスタムドメイン名が使用されている場合、ossClient.listBucketsは使用できません。

Aliyun.OSSを使用した

Aliyun.OSS.Common; を使用
// 環境変数からアクセス資格情報を取得します。 サンプルコードを実行する前に、OSS_ACCESS_KEY_IDおよびOSS_ACCESS_KEY_SECRET環境変数が設定されていることを確認してください。 
var accessKeyId = Environment.GetEnvironmentVariable("OSS_ACCESS_KEY_ID");
var accessKeySecret = Environment.GetEnvironmentVariable("OSS_ACCESS_KEY_SECRET");
// カスタムドメイン名を指定します。 
const文字列endpoint = "yourDomain";

// ClientConfigurationインスタンスを作成します。 Modify parameters as required. 
var conf = new ClientConfiguration();

// CNAMEレコードを使用できることを指定します。 CNAMEレコードは、カスタムドメイン名とバケット間のマッピング関係を指定します。 
conf.IsCname = true;

// OSSClientインスタンスを作成します。 
var client = new OssClient (エンドポイント、accessKeyId、accessKeySecret、conf); 

STSを使用してOSSClientインスタンスを作成

次のサンプルコードは、Security Token Service (STS) を使用してOSSClientインスタンスを作成する方法の例を示しています。

Aliyun.OSSを使用した

// サンプルコードを実行する前に、STSから取得した一時的なアクセス資格情報を使用して、YOUR_ACCESS_KEY_IDおよびYOUR_ACCESS_KEY_SECRET環境変数が設定されていることを確認してください。 
var accessKeyId = Environment.GetEnvironmentVariable("YOUR_ACCESS_KEYID");
var accessKeySecret = Environment.GetEnvironmentVariable("YOUR_ACCESS_KEYID");
// STSから取得したセキュリティトークンを指定します。 
const文字列securityToken = "yourSecurityToken";
// バケットが配置されているリージョンのエンドポイントを指定します。 たとえば、バケットが中国 (杭州) リージョンにある場合、エンドポイントをhttps://oss-cn-hangzhou.aliyuncs.comに設定します。 
const文字列endpoint = "https://oss-cn-hangzhou.aliyuncs.com";

// OSSClientインスタンスを作成します。 
var ossClient = new OssClient(endpoint, accessKeyId, accessKeySecret, securityToken); 

OSSClientの設定

ClientConfiguration は OSSClient の設定クラスです。 ClientConfigurationを使用して、ホストプロキシ、接続タイムアウト、最大接続数などのパラメーターを設定できます。 次の表に、OSSClientインスタンスを設定するときに設定できるパラメーターを示します。

パラメーター

説明

デフォルト値

ConnectionLimit

同時接続の最大数。

512

MaxErrorRetry

リクエストエラー発生時の最大リトライ回数。

3

ConnectionTimeout

接続のタイムアウト期間。 単位:ミリ秒。

-1 (タイムアウトなし)

EnalbeMD5Check

オブジェクトをアップロードまたはダウンロードするときにMD5検証を有効にするかどうかを指定します。

  • true

  • false

重要

MD5検証を有効にすると、システムのパフォーマンスに影響が出る可能性があります。

false

IsCname

CNAMEをエンドポイントとして使用してOSSClientインスタンスを作成できるかどうかを指定します。 CNAMEは、カスタムドメイン名をバケットにバインドするために使用されます。

false

ProgressUpdateInterval

進行状況バーの更新間隔。 単位:バイト

8096

ProxyHost

プロキシサーバー。 例: example.aliyundoc.com

なし

ProxyPort

プロキシポート。 例: 3128または8080

なし

ProxyUserName

プロキシサーバーへのログオンに使用されるアカウント。 このパラメーターはオプションです。

なし

ProxyPassword

プロキシサーバーへのログインに使用されるパスワード。 このパラメーターはオプションです。

なし

次のサンプルコードは、OSSClientインスタンスを設定する方法の例を示しています。

Aliyun.OSSを使用した

Aliyun.OSS.Common; を使用

var conf = new ClientConfiguration();
// インスタンスへの同時接続の最大数を指定します。 
ClientConfiguration.ConnectionLimit = 512;
// リクエストエラー時の最大リトライ回数を指定します。 
conf.MaxErrorRetry = 3;
// 接続のタイムアウト時間を指定します。 
conf.ConnectionTimeout = 300;
// MD5検証を有効にします。 
conf.EnalbeMD5Check = true;
// プロキシサーバーを指定します。 
conf.ProxyHost = "example.aliyundoc.com";
// プロキシサーバーのポートを指定します。 
conf.ProxyPort = 3128;
// プロキシネットワークへのアクセスに使用するユーザー名を指定します。 
conf.ProxyUserName = "user";
// プロキシネットワークへのアクセスに使用するパスワードを指定します。 
conf.ProxyPassword = "password";

var client = new OssClient (エンドポイント、accessKeyId、accessKeySecret、conf);