内部サイトに Orchard を使用することを検討しています。
現在、初期認証にShibbolethを使用しています。これにより、次の形式でサイトに POST が返されます。http://domain/Shibboleth.sso/{stuff}
現在の ASP.NET MVC Web サイトでは、Global.asax を次のように変更するだけで済みました。
routes.IgnoreRoute("Shibboleth.sso/{isapiInfo}/{isapiDetails}");
routes.IgnoreRoute("Shibboleth.sso/{*pathInfo}");
残念ながら、Orchard ではその方法が許可されていないため、いくつかの調査の結果、ハンドラーを追加する必要があるようです。
IIS (Server 2008 R2) を介して、これはハンドラ グループ内の web.config に追加されました。
<add name="Shib" path="*.sso" verb="*" modules="IsapiFilterModule" scriptProcessor="C:\{path}\isapi_shib.dll" resourceType="Either" requireAccess="Script" preCondition="integratedMode" />
これのいくつかの異なるバリエーションを試しましたが、まだダイスはありません。
とにかくソースをプルダウンしたので、2 つのroutes.IgnoreRoute
呼び出しを追加して再ビルドするだけの単純なルートを試してみましたが、同じ問題が発生します。
Shib の要件を削除すると、Orchard は正常に起動し、Shib をオンにして新しい MVC プロジェクトを作成すると (さらに 2 つの IgnoreRoute 呼び出しを追加すると)、これも正常に動作します。
ブラウザーは 404 (空白のページ) を返しているので、Orchard がまだ要求を取得しているように感じます。
Orchard にこのパスをスキップさせる方法について何か提案はありますか?