1

私たちのクライアントは、アプリケーションを開発するために私たちにアプローチしてきました.いつものように、範囲は日々拡大しています.

当初は、企業ネットワーク内に限定された専用アプリとして開始されました。ユーザー認証は、ユーザーの Windows ログインを取得し、SQLServer データベースを使用してアクセス権をホストすることによって確立されました。すべて非常に簡単です。

- アプリケーションを Web ベースにする - アプリケーションを企業ネットワークの外部でホストする-ユーザー 認証が同じように機能する (パスワードを使用せず、Windows ログインのみ)


さらに複雑なことに、彼らはアプリケーションのさまざまな機能を、HTTP リクエストを発行するだけの別のアプリケーションで使用できるようにしたいと考えています。
- ユーザーが企業ネットワークにログインする
- ユーザーが企業アプリケーションを起動する - ユーザーが
顧客の詳細を処理する
- ユーザーがボタンをクリックする
- 企業アプリケーションがホストされている Web アプリに HTTP 要求を送信する
- HTTP 要求に必要な認証と顧客の詳細が含まれる
- ユーザー認証が「自動的に完了する」 ' (人間の関与なし)
- 顧客データは安全に送信されます

私たちの最初のアプローチは彼らが望んでいたものだったので、彼らは私たちが彼らのためにこれを行うことに非常に熱心です. そのようなホストされた Web アプリは私たちの専門分野ではありませんが、それでも彼らは私たちにこれを行うことを望んでいます。だから私は今専門家にアプローチします。
- これにアプローチする方法について誰かアドバイスはありますか?
- 避けるべき落とし穴の可能性について誰か警告がありますか?

4

6 に答える 6

2

基本的に、彼らはフェデレーション アクセスについて話しているのです。ネットワーク内に認証ポイントをホストし、トークンをアプリケーションに転送して、トークンを解析して許可 (またはアクセスを停止) します。これは非常に標準的なものであり、MS はGeneva Frameworkでこれに適した基盤を提供しています。これは、プロトコルとして WSFed を使用するようにアプリケーションを変更し、認証トークンをサイレントに発行するセキュリティ トークン サービスと通信できる場合、Web サービス呼び出しにも機能します。ほとんどの場合、これには SAML を使用します。また、認証の詳細が企業ネットワークの外に出ることがないという追加のボーナスもあります.

証明書ベースの認証の提案は興味深いものですが、PKI インフラストラクチャの展開にはさらに多くの作業が必要です。これにはコストがかかる場合があります。

CardSpace は動作しません - 彼らが望むように静かではありません。OpenID も非スターターであり、サイレントでもありません。

Azure を見ている場合の追加ポイント - Azure の認証ビットは、ボンネットの下で SAML/WSFed も使用し、その中にジュネーブのビットが含まれています。したがって、クラウドに移行した場合、各顧客はネットワーク内でログイン ページを構成するだけで済みます。そのページを信頼して認証トークンを発行し、ルールに従って解析するだけで済みます。

于 2009-03-02T11:55:24.230 に答える
0

アプリの構成方法によっては、web.config の machineKey をいじって、シングル サインオン (SSO) を使用した AJAX 呼び出しを可能にすることができます。これには、認証トークンを配布してホストされているアプリにリダイレクトするためだけに、企業ネットワーク内の小さな asp.net アプリが含まれます。

2 つのアプリが同じ machineKey を共有している場合、asp.net 認証システムはユーザーがホストされているアプリに喜んでアクセスできるようにします。

このアプローチには次の問題があります。

  • システム (企業ネットワーク内の認証アプリ) に別の依存関係を導入します。これは単純なアプリですが、アクセスできない場合、問題を診断しようとすると問題に直面します。
  • 認証アプリと同じドメインにホステッド サービスが必要です (そのため、HTTP Cookie 内の認証チケットが渡されます)。
  • 情報を保護するために、ホステッド サービスの SSL 証明書も必要です。(それ自体は実際にはマイナス面ではありませんが、とにかくこれをやりたいと思うでしょう。)
  • あなたとあなたのクライアントは共有の machineKey を持つため、アプリのインスタンスをその特定のクライアントに結び付けます。
于 2009-03-02T13:11:01.100 に答える
0

おそらく、証明書ベースの認証を使用したWCF通信、つまり、会社が提供するサービスを使用する外部ユーザーに有効な証明書を提供します。これにより、ユーザー名のパスワードは不要になりますが、ユーザーはそのまま使用できます。

于 2009-03-02T11:48:52.860 に答える
0

すでにSAMLをご覧になりましたか?

于 2009-03-02T11:49:23.670 に答える
0

Windows CardSpaceは、Windows ログインと統合され、必要な SSO シナリオを可能にするため、チェックしてください。

于 2009-03-02T11:52:25.410 に答える
-1

これには、プライベート OpenID プロバイダー/サーバーを使用します。

于 2009-03-02T11:45:28.047 に答える