1

私のasp.netアプリは、正常に機能するフォーム認証を使用しています。また、誰かがリンクをたどることができ、ログインする必要がない「魔法の」リンクを作成できるようにしたいと考えています。たとえば、ユーザーがアクセスした場合

http://myapp.com/viewstuff.aspx

login.aspx最初にリダイレクトされますが、

http://myapp.com/viewstuff.aspx?ThingId=1234&Expires=20121004153200&Signature=aksdjfhalsdfydmvbsdkfjhysdk

次に、ゲスト アカウントとして自動的にログインし、要求されたものを表示できるようにします。このようなリンクを生成し、署名が有効であることを確認するロジックを記述できますが、ロジックを ASP.NET ライフサイクルのどこに配置すればよいかわかりません。助言がありますか?

現在、ロジックを Application_AuthorizeRequest に入れましたが、ユーザーを認証したら Redirect() する必要があるため、理想的ではないようです。何かを設定できるようにしたいので、「OK、この人を認証して ID を設定しました。リクエストを続行させてください」と言ってください。

誰かがこれを実装する例を持っていれば、それは素晴らしいことです。

4

1 に答える 1

-1

さて、あなたは正しい軌道に乗っているようですね。viewstuff.aspx で認証が必要な場合は、ログイン ページにリダイレクトされるため、そこ (login.aspx.cs) にロジックを配置して、クエリ文字列を取り出し、値を分解し、ユーザーを認証してから渡す必要があります。 returnurl に戻ります。

于 2012-10-04T14:24:01.263 に答える