問題タブ [digital-ocean-spaces]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
64 参照

laravel - Digital Ocean Space でファイルが公開されないようにするにはどうすればよいですか?

こんにちは皆さん、私は自分のファイルが公開されないようにしたいというデジタルオーシャンに固執しました。

初めに。このように.envファイルを設定します

次に、 config->filesystem.php を設定します

その後、コントローラーにファイルを保存させます

ブレード テンプレートでは、次のようにファイルを取得します

これは、可視性をパブリックに設定しない場合に得られるものです

filesystem.php の可視性を public に設定した場合。認証なしでファイルを見ることができます。

助けやアドバイスをよろしくお願いします。

0 投票する
0 に答える
283 参照

amazon-s3 - Haproxy 経由のリバース プロキシ S3 バケット

Haproxy (具体的には Haproxy Ingress) を使用して、S3 バケット (DigitalOcean Spaces を使用しています) にリバース プロキシをセットアップしようとしています。

いくつかの試行錯誤の後、プロキシを使用できるようになりましたが、まだうまくいきません。
GET リクエストは正常に機能しますが、「403 - SignatureDoesNotMatch」というエラーが発生するため、PUT リクエスト (putObject など) は機能しません。残念ながら、その理由を見つけることができないようで、広範囲に検索しました。

現時点での私のバックエンドは次のとおりです。

「.ams3.digitaloceanspaces.com」を使用してサーバーを無効にしようとしましたが、うまくいきませんでした。

ヘッダーと関係があると思いますが、「Authorization」および「Connection」ヘッダーを追加しようとしましたが、どれも機能していないようです。

バックエンドプロトコル「h2-ssl」も使用しています。これがないとプロキシできなかったからです。

前もって感謝します!


ある程度の進歩があり、署名バージョン v4 は機能しませんが、v2 は機能します。
ただし、私が正しければ、docker レジストリーは v4 を使用しており、最新の標準と互換性があるようにしたいと考えています。

私は S3 についてあまり知りません。現在、認証の違いに関するドキュメントを読んでいますが、どんな助けも大歓迎です!


したがって、さらに調査した後、署名バージョン v4 は要求 URI を使用して署名を計算します。バケット自体が同じ署名を計算すると、別の URI をリッスンするため、リクエスト URI は異なります。

リクエストがnginxによって処理されるときにnginxを使用して署名を再計算している人を見てきましたが、Haproxyでそれを行う方法を見つけていません.

現時点で最善の方法は、署名バージョン v2 を使用することですが、これはほとんどの S3 バケット プロバイダーで廃止される可能性があります。