S3のエンドポイントまたはリージョンの不一致を修正する

dosya S3のベースパス、パス形式、ワークスペースのバケット、署名の入力値を修正します。公開されテスト済みのクライアントの既定値はus-east-1です。

最終確認日

スクリーンショットは英語版の画面です。

dosyaのS3ゲートウェイはAPIホストの配下にあります。公開済みのクライアント設定では、エンドポイントhttps://api.dosya.dev/s3、公開リージョン値us-east-1、パス形式のアドレス指定、wks_…のようなワークスペースIDと同じバケット名を使います。リージョンは必須のクライアント項目に入力する値です。ゲートウェイは特定の署名リージョンを強制しません。

S3のエンドポイントまたはリージョンの不一致を修正する4段階の手順図。エンドポイントをhttps://api.dosya.dev/s3に設定し、/s3ベースパスを維持します。公開値us-east-1を使います。一貫して署名されていれば別のリージョンも受け入れられます。パス形式のバケットアドレス指定を有効にし、/s3/{workspace-id}/{key}を送信します。修正後に許可されたプレフィックスを1つ一覧表示し、返されたオブジェクトキーを確認します。
この図は、エンドポイントをhttps://api.dosya.dev/s3,に設定して/s3ベースパスを維持し、公開値us-east-1を使う手順を示します。一貫して署名されていれば別のリージョンも受け入れられます。パス形式のバケットアドレス指定を有効にして/s3/{workspace-id}/{key}を送信し、修正後に許可されたプレフィックスを1つ一覧表示して返されたオブジェクトキーを確認します。スクリーンショットを原寸大で開く。

始める前に

親APIキーで**「S3」ゲートウェイ**を許可したS3認証情報を使ってください。ユーザーは引き続きバケットのワークスペースに所属し、ロールにS3アクセス権限が必要です。オブジェクトの一覧表示にはファイルアクセス権限も必要です。

署名リージョンはプロトコルの設定であり、アップロードしたデータの物理的な保存場所ではありません。dosyaは新しいオブジェクトをワークスペースに設定されたリージョンに保存します。クライアント向けの手順と互換性レスポンスではus-east-1を公開しています。一方、署名検証では各リクエストの認証情報スコープに記載されたリージョンとサービスから署名キーを導出します。

手順

  1. シークレットを公開しないようにクライアントのプロファイルを開き、エンドポイントをhttps://api.dosya.dev/s3と1文字ずつ比較してください。
  2. 公開され本番環境でテスト済みのクライアント設定にはus-east-1を使ってください。認証情報スコープと署名キーに同じ値を一貫して使っていれば、別のリージョン自体は不一致ではありません。
  3. パス形式のアドレス指定を有効にし、ワークスペースのサブドメインではなく/s3/{workspace-id}/{key}の形式でリクエストを送信します。
  4. バケットには表示名、スラッグ、フォルダー名ではなく、dosyaから取得した正確なワークスペースIDを設定してください。
  5. 範囲を絞ったルート一覧またはHEADリクエストで再テストしてください。SignatureDoesNotMatchの場合は、シークレット、正規パス、クエリ、署名対象ヘッダー、本文ハッシュ、日付、リージョン、サービスをまとめて確認します。リージョンだけを変更しても別の署名の問題は修正されません。
  6. リクエストが成功したら、許可されたテスト用プレフィックスを1つ一覧表示し、返されたキー名を確認してからクライアントの通常の処理を再開してください。
「S3のエンドポイントまたはリージョンの不一致を修正する」の参考画面:dosya S3互換アクセスの概要ページ。
「S3のエンドポイントまたはリージョンの不一致を修正する」の参考画面:dosya S3互換アクセスの概要ページ。スクリーンショットを原寸大で開く。

期待される結果

クライアントは実際の/s3リクエストパスに署名し、対象のワークスペースのバケットに接続します。有効な一覧にはAPIキー、メンバーのロール、任意のフォルダー起点で許可されたワークスペースとオブジェクトだけが返されます。

InvalidAccessKeyIdは不明または取り消し済みのS3アクセスIDを示します。SignatureDoesNotMatchはクライアントとゲートウェイが異なる正規リクエストまたは署名キーを計算したことを示し、us-east-1以外のリージョンが原因であることの証明にはなりません。NoSuchBucketはワークスペースIDが誤っているか、このユーザーが利用できないことを示します。

関連ガイド

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

評価の結果を読み込んでいます…

投票すると、回答を変更できるように、必要な投票用Cookieが最長180日間保存されます。

質問と回答

このガイドの手順について質問できます。質問は確認後に公開されます。

公開の質問には、アカウントの詳細、認証情報、非公開ファイルを含めないでください。これらについては 非公開サポート をご利用ください。

質問を読み込んでいます…

    dosyaアカウントにサインインすると、質問を投稿できます。

    やり直す前に結果を確認

    操作をもう一度確認する必要があるときは、次の共通の確認事項をご利用ください。