私は現在、ログインしたユーザーが別の人に1回限りのリンクを送信するための1回限りの共有機能を作成しています(以前のユーザーアカウントはありません)。
現時点では、ユーザー/パスワードの資格情報を検証し、認証を処理するベースコントローラーがあり、すべてのコントローラーはそのベースコントローラーから拡張されています。
ワンタイムシェアを処理するには、次のようにします。
- 一意の ID を生成する
- データベースにNULLに設定された日付フィールドを持つIDを挿入します
- 一意のIDをパラメーターとして受け取るコントローラーへのリンクをユーザーに送信します
- リンクにアクセスしたときに、一意の ID が存在し、日付が NULL の場合は、ユーザーに正しいビューを表示し、日付フィールドをその時点の TIMESTAMP に設定します。
これは機能しますが...
安全なパスから画像を取得し、画像として出力する別のコントローラー ( /media ) があります。ワンタイム ビューでは、次のように画像にアクセスしています。
<img src="/media/image-id" />
そのコントローラーは、ログインを処理する基本コントローラーから拡張されるため、アカウントのないワンタイム ユーザーはアクセスを拒否されます。
このレベルのセキュリティを失いたくはありませんが、コンテンツへの 1 回限りのユーザー アクセスを許可する方法が必要です。
- ワンタイム ユーザーのコントローラ セキュリティを回避するには、どのような方法をとればよいですか?
洞察をありがとう!
S.