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

Object Storage Service:ossutil の設定

最終更新日:Dec 20, 2023

このトピックでは、ossutilを設定する方法について説明します。

configコマンドを実行してossutilをすばやく設定します。

ほとんどの場合、configコマンドを実行してossutilをすばやく設定できます。 このコマンドは、対話的な方法で構成ファイルを生成するのに役立ちます。

次の例は、Linuxオペレーティングシステムでossutilを構成する方法を示しています。

  1. 次のコマンドを実行してossutilを設定します。

    ossutil設定
  2. 画面の指示に従って、設定ファイルのパスを指定します。

    ビジネス要件に基づいて、構成ファイルのパスを指定できます。 デフォルトでは、設定ファイルは ~/.ossutilconfigとして保存されます。Enterキーを押すと、デフォルトの設定が使用されます。

    设定ファイル名を指定します。 構成ファイルの名前には、ファイルパスを含めることができます。 設定ファイルのデフォルト名は /home/user/.ossutilconfigです。パスを指定せずに [Enter] キーを押すと, デフォルトのパスにファイルが生成されます。  ファイルを別のパスに格納する場合は、-- config-fileオプションをパスに設定します。
  3. 画面の指示に従って、ossutilの表示言語を指定します。

    CHまたはENを入力します。 デフォルトでは、オペレーティングシステムで使用される言語でossutilが表示されます。 設定は、configコマンドを実行すると有効になります。

  4. 画面の指示に従って、endpoint、accessKeyID、accessKeySecret、stsTokenのパラメーターを指定します。

    下表に、各パラメーターを説明します。

    パラメーター

    説明

    エンドポイント

    バケットが配置されているリージョンのエンドポイントを指定します。 リージョンとエンドポイントの関係の詳細については、「リージョンとエンドポイント」をご参照ください。

    http:// またはhttps:// を追加して、OSS (Object Storage Service) へのアクセスに使用するプロトコルを指定することもできます。 デフォルトのプロトコルはHTTPです。 たとえば、HTTPSを使用して中国 (杭州) リージョンのバケットにアクセスする場合は、エンドポイントをhttps://oss-cn-hangzhou.aliyuncs.comに設定します。

    accessKeyID

    OSSへのアクセスに使用するAlibaba CloudアカウントまたはRAMユーザーのAccessKeyペアを指定します。

    accessKeySecret

    stsToken

    このパラメーターは、一時的なアクセス資格情報を使用してOSSバケットにアクセスする場合にのみ必要です。 一時的なアクセス資格情報を使用してOSSバケットにアクセスしない場合は、このパラメーターを空のままにすることができます。 セキュリティトークンを生成する方法の詳細については、「許可されたサードパーティのアップロード」をご参照ください。

    説明

    設定ファイルの詳細については、「config」をご参照ください。

  5. 手順2で設定ファイルのパスを指定する場合は、このコマンドを実行するたびに -cオプションを追加して設定ファイルを指定します。

    たとえば、設定ファイルを /home/configとして保存する場合、lsコマンドを実行するときに次の形式で-cオプションを追加します。

    . /ossutil64 -c /home/config ls oss:// examplebucket

コマンドの実行に必要な設定ファイルのパラメーターを指定します。

簡単に使用できるように、共通の資格情報と構成を構成ファイルに保存できます。 設定ファイルはINI形式で、セクションとキーで構成されています。 設定パラメータは、指定されたセクションに格納されます。 次の表に、共通設定パラメーターを示します。

設定パラメーター

説明

サンプルコード

言語

ossutilが使用する言語。 有効な値:

  • CH: 中国語。

  • EN: 英語。

[資格情報]
language = CH 

エンドポイント

バケットが配置されているリージョンのエンドポイント。

  • [資格情報]
    endpoint = oss-cn-hangzhou.aliyuncs.com 
  • [資格情報]
    endpoint = https://oss-cn-hangzhou.aliyuncs.com 

accessKeyID

ユーザーを一意に識別するAccessKey ID。

[資格情報]
accessKeyID = your_accesskey_id 

accessKeySecret

ユーザーのIDを認証するAccessKeyシークレット。

[資格情報]
accessKeySecret = your_accesskey_secret 

stsToken

リクエストの認証に使用されるセキュリティトークン。

[資格情報]
stsToken = your_sts_token 

モード

認証に使用されるモード。 有効な値: AK、StsToken、RamRoleArn、およびEcsRamRole。

[資格情報]
モード=RamRoleArn 

ramRoleArn

認証用のRamRoleArnモードのRAMロールのAlibaba Cloudリソース名 (ARN) 。

