1

私は自分の状況について混乱しています。別のマシン (およびドメイン) に個別のアプリケーション (ASP.NET 4.0 Web フォームと ASP.MVC) をデプロイしており、それぞれに独自のユーザーとロールの構造 (個別の MS SQL データベース) があります。MVC アプリは現在、実装の初期段階にあります。Web フォーム アプリは運用環境で動作します。

私がする必要があるのは、これらのアプリ間で SSO を実装することです。自動認証が必要です。asp.net Web フォーム アプリケーションにログインした後、asp.mvc アプリケーション側で認証を受ける必要があります。

認証 Cookie を介して SSO を実装するための要件は、両方のアプリケーションを共通のデータベースとドメイン (またはサブドメイン) で動作させることであることは知っていますが、私の場合、最小限の労力で SSO を使用する可能性は本当にありませんか?

現在、私には2つのアイデアがあります:

1) サードパーティのツール (OAuth?) を使用します - しかし、私はまだそれについて読んでいませんでした

2) ユーザーを認証するために Mvc 側でいくつかの WCF サービスを作成します。Web フォーム アプリは wcf サービス (暗号化されたデータ) を介してログインとパスワード (ハッシュ?) を送信し、mvc アプリはこのデータを検証します。肯定的な検証の後、mvc アプリはこのログインとパスワードの FORMS 認証を開始します。

私のコンセプトが可能で安全かどうかはわかりません。

これらの 2 つの概念のいずれかに同意しますか、または私の問題の解決策について他に何か提案はありますか? 私はあなたの助けに感謝します。


EDITED - 説明の必要性

お客様の要件 - Web フォーム アプリは古く、現在は運用環境で動作しています。ユーザーとロールの MSSQL データベース テーブルに接続された独自のカスタム メンバーシップ プロバイダーがあります。新しいアプリケーションは asp.mvc 4 で作成され、独自のユーザー登録ページとユーザー構造などを持ちます。別のマシンに展開する必要があります。

古いアプリケーションにログインした後、新しいアプリケーションのいくつかの機能を表示する必要があるため、古いアプリケーションの一部のユーザーは新しいアプリケーションで (開始時に) 複製されます。彼らの観点からは、新しいアプリケーションは古い Web フォーム アプリケーションの一部 (新しいモジュール) のように見えるに違いありません。一方、新しいアプリケーションは独立している必要があり、新しいアプリケーションのみを使用するユーザーのプールになります。両方のアプリケーションは、1 つのビジネス プロセスのみの場合に統合されます (wcf または残りのサービスを介した注文の同期)。


4

2 に答える 2

0

私たちはあなたの問題に似たことに取り組みました.しかし、私の場合、2つのドメインは同じADサーバーの制御下にあります.ドメイン間で共有するCookieを使用することで、SSOをクロスチェックしています. このリンクをたどってください

于 2013-10-30T09:02:20.507 に答える
0

IdentityServer3などを使用して Idp (別名 STS または OpenID プロバイダー) を実装し、1 つのデータベース ユーザーを内部認証プロバイダーとして選択し、他のデータベース ユーザーを外部認証プロバイダーとして選択できます。

于 2016-07-13T17:42:11.037 に答える