私はこれについて何度も考えていて、Facebook で簡単なテストを行いました。あなたが Facebook のようなサイトを持っていて、それを画像とプロフィールに分解したとします。友達と共有するかしないかを選択した画像。明らかにDBには、メタデータが共有されているかどうか、誰と共有されているかなど、メタデータに適用される値があります。
ここで、特定の画像を表示すると、そのリソース (この例では画像) の HTTPS URL が得られたとします。その時点で、ログインしたり、何らかのトークンを取得したりしなくても、リソースを表示できます。URL を取得して任意のブラウザーにロードすると、そのリソースが表示されます。確かに、それは SSL レイヤーで提供され、かなり長くて複雑な名前を持っていますが、認証なしで表示できます。
考えずにはいられません、これができる最善のことですか?このタイプのコンテンツを保護して、直接 URL を持っている場合にそれをロードできないようにすることはできますか? より機密性の高いファイルについてはどうですか? 誰かがパスを持っている場合、そのリソースに永遠にアクセスできますか? この場合、OAuth は役に立ちますか?
これらのリソースを保護する方法について大声で考えているだけだと思います。そのため、URL に直接アクセスしても、認証されずにそのリソースを常に取得できるとは限りません。不足している可能性のある別のプロセスまたは方法はありますか? もしそうなら、パフォーマンスとセキュリティの適切なバランスとは何か、またトレードオフは何か? スケーラブルなオプションを検討したいと思います。