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

Object Storage Service:cors-オプション

最終更新日:Dec 20, 2023

クロスオリジンリソース共有 (CORS) は、webアプリケーションサーバーがクロスオリジンアクセスを制御できるようにするために、HTML5によって提供される標準のクロスオリジンソリューションです。 このようにして、起点を越えたデータ伝送のセキュリティが保証される。 cors-optionsコマンドを実行して、HTTP OPTIONSリクエストをObject Storage Service (OSS) に送信し、特定のクロスオリジンリクエストが許可されているかどうかを確認できます。

説明
  • このトピックでは、サンプルのコマンドラインは64ビットLinuxシステムに基づいています。 他のシステムの場合は、を交換します。対応するバイナリ名を持つコマンドの /ossutil64。 詳細については、「ossutilの使用を開始する」をご参照ください。

  • CORSの設定方法の詳細については、「cors」をご参照ください。

コマンド構文

. /ossutil64 cors-options oss:// bucketname/[objectname]
[-- acr-method <value>]
[-- origin <value>]
[-- acr-headers <value>] 

次の表に、cors-optionsコマンドを実行するときに設定できるパラメーターを示します。

パラメーター

説明

bucketname

アクセスするバケットの名前。

オブジェクト名

アクセスするオブジェクトの名前。

-- acr-method

リクエストで使用できるメソッド。 このパラメーターには、Access-Control-Request-Methodリクエストヘッダーの値を指定します。 有効な値: GETPUTPOSTDELETEHEAD

-- 起源

クロスオリジンリクエストを許可するオリジン。 例: http://www.aliyun.com

-- acr-headers

Access-Control-Request-Headersリクエストヘッダーの値を指定します。 一般的に使用されるヘッダーを除く実際のヘッダーを指定します。 リクエストには複数のヘッダーを指定できます。 複数のヘッダーはコンマ (,) で区切ります。 例: -- acr-headers "header1,header2,header3"

次のコマンドを実行して、examplebucketバケットが、オリジンがhttp://www.aliyun.comで、リクエストメソッドがPUTであるクロスオリジンリクエストを許可するかどうかを検出できます。

. /ossutil64 cors-options -- acr-method put -- origin "http://www.aliyun.com" oss:// examplebucket

examplebucketがクロスオリジンリクエストを許可する場合、同様の出力が表示されます。

アクセス制御-許可-メソッド: GET、POST、PUT
アクセス制御-許可-オリジン: *
アクセス制御-マックス-年齢: 0

0.079520経過 

examplebucketがクロスオリジンリクエストを拒否した場合も、同様の出力が表示されます。

エラー: oss: serviceが返されましたエラー: StatusCode=403, ErrorCode=AccessForbidden, ErrorMessage="CORSResponse: このCORSリクエストは許可されていません。 これは通常あります
 Origin、要求メソッド /Access-Control-request-method、またはAccess-Control-Requet-Headersの評価がリソースのCORSによってホワイトリスト化されていないため
 "、RequestId=60F7F55F553DA2363138 **** 

一般的なオプション

ossutilを使用して別のリージョンにあるバケットに切り替える場合は、コマンドに -eオプションを追加して、指定したバケットがあるリージョンのエンドポイントを指定します。 ossutilを使用して別のAlibaba Cloudアカウントに属するバケットに切り替える場合、コマンドに -iオプションを追加して、指定されたアカウントのAccessKey IDを指定し、コマンドに -kオプションを追加して、指定されたアカウントのAccessKeyシークレットを指定します。

testbucketという名前のバケットが、オリジンがhttp://www.alibabacloud.comで、リクエストメソッドがPUTであるクロスオリジンリクエストを許可するかどうかを検出するには、次のコマンドを実行します。

. /ossutil64 cors-options -- acr-method put -- origin "http://www.alibabacloud.com" oss:/testbucket -e oss-cn-hangzhou.aliyuncs.com -i LTAI4Fw2NbDUCV8zYUzA **** -k 67DLVBkH7EamOjy2W5RVAHUY9H ****

cors-optionsコマンドに使用できるその他の共通オプションの詳細については、「共通オプション」をご参照ください。