問題タブ [formsauthentication]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - フォーム認証に参加しない HttpHandler を作成できますか?
web.config の Logout.aspx に登録されているログアウト ハンドラーを作成しました。これをどのパスからでも実行できるようにしたい。それはうまくいきます。私のマスター ページは、チケットまたはセッションの有効期限が切れる 1 分前にユーザーを自動的にログアウトさせるクライアント スクリプト関数を登録します (残り 2 分からカウントダウン警告が表示されます)。ただし、チケットの有効期限が切れると思われる 1 分前に Logout.aspx にリダイレクトしても、Logout.aspx はそれらを認証済みと見なさず、ログイン ページにリダイレクトすることがあります。もちろん、ログインするとすぐにログアウト ページにリダイレクトされ、ログアウトされます。
FormsAuthentication に参加しないようにハンドラーを登録する方法はありますか。これはおそらくIIS設定を使用して簡単だと思いますか?IIS7を使用しています。助言がありますか?
私のweb.config:
私のコード:
c# - フォーム認証でのログインへのリダイレクトの代わりに転送
クローラーがそれらにアクセスしようとすると、ログインページにリダイレクトされます。
ログインページでは、クローラーが各ページが異なることを確認できるように、ページの機能の説明を書きます。
ここでの問題は、ボットがリダイレクトであることを認識するのに十分なほど賢いことです。
追跡されない URL サイトマップの URL のサンプルをテストしたところ、一部の URL が他の場所にリダイレクトされることがわかりました。別の URL にリダイレクトするのではなく、最終的な宛先 (リダイレクト ターゲット) を指す URL をサイトマップに含めることをお勧めします。HTTP エラー: 302
RedirectToLoginPage(String) でリダイレクトを使用する代わりに、Microsoft が Server.Transfer を使用した場合、Google はそれが実際に同じページであることを決して認識しません。
何か案は?
c# - NullReferenceExceptionをスローするFormsAuthentication.SignOut
この問題はこの投稿に関連しているようですが、スレッドから解決策を推測することはできませんでした。
継承したアプリケーションでこのコードに気づきました(ログファイルで例外が発生していることに気付いた後):
私はいくつかのことを疑問に思っています。まず、SignOutはどのようにnull参照例外をスローしますか?それは例外的なケースですか、それともプログラムで本質的に間違ったことをしていますか?次に、この例外がスローされる前に、この例外を回避するために何をテストする必要がありますか?
15:51:57,288 [13]エラーASP.global_asax-System.NullReferenceException:オブジェクト参照がオブジェクトのインスタンスに設定されていません。System.Web.Security.FormsAuthentication.SignOut()のMvcApplication.Session_End
ありがとう
asp.net - リテラルへの文字列としてhtmlを生成するときにフォーラム認証サインアウトが機能しない
動的に生成されたHTML(文字列)を使用してログアウトボタンを作成しようとしています。
ご覧のとおり、ログアウト方法はサーバーコードにあります。
私が何をしても、これは機能しないようです(起動しない、ログアウトしないなど)。これを引き起こしているリテラルへのHTML文字列としてこれを行うことについて何かありますか?
誰かが私にこれを行う方法を教えてもらえますか?
ありがとう!
asp.net - ページまたはハンドラーが FormsAuthentication チケットを更新できないようにする
シングル サインオンのフォーム認証チケットを共有する単一のドメインに複数のアプリがあります。また、各ページには、セッションの有効期限が切れる 2 分前にユーザーに警告し、ログアウトまたはセッションの延長を許可する JavaScript があります。カウントダウンが 0 になると、自動的にログオフされます。これはすべてうまくいきます。ただし、ユーザーが複数のブラウザー ウィンドウまたはタブを開いてさまざまなアプリを操作すると、惨めに失敗します。ユーザーがウィンドウ B で作業中にウィンドウ A がタイムアウトした場合、ユーザーは次の要求で B からサインアウトされます。
解決策はありますが、実装できないようです。基本的には、ページをレンダリングするときに、チケット発行日のティックを書き出します。次に、自動ログアウトするときに、ハンドラーを ajax 呼び出して、それらのティックが現在のフォーム認証チケットのティックと一致するかどうかを確認します。一致しない場合は、別のアプリがチケットを更新していることがわかるので、ログアウトしません。問題は、slidingexpiration = true を使用しているため、チケットを更新しない汎用ハンドラーを作成できないことです。
以下のハンドラー コードでは、クエリ文字列で送信している値が現在のチケットのティックと一致する場合、データは 0 として返されます。残念ながら、ハンドラーを要求するだけでチケットが更新され、常に新しいティック カウントが返されます。
チケットを拡張せずにサーバーから JSON リクエストを取得する方法についてのアイデアはありますか?
asp.net - ASP.NET FormsAuthentication Cookie がユーザーを認証しないのはなぜですか?
デフォルトの SqlMembershipProvider と FormsAuthentication を使用するサイトがあります。組み込みのログイン コントロールを使用したり、プログラムですべてのメソッドを呼び出してユーザーを認証したり、同じ結果を得ることができます。認証が必要なページに入らない。
デフォルトのログインコントロールは単に「機能する」はずなので、表示する実際のコードはありませんが、私が試したカスタムコードは次のとおりです。
このコードでは、Membership.ValidateUser() が成功し、 FormsAuthentication.RedirectFromLoginPage() と FormsAuthentication.RedirectFromLoginPage() の両方が Cookie を正常に設定しました。その Cookie は認証を検証するために機能しません。すべての Cookie を削除し、それらが FireCookie で再度作成されるのを確認して、これを確認しました。Cookie 名は web.config にあるものと一致し、ドメインは "/" で、有効期限は予想どおりです (以下を参照)。
私のweb.configの関連セクションは次のとおりです。
ここで非常によく似た質問からの提案に基づいて、web.configファイルにmachineKeyエントリも追加したことに注意してください(これは私の問題を解決しませんでした)。また、参考までに、上記の timeout=525599 は、永続的な Cookie の場合、1 年未満で 1 分です。
c# - SQL Server DB テーブルに保存されたログインで FormsAuthentication を使用するには?
ログインに FormsAuthentication を使用して、ASP.NET (C#) で新しい Web アプリケーションを作成しています。標準の FormsAuthentication セットアップが現在実施されており、ユーザー名とパスワードは通常どおり web.config で指定されており、このセットアップはうまく機能しています。でも、
このログイン設定をデータベース内の SQL Server テーブルにリンクしたいと考えています。このテーブルには、ユーザー名とパスワードを含む、各ユーザーのユーザー アカウント情報が格納されます。基本的に、次のコード行が、通常のように web.config ではなく、この DB テーブルでユーザー名とパスワードを検索する方法を見つけたいと思います。
FormsAuthentication.Authenticate(txt_username.Text, txt_password.Text);
しかし、私はこれを正確に行う方法について途方に暮れています。Membership.ValidateUser について読んできましたが、それを使用してデータベースのユーザー テーブルのユーザー名とパスワードにリンクする方法がまだ見つかりません。
どんな助けでも大歓迎です!(ちなみに、これは私の最初の投稿なので、私が犯したかもしれない初心者の間違いを遠慮なく指摘してください)。
c# - 1つのページでFormsauthenticationを無効にする必要があります
Formsauthenticationとajax呼び出しに問題があります。通常のasp.netWebサイトでFormsauthenticactionが機能する方法が気に入っています。
ただし、asp.net Webサイトに、AJAXを使用して呼び出されるページがあります。このページでは、場合によってはResponse StatusCodeがUnauthorized(401)に設定されます。
これで応答が終了するはずです。この401ステータスコードがフロントエンドに伝播されることを確認したいと思います。ただし、Formsauthenticationは別の方法を決定し、このステータスを302に変更して、ログインページにリダイレクトします。したがって、UIでステータス401を確認できません。
さらにお知らせします。IIS7でasp.net4.0Webサイト(MVCではない)を実行しています。
次のノードでweb.configを構成してみました。
しかし、Unauthorizedステータスを設定すると、それでもFormsauthenticationモジュールがトリガーされると思います。
asp.net - Uploadifyを使用するときに.ashxハンドラーでFormsAuthenticationチケットにアクセスするにはどうすればよいですか?
ashxハンドラーがあり、JSON呼び出しを介してそれにアクセスしようとしているユーザーが、実際にフォーム認証セッションを持っていることを確認したいと思います。これは可能ですか?
asp.net-mvc-3 - MVC 3 FormsAuthentication デプロイ時に機能しない
私の開発環境で正常に動作する MVC 3 アプリケーションがあります (以前に聞いたことがあるはずです..)テストのために無料のホスティング サービスhttp://somee.comにデプロイしています。.NET フレームワークは 4 に設定されています。 . カスタム メンバーシップ プロバイダーがあります。データベースで確認できるように、ユーザーを登録できますが、ユーザーは認証されません。登録後またはログオン時に、常にログオン ページにリダイレクトされます。私はbin展開を行い、binフォルダーにこのdllを持っています:
System.Web.Mvc
Microsoft.Web.Infrastructure
System.Web.Razor
System.Web.WebPages
System.Web.WebPages.Razor System.Web.Helpers
構成内: ...
コントローラー:
今アイデアが不足しています...