WCF サービス (BasicHttpBinding) と通信する Silverlight 2 アプリケーションを作成しました。Silverlight コンテンツをホストするサイトは、ASP.NET メンバーシップ プロバイダーを使用して保護されています。WCF サービスから HttpContext.Current.User.Identity.Name を使用して現在のユーザーにアクセスでき、AspNetCompatibilityRequirementsMode をオンにしました。
まったく同じ Web サービスを使用して Windows アプリケーションを作成したいと考えています。認証を処理するために、認証サービスを有効にし、 「ログイン」を呼び出してユーザーを認証できます...オーケー、大丈夫です...しかし、他のサービスクライアントでその認証Cookieを設定するにはどうすればよいですか?!
両方のサービスが同じドメインでホストされています
- MyDataService.svc <- 私のデータを扱うもの
- AuthenticationService.svc <- Windows アプリが認証のために呼び出す必要があるもの。
Windows クライアント用の新しいサービスを作成したり、別のバインディングを使用したりしたくありません...
クライアント アプリケーション サービスは別の代替手段ですが、すべての例は、ユーザー、ロール、およびプロファイルを取得する方法を示すことに限定されています...しかし、クライアント アプリケーション サービスを使用して認証されると、その認証 Cookie を取得する方法があるはずです。同じサーバーにコールバックするときにサービスクライアントに接続されました。
同僚からの入力によると、解決策は wsHttpBinding エンドポイントを追加することですが、それを回避できることを願っています...