最終更新日:2025-08-18 15:33:44
管理認証情報 accessToken は、オブジェクトストレージサービスがリソース管理インターフェース要求の正当性を検証するために使用するセキュリティトークンです。安全のため、この認証情報は必ずビジネスサーバー側のみで使用し、誤った認可による悪用を避けてください。
管理認証情報を構築するには、以下2つのデータが必要です。
セキュリティキー (SecretKey)
SKはオブジェクトストレージプラットフォームのキー管理者から取得してください。
アクセスキー (AccessKey)
AKもオブジェクトストレージプラットフォームのキー管理者から取得してください。
1. 署名対象文字列(signingStr)の作成
HTTPリクエストから以下の要素を抽出します:
<path>:APIパス(例: /list)<query>:URLクエリパラメータ(例: bucket=test&limit=100)<body>:リクエストボディの生データ組み合わせルール(シナリオに応じて選択):
| シナリオ | 算出式 | 適用例 |
|---|---|---|
| クエリあり + ボディなし | signingStr =<path>?<query>\n |
バケットリソース一覧 |
| クエリあり + ボディあり | signingStr =<path>?<query>\n<body> |
複雑な条件検索 |
| クエリなし + ボディなし | signingStr =<path>\n |
ファイル削除 |
| クエリなし + ボディあり | signingStr =<path>\n<body> |
音声・動画処理指示 |
具体例:
# 例1:リソース一覧インターフェース
path = "/list"
query = "bucket=user-data&limit=50"
signingStr = f"{path}?{query}\n" # 必ず末尾に改行を付加
# 例2:音声・動画処理インターフェース
path = "/fops"
body = '{"operation":"transcode","format":"mp4"}'
signingStr = f"{path}\n{body}" # パスとボディは改行で区切る
2. HMAC-SHA1署名の生成
SecretKey を用いて signingStr に HMAC-SHA1 署名を実施し、Sign を求めます。
Sign = hmac_sha1(signingStr, "<SecretKey>")
3. 署名データをURLセーフBase64エンコード
Sign をURLセーフBase64でエンコードして encodeSign を得ます。
encodeSign = urlsafe_base64_encode(Sign)
4. 管理認証情報の生成
AccessKey と encodeSign を以下のルールで連結し、管理認証情報 accessToken を生成します。
accessToken = <AccessKey>:<encodeSign>