cors コマンドを使用して、バケットのオリジン間リソース共有 (CORS) 構成を作成、変更、照会、または削除します。CORS は、HTML5 が提供する標準的なオリジン間ソリューションであり、Web アプリケーションサーバがオリジン間アクセスを制御できるようにし、オリジン間のデータ送信のセキュリティを確保します。
前提条件
開始する前に、以下を確認してください。
OSS バケット
実行する操作に必要な権限: これらの権限を Resource Access Management (RAM) ユーザーにアタッチするには、「RAM ユーザーにカスタムポリシーをアタッチ」をご参照ください。
操作 必要な権限 CORS 構成の作成または変更 oss:PutBucketCorsCORS 構成のクエリ oss:GetBucketCorsCORS 構成の削除 oss:DeleteBucketCorsossutil がインストール済みです。ossutil 1.6.16 以降のバージョンでは、バイナリ名として直接
ossutilを使用します。それ以前のバージョンでは、オペレーティングシステムに基づいてバイナリ名を更新します。詳細については、「ossutil コマンドリファレンス」をご参照ください。
CORS が OSS でどのように機能するかに関する背景情報については、「CORS」をご参照ください。
CORS 構成の作成または変更
cors --method put を実行すると、CORS 構成が存在しない場合は新しい CORS 構成を作成し、存在する場合は既存のものを上書きします。
構文
ossutil cors --method put oss://<bucketname> <local_xml_file>| パラメータ | 必須 | 説明 |
|---|---|---|
bucketname | はい | バケットの名前。 |
local_xml_file | はい | CORS 構成を含むローカル XML ファイルへのパス。例: localfile.txt。 |
例
以下の CORS 構成を含む
localfile.txtという名前のローカルファイルを作成します。この例では、www.aliyun.comからのオリジン間PUTリクエストを許可し、ブラウザにプリフライト (OPTIONS) 応答を 10,000 秒間キャッシュするように指示します。<?xml version="1.0" encoding="UTF-8"?> <CORSConfiguration> <CORSRule> <AllowedOrigin>www.aliyun.com</AllowedOrigin> <AllowedMethod>PUT</AllowedMethod> <MaxAgeSeconds>10000</MaxAgeSeconds> </CORSRule> </CORSConfiguration>examplebucketに構成を適用します。ossutil cors --method put oss://examplebucket localfile.txt予想される出力:
0.299514(s) elapsed
CORS 構成のクエリ
構文
ossutil cors --method get oss://<bucketname> [<local_xml_file>]| パラメータ | 必須 | 説明 |
|---|---|---|
bucketname | はい | バケットの名前。 |
local_xml_file | いいえ | CORS 構成が保存されるローカルファイルへのパス。省略した場合、構成は画面に表示されます。 |
例
以下のコマンドを実行して、examplebucket の CORS 構成をクエリし、localfile.txt に保存します。
ossutil cors --method get oss://examplebucket localfile.txt予想される出力:
0.212407(s) elapsedCORS 構成は localfile.txt に書き込まれます。代わりに構成を画面に表示するには、ファイルパスを省略します。
ossutil cors --method get oss://examplebucketCORS 構成の削除
構文
ossutil cors --method delete oss://<bucketname>例
ossutil cors --method delete oss://examplebucket予想される出力:
0.530750(s) elapsed共通オプション
異なるリージョンにあるバケット、または異なる Alibaba Cloud アカウントが所有するバケットを操作するには、以下のオプションを追加します。
| オプション | 説明 |
|---|---|
-e <endpoint> | バケットが配置されているリージョンのエンドポイント。 |
-i <AccessKey ID> | バケットを所有するアカウントの AccessKey ID。 |
-k <AccessKey secret> | バケットを所有するアカウントの AccessKey Secret。 |
例: 中国 (杭州) リージョンにあり、異なるアカウントに属する testbucket の CORS 構成を作成します。
ossutil cors --method put oss://testbucket localfile.txt -e oss-cn-hangzhou.aliyuncs.com -i yourAccessKeyID -k yourAccessKeySecret共通オプションの完全なリストについては、「共通オプション」をご参照ください。