[資格情報]
ramRoleArn = your_ram_role_arn 

roleSessionName

認証用のRamRoleArnモードのセッションの名前。 このパラメーターを指定しないと、ランダムな値が生成されます。

[資格情報]
roleSessionName = your_ram_role_seesion_name 

tokenTimeout

セキュリティトークンの有効期間。 このパラメータはRamRoleArnモードで使用されます。 単位は秒です。 デフォルト値は 3600 です。

[資格情報]
tokenTimeout = your_token_timetout 

ecsRoleName

認証用のEcsRamRoleモードのロール名。

[資格情報]
ecsRoleName = your_ecs_role_name 

コマンドの実行に必要なパラメーターについては、「設定ファイルの変更」をご参照ください。

コマンドラインのオプション

コマンドラインオプションを指定して、関連する設定を指定することもできます。 コマンドラインオプションは、構成ファイルで指定されたパラメーターよりも優先されます。 一般的なコマンドラインオプションを次の表に示します。

オプション

説明

サンプルコード

-- loglevel

ログレベル。 デフォルトでは、このオプションは空のままです。これは、ログファイルが生成されないことを示します。 有効な値:

  • info: プロンプトログを生成します。

  • debug: 対応するHTTPリクエストとレスポンスに関する情報を含む詳細なログを生成します。

ossutil64 commandnameオプション -- loglevel debug

-- connect-timeout

クライアントがサーバーに接続するためのタイムアウト期間。 デフォルト値: 120 単位は秒です。

ossutil64コマンド名オプション -- connect-timeout 60

-- read-timeout

クライアントがサーバーからデータを読み取るためのタイムアウト期間。 デフォルト値: 1200 単位は秒です。

ossutil64コマンド名オプション -- 読み取りタイムアウト60

-- retry-times

操作が失敗した場合に操作が再試行される回数。 デフォルト値は 10 です。

ossutil64コマンド名オプション -- retry-times 20

-e, -- endpoint

リクエストの送信先のドメイン名。

  • ossutil64 commandnameオプション-e oss-cn-hangzhou.aliyuncs.com
  • ossutil64 commandname options -e https://oss-cn-hangzhou.aliyuncs.com

-i, -- access-key-id

OSSへのアクセスに使用するAccesskey ID。

ossutil64 commandnameオプション-i your_access_key

-k, -- access-key-secret

OSSへのアクセスに使用するAccesskey secret。

ossutil64 commandnameオプション-k your_access_key_secrect

-t, -- sts-token

OSSへのアクセスに使用するセキュリティトークン。

ossutil64 commandnameオプション-i your_sts_token_accesskey_id -k your_sts_token_accesskey_secret -t your_sts_token

-- mode

認証に使用されるモード。 有効な値: AK、StsToken、RamRoleArn、およびEcsRamRole。 デフォルトでは、このパラメータは空のままです。

次のコードは、AKモードでOSSにアクセスする方法の例を示しています。

ossutil64 commandnameオプション-i your_accesskey_id -k your_accesskey_secret -- mode AK

-- ram-role-arn

認証のためのRamRoleArnモードのRAMロールのARN。

ossutil64コマンド名オプション -- ram-role-arn your_ram_role_arn

-- role-session-name

認証モードのセッションの名前。

ossutil64コマンド名オプション -- role-session-name your_ram_session_name

-- token-timeout

セキュリティトークンの有効期間。 単位は秒です。 デフォルト値は 3600 です。

ossutil64 commandnameオプション -- token-timeout 1800

-- ecs-role-name

認証用のEcsRamRoleモードのロール名。

ossutil64コマンド名オプション -- ecs-role-name your_ecs_role_name

オプションの詳細については、「共通オプション」をご参照ください。

アクセス資格情報の設定

設定ファイルまたはコマンドラインオプションでパラメーターを指定することで、アクセス資格情報を設定できます。

AccessKeyペアを使用したデータへのアクセス

この例では、中国 (杭州) リージョンのexample-bucketという名前のバケットが使用されます。

  • 設定ファイルでパラメーターを指定する

    次の設定ファイルが生成され、~/.myossutilconfigとして保存されます。

    [資格情報]
    endpoint = oss-cn-hangzhou.aliyuncs.com
    accessKeyID = LTAI4Fw2NbDUCV8zYUzA ****
    accessKeySecret = 67DLVBkH7EamOjy2W5RVAHUY9H **** 

    次のコマンドを実行して、バケット内のオブジェクトを照会します。

    ossutil64 -c ~/.myossutilconfig ls oss:// example-bucket
  • コマンドラインオプションの指定

    次のコードは、AccessKeyペアをインポートするためのコマンドラインオプションの指定方法の例を示しています。

    ossutil64 -e oss-cn-hangzhou.aliyuncs.com -i LTAI4Fw2NbDUCV8zYUzA **** -k 67DLVBkH7EamOjy2W5RVAHUY9H **** ls oss:// example-bucket
    重要

    コマンドラインオプションを指定してAccessKeyペアをインポートすると、AccessKeyペアがログシステムによって記録される可能性があります。 AccessKeyペアは非常にリークしやすいです。 注意して進めてください。

