3

メインの WebApplication の下のフォルダーで、YetAnotherForum の最新バージョンを実行しています。サブフォルダーは IIS のアプリケーションとして構成されており、フォルダーへの移動とログインはうまく機能します。YAF はメンバーシップ プロバイダーでセットアップされ、フォーム認証を使用します。

私が今やろうとしているのは、ユーザーをメイン Web サイトからフォーラムに自動ログインさせることです。メイン Web サイトでは、セッションと Cookie によるカスタム認証を使用しています。組み込みの ASP.NET 認証またはメンバーシップ コンポーネントは使用しません。

基本的に私が実現したいのは、ユーザーがリンクをクリックしてフォーラムにアクセスすると、サブフォルダーに送信する前に YAF アプリケーションでユーザーを認証する処理ページにユーザーが送信されることです。

メイン アプリは組み込みの認証要素を使用しませんが、認証モードをフォームに設定し、その下のタグが YAF web.config のタグと一致することを確認しました。次に、処理ページで FormsAuthentication.SetAuthCookie(username, true) を呼び出してからリダイレクトします。しかし、とにかく YAF は私をログイン ページに戻します。ここからどこへ行くべきかわからない。

メインサイト: example.com/

web.config:

<authentication mode="Forms">
  <forms name=".YAFNET_Authentication" protection="All" timeout="43200" cookieless="UseCookies" />
</authentication>

YAF は、example.com/yaf (IIS の個別の Web アプリケーション) です。

web.config

<authentication mode="Forms">
  <forms name=".YAFNET_Authentication" protection="All" timeout="43200" cookieless="UseCookies" />
</authentication>

処理中のページ: (疑似) example.com/autoLogin.aspx.cs

public void AutLogin(){
    string userName = doStuffToGetUsername();
    YAFStuff.CreateUserIfNeeeded(userName);

    FormsAuthentication.SetAuthCookie(userName, true);
    Response.Redirect("/yaf/");
}
4

1 に答える 1

0

これを整理しようとして2日間Googleを検索していましたが、最終的に解決策に出くわしました. 暗号化プロセスのために、両方の web.config ファイルで一致する MachineKey が必要でした。

http://forum.yetanotherforum.net/yaf_postst8780_Custom-membership-and-role-provider-with-YAF-Profile-provider.aspx

甘い!

于 2010-02-02T16:24:15.133 に答える