に特定のURLへの匿名アクセスを許可します。このサイトはIIS 7.5上でPHPを実行している、と次のようにサイトへのアクセスは、web.configファイルを経由して、Active Directoryのグループに制限されていますは、web.configファイル
<security>
<authorization>
<remove users="*" roles="" verbs="" />
<add accessType="Allow" roles="DOMAIN\AD-GROUP" />
</authorization>
</security>
唯一のURL書き換えはほとんどのURLをindex.php
に送信することです。その後、CodeIgniterはそれ以降のルーティングを処理します。
特定のURLパターンがあり、特定のActive Directoryグループ以外のユーザーに公開する必要があります。これはファイルではありません。<location>
タグが使用されていると思います。 URLに基づいている必要があります。
追加コンテキスト:これは、単一ページ/ AngularJSアプリケーションのURLパターン用です。例:プロジェクト管理アプリケーションでは、アプリケーションのユーザーはタスクを作成したり、ファイルをアップロードしたり、メモを投稿することができます(例:http://domain/#/project/1234/tasks)。これらのユーザーはすべてAD-GROUP
グループに属しています。各プロジェクトには、組織内の非ユーザ(http://domain/#/project/1234/public)に提供できるプロジェクトの種類の表紙ページがあります。彼らはその特定のADグループに所属しませんが、そのページを表示する必要があります。
URLのハッシュに基づいているので、これはweb.configで可能ですか?そうでない場合は、web.config以外のADグループに基づいて制限する別の方法は何ですか?
私はこれを動作させることができませんでした。正規表現をパスとして入力しようとすると、無効な文字に関するエラーが発生します。 –
@ MelissaAvery-Weir、はい、これはRegExpで一致するパスで動作するようには設計されていません。 URLに固定プレフィックスを付けることができない場合、次の最も簡単な解決策は[URL書き換えモジュール](https://www.iis.net/downloads/microsoft/url-rewrite)をインストールしてすべてのURLを接頭辞 - 物理フォルダにマップし、そのフォルダの 'location'を設定します。 – SergGr
すべての着信URLは、ルーティングを駆動するためにすでにCodeIgniter用の 'index.php'ファイルにマップされています。さらなる研究では、これが私が望むよりも可能性が低いことを示唆しています。セキュリティ例外を必要とするURLは、URLのハッシュ部分にあります(AngularJSの場合)。私はハッシュがサーバーにそれを作るとは思わない。それらのURLを書き換えることはできません。 –