tencent cloud

Cloud Object Storage

最新情報とお知らせ
製品アップデート情報
製品のお知らせ
製品概要
製品概要
機能概要
応用シナリオ
製品の優位性
基本概念
リージョンとアクセスドメイン名
仕様と制限
製品の課金
課金概要
課金方式
課金項目
無料利用枠
記帳例
請求書の確認とダウンロード
お支払い遅れについて
よくある質問
クイックスタート
コンソールクイックスタート
COSBrowserクイックスタート
ユーザーガイド
リクエストの作成
バケット
オブジェクト
データ管理
バッチ処理
グローバルアクセラレーション
監視とアラーム
運用管理センター
データ処理
インテリジェントツールボックス使用ガイド
データワークフロー
アプリ統合
ツールガイド
ツール概要
環境のインストールと設定
COSBrowserツール
COSCLIツール
COSCMDツール
COS Migrationツール
FTP Serverツール
Hadoopツール
COSDistCpツール
HDFS TO COSツール
オンラインツール (Onrain Tsūru)
セルフ診断ツール
実践チュートリアル
概要
アクセス制御と権限管理
パフォーマンスの最適化
AWS S3 SDKを使用したCOSアクセス
データディザスタリカバリバックアップ
ドメイン名管理の実践
画像処理の実践
COSオーディオビデオプレーヤーの実践
データセキュリティ
データ検証
COSコスト最適化ソリューション
サードパーティアプリケーションでのCOSの使用
移行ガイド
サードパーティクラウドストレージのデータをCOSへ移行
データレークストレージ
クラウドネイティブデータレイク
メタデータアクセラレーション
データアクセラレーター GooseFS
データ処理
データ処理概要
画像処理
メディア処理
コンテンツ審査
ファイル処理
ドキュメントプレビュー
トラブルシューティング
RequestId取得の操作ガイド
パブリックネットワーク経由でのCOSへのファイルアップロード速度の遅さ
COSへのアクセス時に403エラーコードが返される
リソースアクセス異常
POST Objectの一般的な異常
セキュリティとコンプライアンス
データ災害復帰
データセキュリティ
クラウドアクセスマネジメント
よくある質問
よくあるご質問
一般的な問題
従量課金に関するご質問
ドメインコンプライアンスに関するご質問
バケット設定に関する質問
ドメイン名とCDNに関するご質問
ファイル操作に関するご質問
権限管理に関するご質問
データ処理に関するご質問
データセキュリティに関するご質問
署名付きURLに関するご質問
SDKクラスに関するご質問
ツール類に関するご質問
APIクラスに関するご質問
Agreements
Service Level Agreement
プライバシーポリシー
データ処理とセキュリティ契約
連絡先
用語集

パーマネントキーを使用したCOSアクセス

PDF
フォーカスモード
フォントサイズ
最終更新日: 2025-11-24 16:58:21

背景の説明

RESTful APIによって、Cloud Object Storage(COS)に対しHTTP匿名リクエストまたはHTTP署名リクエストを送信することができます。匿名リクエストは一般的に、静的ウェブサイトのホスティングなどの、パブリックアクセスを必要とするケースに用いられます。そのほかの大多数のケースでは署名リクエストが必要となります。
署名リクエストは匿名リクエストより、署名値を1つ多く持っています。署名はキー(SecretId/SecretKey)およびリクエスト情報を暗号化して生成した文字列をベースとしたものです。SDKは署名を自動計算しますので、お客様はユーザー情報の初期化の際にキーを設定しさえすれば、署名の計算について気にする必要はありません。RESTful APIを通じて送信するリクエストには、署名アルゴリズムに基づいて計算した署名を追加する必要があります。

パーマネントキーの取得

パーマネントキーはCAMコンソールのAPIキー管理ページで取得できます。パーマネントキーにはSecretIdとSecretKeyが含まれ、アカウントの永続的なIDを表します。有効期限はありません。
SecretId:APIを呼び出した人のID識別に用いられます。
SecretKey:署名文字列の暗号化およびサーバーによる署名文字列の検証に用いられるキーです。

パーマネントキーを使用したCOSアクセス

APIリクエストによるCOSアクセス

APIリクエストを使用する場合、プライベートバケットの場合は必ず署名リクエストを使用しなければなりません。パーマネントキーで署名を生成し、Authorizationヘッダーに追加することで、署名リクエストを作成できます。リクエストをCOSに送信すると、COSは署名とリクエストが一致しているかを検証します。
説明:
署名生成のアルゴリズムは複雑なため、SDKを直接使用してリクエストを送信することで、このプロセスを省略することをお勧めします。
1. パーマネントキーによる署名生成 署名アルゴリズムの説明については、リクエスト署名のドキュメントをご参照ください。COSは署名生成ツールもご提供しており、SDKで署名を生成することもできます。SDKの署名実装をご参照ください。ご自身でプログラムを作成して署名を生成することも可能ですが、署名アルゴリズムは複雑なため、通常その方法は推奨されません。
2. Authorizationヘッダーの入力 APIリクエストを送信する際、署名を標準Http Authorizationヘッダーに入力します。次はGetObjectリクエストの例です。
GET /<ObjectKey> HTTP/1.1
Host: <BucketName-APPID>.cos.<Region>.myqcloud.com
Date: GMT Date
Authorization: q-sign-algorithm=sha1&q-ak=SecretId&q-sign-time=KeyTime&q-key-time=KeyTime&q-header-list=HeaderList&q-url-param-list=UrlParamList&q-signature=Signature

SDKツールによるCOSアクセス

1. パーマネントキーによるID情報の初期化 SDKツールのインストールが完了した後、最初にユーザーのID情報の初期化が必要です。ルートアカウントまたはサブアカウントのパーマネントキー(SecretIdおよびSecretKey)を入力します。
2. SDKを直接使用するCOSリクエスト 初期化すると、SDKツールを使用してアップロード・ダウンロードなどの基本操作を直接行うことができるようになります。SDKツールがお客様の代わりにキーによって署名を生成し、COSにリクエストを送信するため、APIリクエストのようにご自身で署名を生成する必要はありません。
例えば、Java SDKのコードは次のようになります。その他の言語のdemoについては、SDKの概要のクイックスタートドキュメントをご参照ください。
// 1 ユーザーID情報(secretId、secretKey)を初期化します。
// SECRETIDおよびSECRETKEYについてはCAMコンソールhttps://console.tencentcloud.com/cam/capiで確認および管理を行ってください
String secretId = "SECRETID";
String secretKey = "SECRETKEY";
COSCredentials cred = new BasicCOSCredentials(secretId, secretKey);
// 2 bucketのリージョンを設定します。COSリージョンの略称についてはhttps://www.tencentcloud.com/document/product/436/6224?from_cn_redirect=1をご参照ください
// clientConfigにはregion、https(デフォルトではhttp)、タイムアウト、プロキシなどを設定するsetメソッドが含まれます。使用にあたってはソースコードまたはよくあるご質問のJava SDKのパートを参照できます。
Region region = new Region("COS_REGION");
ClientConfig clientConfig = new ClientConfig(region);
// ここではhttpsプロトコルの設定と使用を推奨します
// バージョン5.6.54からは、デフォルトでhttpsを使用します
clientConfig.setHttpProtocol(HttpProtocol.https);
// 3 cosクライアントを生成します。
COSClient cosClient = new COSClient(cred, clientConfig);



ヘルプとサポート

この記事はお役に立ちましたか?

フィードバック