0

私はasp.net MVC 3のWebサイトとSilverlight 4ビジネスアプリケーションを持っています。これとは別に、どちらもASPメンバーシップシステム(RIAサービスによるSilverlightアプリ)を使用しています。別々に実行して、WebサイトまたはSilverlightビジネスアプリからユーザーを作成したり、ログインしたりすることができます。この点でも、同じデータベースを共有しているため、いずれかのユーザーの登録は同じデータベース内の同じテーブルに移動します。asp.net mvc 3のWebサイトとSilverlight 4のビジネスアプリケーション間で認証を共有するRIAサービス

私がしたいことは、MVC 3のWebサイトでSilverlightビジネスアプリケーションをホストし、その2つの間で認証を共有することです。これは、WebサイトにSilverlightアプリを起動するリンクがあることを意味します。そのため、WebサイトからログインしてSilverlightアプリを起動すると、Silverlightアプリには既にログインしていることがわかります。

また、Silverlightアプリをスタンドアロンのデスクトップアプリケーションとして起動し、そこにRIAサービス経由でログインすることができます。この部分はすでにできるが、それを維持する必要がある。

MVC 3のWebサイトでSilverlightビジネスアプリケーションをホストし、認証を共有する方法の良いアイデアはありますか?ビジネスアプリケーションを作成したときに生成されるデフォルトのWebアプリケーションをMVC 3 Webアプリケーションに変換する方法はありますか?ウェブサイトをMVCにすることはできませんが、認証の共有はできますか?

ご迷惑をおかけしますが、ご了承ください。私は実際には、これのチュートリアルや例を見つけるのに迷っています。私はこれが共通の欲求であると考えました。

答えて

1

Silverlightアプリケーションが最初にログインを処理するように開発されていた場合は、これを行うのに問題はありません。 ASP.NET MVC3アプリケーション(FormsAuthentication.SetAuthCookie)から認証し、Silverlightアプリケーションをホストするビューを持つことができます。 SLアプリケーションがプロセスの一部を起動するときに、WebContext.Current.User.IsAuthenticatedがそれを引き継ぐかどうかを確認することです。ユーザーが既に認証されている場合は、SLアプリがログインをバイパスする必要があります。

ASP.NET MVC3アプリケーションでは、SLプラグインをホストするビュー用のコントローラに[Authorize]を貼り付けることができます。ユーザーが認証されない限り、このビューは表示されません。

+0

トピックをもう少し詳しく説明している最近のスレッドです。 http://forums.silverlight.net/forums/p/232823/570994.aspx#570994 –

関連する問題