S3エンドポイントとパス形式のエラーを解決する

/s3エンドポイントのリクエストパスにワークスペースIDを維持し、仮想ホスト形式のデフォルト設定を修正して、許可されたS3認証情報で安全に再テストします。

最終確認日

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

dosyaはhttps://api.dosya.dev/s3にマウントされるため、クライアントはワークスペースのバケットをURLパスに含める必要があります。仮想ホスト形式ではホストが変わり、ゲートウェイのルートが期待するバケットのパス部分が省かれます。

S3エンドポイントとパス形式のエラーを解決する4段階の手順図。リクエストパスで/s3とワークスペースIDを確認し、両方のパス部分を保持します。AWSまたはパスのないAPIエンドポイントをhttps://api.dosya.dev/s3に置き換えます。クライアントでパス形式のアドレス指定を有効にし、バケットをリクエストパスに含めます。浅い階層の一覧リクエストを再試行し、正確なS3ステータスとエラーコードを記録します。
この手順図は、/s3とワークスペースIDを確認して両方のパス部分を保持し、AWSまたはパスのないAPIエンドポイントをhttps://api.dosya.dev/s3に置き換え、パス形式のアドレス指定を有効にしてバケットをリクエストパスに含め、浅い階層の一覧リクエストを再試行し、正確なS3ステータスとエラーコードを記録する流れを示します。スクリーンショットを原寸で開く。

始める前に

S3シークレットをスクリーンショットやログに含めないでください。ネットワーク設定を変更する前に、元のAPIキーでS3が許可され、有効期限が切れていないことを確認してください。

rcloneのS3バックエンドでは、リリース済みの動作する設定にprovider = Other、endpoint = https://api.dosya.dev/s3、force_path_style = true、region = us-east-1を使用します。テスト済みの大容量アップロードのしきい値は64Miです。

手順

  1. 失敗したリクエストURLを調べ、ホストapi.dosya.dev上の/s3/{workspace-id}/{object-key}になるべきことを確認してください。
  2. AWSのデフォルトエンドポイントやパスのないhttps://api.dosya.devをhttps://api.dosya.dev/s3に置き換えてください。
  3. クライアントのパス形式オプションを有効にしてください。名前はツールによりforcePathStyle、s3ForcePathStyle、force_path_styleのいずれかです。
  4. リージョンをus-east-1、バケットをdosyaのワークスペースIDそのものに設定してください。
  5. HEADバケットまたは浅い階層の一覧を再試行してください。rcloneだけでSignatureDoesNotMatchが返る場合は、上流で書き換えられるヘッダーが署名対象にならないようsign_accept_encoding = falseを設定してください。
  6. 成功したリクエストが目的のバケットに届くことを確認し、範囲を限定したオブジェクト操作を1つ実行して正確なキーを確認してください。
「S3エンドポイントとパス形式のエラーを解決する」の参考画面: dosyaのS3互換アクセスの概要ページ。
「S3エンドポイントとパス形式のエラーを解決する」の参考画面: dosyaのS3互換アクセスの概要ページ。スクリーンショットを原寸で開く。

期待される結果

クライアントがゲートウェイの実際のパスを送信して署名し、dosyaがワークスペースをバケットとして解釈します。リクエストは無関係なAPIルートや仮想ホストではなくS3のルートに届きます。

認証がまだできない場合は、InvalidAccessKeyIdとSignatureDoesNotMatchを区別してください。前者は有効なアクセスIDが必要です。後者はシークレット、ベースパス、署名済みヘッダー、時計、クライアントの正規化を確認する必要があります。

関連ガイド

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

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

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

質問と回答

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

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

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

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

    やり直す前に結果を確認

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