7

VS 2013 で ASP.NET MVC 5 プロジェクトを開始していますが、最終的には認証のために CAS (Central Authentication Service) をサポートする必要があります。Jasig には公式の .NET クライアントがありますが、やや古く、MVC 3 日で作成されたようです。

このテクノロジを新しい MVC 4 または 5 と組み合わせた経験のある人はいますか? 私が特に懸念しているのは、MVC 5が以前のフォーム認証の代わりにOWIN認証を使用するようになったことです。これは、CAS が ASP に結び付く方法です。

後で CAS を追加するときが来ても、コードの主要部分を再作成するために慌てないように、このプロジェクトを順調に開始したいと考えています。VS 2013 の MVC 5 でこれを行うことをお勧めしますが、VS 2012 の MVC 4 もオプションです。

e: SO が好むように、私は実際には「質問をした」わけではないことに気付きました。要するに、MVC 5 で CAS を使用できますか、どのような制限に遭遇しますか、プロジェクトに統合するために必要な特別な回避策 (ある場合) は何ですか?

4

1 に答える 1

2

現在のバージョンの CAS クライアントは MVC 5 で引き続き動作しますが、残念ながら、クレーム ベースの認証に依存するものを利用することはできません。これは、File-New Project を使用するときにインストールされるパッケージの一部を削除する必要があり、従来のフォーム認証モジュール アプローチに戻す必要があることを意味します。また、.NET 4.0 以降、FormsAuthenticationModule は

OWIN に関して、現在のバージョンの CAS クライアントには 2 つの問題があります。

  1. クライアントは、CasPrincipal というカスタム IPrincipal クラスを使用しています。ClaimsPrincipal を利用するように変更する必要があるようです。この作業は簡単ではなく、.NET 2.0/3.5 との互換性を損なう可能性があります。CAS サーバーによって提供される役割/グループ メンバーシップ情報の処理方法に関する長年の問題に対処します。
  2. 長期的な問題は、ASP.NET で OWIN がより大きな役割を果たし始めているため、System.Web に依存することが問題になるということです。これにアプローチする方法については十分に調べていませんが、おそらく別のクライアント パッケージにする必要があります。2.0/3.5 の互換性を壊すことは 1 つのことですが、OWIN 非対応のすべてのアプリケーションとの互換性を壊すことは別のことです。

今後数週間のうちに、クライアントに ClaimsPrincipal を活用してもらい、そこから何ができるかを見てもらいたいと考えています。

于 2014-02-25T05:37:32.710 に答える