STSから取得した一時的なアクセス資格情報を使用してデータにアクセスする

この例では、中国 (杭州) リージョンのexample-bucketという名前のバケットが使用されます。

  • 設定ファイルでパラメーターを指定する

    次の設定ファイルが生成され、~/.myossutilconfigとして保存されます。

    [資格情報]
    endpoint = oss-cn-hangzhou.aliyuncs.com
    accessKeyID = STS.LTAI4Fw2NbDUCV8zYUzA ****
    accessKeySecret = 67DLVBkH7EamOjy2W5RVAHUY9H ****
    stsToken = yourSecurityToken 

    次のコマンドを実行して、バケット内のオブジェクトを照会します。

    ossutil64 -c ~/.myossutilconfig ls oss:// example-bucket
  • コマンドラインオプションの指定

    コマンドラインオプションを指定して一時的なアクセス資格情報をインポートする方法の例を次に示します。

    ossutil64 -e oss-cn-hangzhou.aliyuncs.com -i STS.LTAI4Fw2NbDUCV8zYUzA **** -k 67DLVBkH7EamOjy2W5RVAHUY9H **** -t yourSecurityToken ls oss:// example-bucket
    説明

    コマンドラインオプションを指定して一時的なアクセス資格情報をインポートすると、一時的なアクセス資格情報がログシステムによって記録される可能性があります。 AccessKeyペアは非常にリークしやすいです。 注意して進めてください。

RAM ロールの使用

この例では、中国 (杭州) リージョンのexample-bucketという名前のバケットと、ramRoleArnExampleという名前のRAMロールが使用されます。

  • 設定ファイルでパラメーターを指定する

    次の設定ファイルが生成され、~/.myossutilconfigとして保存されます。

    [資格情報]
    endpoint = oss-cn-hangzhou.aliyuncs.com
    accessKeyID = LTAI4Fw2NbDUCV8zYUzA ****
    accessKeySecret = 67DLVBkH7EamOjy2W5RVAHUY9H ****
    モード=RamRoleArn
    ramRoleArn = acs:ram::137918634953 ****:role/Alice
    roleSessionName = session_name_example (このパラメーターはオプションです)
    tokenTimeout = 1800 (このパラメーターはオプションです。) 

    次のコマンドを実行して、バケット内のオブジェクトを照会します。

    ossutil64 -c ~/.myossutilconfig ls oss:// example-bucket
  • コマンドラインオプションの指定

    コマンドラインオプションを指定して一時的なアクセス資格情報をインポートする方法の例を次に示します。

    ossutil64 -e oss-cn-hangzhou.aliyuncs.com -i LTAI4Fw2NbDUCV8zYUzA **** -k 67DLVBkH7EamOjy2W5RVAHUY9H ****-モードRamRoleArn -- ram-role-arn acs:ram::137918634953 ****:role/Alice ls oss:// example-bucket
    説明

    コマンドラインオプションを指定して一時的なアクセス資格情報をインポートすると、一時的なアクセス資格情報がログシステムによって記録される可能性があります。 AccessKeyペアは非常にリークしやすいです。 注意して進めてください。

インスタンスRAMロールの使用

インスタンスRAMロールを使用して、Elastic Compute Service (ECS) インスタンスのossutilアクセス資格情報を設定することもできます。 RAMロールをECSインスタンスにアタッチして、STSから取得した一時的なアクセス資格情報を使用してインスタンスからOSSにアクセスできます。 STSの一時的なアクセス資格情報は自動的に生成および更新されます。 アプリケーションは、インスタンスメタデータURLを使用してSTSの一時的なアクセス資格情報を取得できます。 RAMロールは、AccessKeyペアのセキュリティを確保し、詳細な権限制御と管理を容易にします。

使用する前に、ECSインスタンスにインスタンスRAMロールを作成します。 詳細については、「概要」をご参照ください。

