2012-02-13 6 views
0

私はasp.net c#Webサイトを開発していますが、私はユーザー認証を行いたいと思っています。何の役割も何もなしに。asp.netで認証を行う方法をアドバイスする必要があります

私はすべてのユーザーデータを格納するユーザーテーブルを持つデータベースを持っていますが、このテーブルは多くの他のテーブルとの関係を持っています。

私は認証コントロールからasp.netが好きですが、問題はそれが自分のカスタムデータベースのテーブル、ビュー、ストアドプロシージャをたくさん持っていることです。私は私の問題のためにより簡単な解決策が必要です。私が欲しいのは、私のことを覚えておいて、いつでもユーザーがログインしているかどうかをチェックし、ユーザー名またはIDを取得することです。もちろん私はカスタムリレーションシッププロバイダを試しましたが、私はaspユーザーテーブルを自分のユーザーテーブルに変更できませんでした。

私はセキュリティ機能を覚えておいて、いつでもユーザーIDを取得する必要があります。

答えて

2

資格情報を保存するデフォルトの方法を守らなくてもフォーム認証を活用できます。ログイン時にユーザーの存在(パスワードの確認など)を手動で確認し、手動でauth cookieを作成し、auth ticketに関連付けます。 HttpContext.Userプロパティで現在のユーザーにアクセスできます。

+0

お返事ありがとうございます。この方法は安全ですか? –

+0

このメソッドは、認証のための基本的なメカニズムを提供します。たとえば、認証なしでアクセスできるページや、適切な設定がweb.configに存在する場合に、ユーザーをログインページに自動的にリダイレクトすることはできません。しかし、セキュリティの全体的な話題(特にWebアプリケーションのセキュリティ)ははるかに複雑であり、別の質問の対象となる可能性があります。 – n535

関連する問題