0

私はAsp.NETでいくつかの作業を行いましたが、FormAuthenticationを使用したユーザー認証にかなり慣れています

今、私はデスクトップアプリケーションに取り組んでおり、Windowsフォームアプリケーションで上記のようなものを持ちたい.Asp.NETで行ったように、アプリケーションデータベースまたはxmlを使用してユーザーを作成および認証したい. これまでのところ、私が望むようにこれを達成する方法はありませんでした。

どんな助けでも素晴らしいでしょう!

4

2 に答える 2

1

Windows アプリケーションで FormsAuthentication を使用しても意味がありません。あなたができることは、クラスを使用するMembershipことですMembershipUserRoles必要なのは、app.config でメンバーシップ プロバイダーとロール プロバイダーを構成することだけです。

FormsAuthentication実際にはユーザーを認証しません。呼び出すとAuthenticate、それが廃止されたメソッドであり、代わりに使用されFormsAuthenticationていることがわかります。Membership.ValidateUser

これらの機能の欠点の 1 つは、それらがSystem.Web名前空間の一部であることです。つまり、Windows アプリケーション内で Web 機能を使用する必要があります。しかし、それが仕事を成し遂げ、要件を満たすことができるなら、それを使ってください.

于 2013-06-25T06:41:22.950 に答える
1

Windows デスクトップ アプリケーションは、ASP.NET Web アプリケーションとはまったく異なります。
異なるフォームを個別に呼び出すことはできません。
(アプリケーションをハッキングすることはできますが、それを行うと、パスワード保護を削除することもできます)
したがって、フォーム認証は意味がありません。
起動ウィンドウとしてログイン ウィンドウを作成し、データベースに対してユーザー名とパスワードをチェックできます。
そしてそれはそれについてです。
これは Windows アプリケーションです。メンバーシップ プロバイダーやフォーム Cookie チケットなどは必要ありません。HTTP とは異なり、Windows デスクトップ アプリケーションはステートレスではないためです。

PS: WinForms アプリケーションを実行する場合は、ActiveDirectory 認証を使用してログインしてください。

于 2013-06-25T06:35:15.687 に答える