4

現在、プロジェクトで新しい ASP.NET Web API を使用しています。これは、いくつかのアクションを実行するためにユーザー認証と承認を必要とします。たとえば、プロファイル ページの更新です。

API 要件のない ASP.NET MVC 3 を使用したこの同じプロジェクトの以前のバージョンでは、Azure ACS とロールベースのアクセス制御 (このチュートリアルに基づく) を使用して多くの成功を収めました。

Web API で ACS を再び使用できるようにしたいと考えていますが、サポートされているかどうかを判断するには、ACS の仕組みがよくわかりません。それは可能ですか、またはこれを行おうとすると遭遇する可能性が高い課題はありますか?

4

2 に答える 2

4

しかし、これがサポートされているかどうかを知るのに十分なほど、ACS がどのように機能するかを理解していません。

サポートされています。ASP.NET Web API を使用すると、REST サービスを構築できます。ACS は、あらゆる種類の REST サービスをサポートします。この記事で説明されている通常の請求検証プロセスが機能します。WCF を Web API に変更するだけです。

よろしくお願いします、

明徐。

于 2012-05-03T06:40:16.900 に答える
0

私の経験から、あなたが指摘したリンクは、クライアント (WPF/Windows Phone など) に使用されるため、おそらく役に立たないでしょう。サービス側で ACS を使用して、クレームを処理します。好きなクレームを返すように ACS を構成できます。クレームはユーザー名である場合もありますが、ロールである場合もあります。たとえば、特定のユーザをロールにマッピングするルールを作成すると、ACS からロール クレームが返されます。

ただし、ASP.NET ロールと統合する場合は、クレームを解析し (ロール クレームであっても)、そのクレームを Thread.CurrentPrincipal に割り当てる必要があります。SAML トークンを返すように ACS を構成すると、WIF がこれを行います。ACS が SWT トークンを返す場合、自分でそれを行うか、他の誰かが書いたライブラリを使用する必要があります。これらのライブラリの 1 つは、DPE チームによって作成された DPE.OAuth です。http://msdn.microsoft.com/en-us/IdentityTrainingCourse_ACSAndWindowsPhone7から取得できます。このチュートリアルでは、Windows Phone で ACS を操作する方法を説明していますが、サービス側の OAuth ライブラリを再利用できます。

よろしくお願いします、

明徐。

于 2012-05-04T09:30:35.330 に答える