この例では、中国 (杭州) リージョンのexample-bucketという名前のバケットと、ECSインスタンスのEcsRamRoleOssという名前のRAMロールが使用されます。

  • 設定ファイルでパラメーターを指定する

    次の設定ファイルが生成され、~/.myossutilconfigとして保存されます。

    [資格情報]
    endpoint = oss-cn-hangzhou.aliyuncs.com
    モード=EcsRamRole
    ecsRoleName = EcsRamRoleOss 

    次のコマンドを実行して、バケット内のオブジェクトを照会します。

    ossutil64 -c ~/.myossutilconfig ls oss:// example-bucket
  • コマンドラインオプションの指定

    コマンドラインオプションを指定して一時的なアクセス資格情報をインポートする方法の例を次に示します。

    ossutil64 -e oss-cn-hangzhou.aliyuncs.com-モードEcsRamRole -- ecs-role-name EcsRamRoleOss ls oss:// example-bucket

バケットのエンドポイントの指定

ossutilを使用する場合、複数のバケットを管理する必要があります。 この場合、各バケットのエンドポイントを指定する必要があります。 各バケットのエンドポイントを指定するには、次のいずれかの方法を使用します。

  • 設定ファイルでパラメーターを指定する

    設定ファイルに [Bucket-Endpoint] 設定セクションを追加して、次の形式で各バケットのエンドポイントを指定します。

    [バケット-エンドポイント]
    bucket1 = endpoint1
    bucket2 = endpoint2
    ... 

    この例では、次のバケットが使用されます。中国 (杭州) リージョンのexample-bucket-hzという名前のバケット、中国 (北京) リージョンのexample-bucket-bjという名前のバケット、中国 (上海) リージョンのexample-bucket-shという名前のバケットです。

    次の設定ファイルが生成され、~/.myossutilconfigとして保存されます。

    [資格情報]
    endpoint = oss-cn-hangzhou.aliyuncs.com
    accessKeyID = LTAI4Fw2NbDUCV8zYUzA ****
    accessKeySecret = LTAI4Fw2NbDUCV8zYUzA ****
    [バケット-エンドポイント]
    example-bucket-b j=oss-cn-beijing.aliyuncs.com
    example-bucket-s h=oss-cn-shanghai.aliyuncs.com 

    次のコマンドを実行して、バケット内のオブジェクトを照会します。

    ossutil64 -c ~/.myossutilconfig ls oss:// example-bucket-hz
    ossutil64 -c ~/.myossutilconfig ls oss:// example-bucket-bj
    ossutil64 -c ~/.myossutilconfig ls oss:// example-bucket-sh 
  • コマンドラインオプションの指定

    この例では、次のバケットが使用されます。中国 (杭州) リージョンのexample-bucket-hzという名前のバケット、中国 (北京) リージョンのexample-bucket-bjという名前のバケット、中国 (上海) リージョンのexample-bucket-shという名前のバケットです。

    ~/.myossutilconfigファイルでアカウント情報を指定します。

    [資格情報]
    endpoint = oss-cn-hangzhou.aliyuncs.com
    accessKeyID = LTAI4Fw2NbDUCV8zYUzA ****
    accessKeySecret = 67DLVBkH7EamOjy2W5RVAHUY9H **** 

    -eパラメーターを指定してエンドポイントを指定します。

    ossutil64 -c ~/.myossutilconfig ls oss:// example-bucket-hz
    ossutil64 -c ~/.myossutilconfig -e oss-cn-beijing.aliyuncs.com ls oss:// example-bucket-bj
    ossutil64 -c ~/.myossutilconfig -e oss-cn-shanghai.aliyuncs.com ls oss:// example-bucket-sh 

カスタムドメイン名の指定

ossutilを使用すると、カスタムドメイン名を使用してOSSリソースにアクセスできます。 カスタムドメイン名を使用してOSSリソースにアクセスする前に、設定ファイルでバケットとカスタムドメイン名の間のマッピングを設定する必要があります。

設定ファイルで、[Bucket-Cname] 設定セクションを追加して、次の形式で各バケットのカスタムドメイン名を指定します。

[バケット-Cname]
bucket1 = cname1
bucket2 = cname2
... 

この例では、中国 (杭州) リージョンのexample-bucketという名前のバケットと、カスタムドメイン名cname.example-***.comが使用されています。

次の設定ファイルが生成され、設定ファイルは ~/.myossutilconfigとして保存されます。

[資格情報]
accessKeyID = LTAI4Fw2NbDUCV8zYUzA ****
accessKeySecret = 67DLVBkH7EamOjy2W5RVAHUY9H ****
[バケット-Cname]
example-bucket=cname.example-***.com 

次のコマンドを実行して、バケット内のオブジェクトを照会します。

ossutil64 -c ~/.myossutilconfig ls oss:// example-bucket