web-dev-qa-db-ja.com

MVCで複数の種類の認証を使用した承認と認証

現在、私は新しいSaaSアプリケーションを構築しているチームを管理しています。

現在の構造化方法には、ビジネスロジックとデータを含むソリューションと、Webサイト(および関連プロジェクト)を保持するソリューションがあります。

現在のユーザーベースには、さまざまな種類の認証を使用するクライアントがあります。

  • aSPNETメンバーシップアーキテクチャを使用したユーザー名/パスワード
  • 自社開発SOAP開発者がSSO経由で接続できるWebサービス
  • SAML

クライアントのログイン設定は異なる場合がありますが、クライアント内のユーザーは同じ方法でログインします。当社のレガシーシステムの大きな課題は、これらがいくらか「ハッキング」され、管理が非常に難しいことです。私たちが将来のためにはるかにスケーラブルであることを確認したいと思います。

私はMVCフレームワークを使用してクレームベースの認証を調査し、それをかなりよく理解したので、私たちのチームがそれをサポートするフレームワークを構築できると確信しています。私の課題はSTS(IDサーバー)なので、いくつか質問があります。

  1. 基本的に、私は正しい方向に進んでいますか?
  2. ユーザーがどこで認証されるべきかについての知識を持っているシステムはどれですか?これはクレームベースのシステムが認証や承認を本当に心配することができないことを意味するので、STSを疑っています
  3. 私はSTSのOpenAM、OpenIDM、IdentityServerを調査しましたが、実際にそれらを接続する方法を理解できません。これらはSTSシステムですか?
  4. 私もソリューションにお金を使う用意がありますが、他に検討すべきソリューションはありますか?
5
Matthew Doyle

これはしばらくの間座っていて、私がこの問題を今までに解決したので、私は自分の質問に答えようと思いました...

私たちは自社開発のSOAPサービスを使用してSAMLを利用しているクライアントを説得することにしました。私たちは専門家ではないため、Ping Identityと提携してSAMLコンポーネントを支援しました。

私たちの設計に関しては、比較的シンプルに保つことができました。一部のSAMLクライアントは特定のユーザーのユーザー名/パスワード認証タイプも必要としていたため、SAMLとユーザー名とパスワードの両方の接続を設計しました。

IdPのみのアプローチを採用することも決定しましたが、これまでのところ問題はありませんでした。

1
Matthew Doyle