特定の技術的な問題に対処するために、匿名アクセスとWindowsベースの認証の両方を許可する単一のリソースを持つことはできません。ただし、匿名アクセスを可能にするメインページと、Windows認証で保護されたサブフォルダ内のページを持つことができ、これらのページは同じCFアプリケーションスコープを共有できます。この基本的な配置を使うことが必要になるでしょう。
あなたが解決しようとしている根本的な問題については、あなたが説明したように、最近Windows認証アプローチと既存のWebフォームベースのログインを混在させる可能性について、時間を費やしています。理想的な状況では、すべてのユーザーがいつも使っていた同じベースURLにアクセスできるようになり、そのオプションが利用可能になったときに自動的に自動ログインし、ブラウザベースのログインでは煩わされないようになるため、 Windows認証が利用できない場合はプロンプトが表示されます。私たちが決定したことから、理想はそれほど可能ではありません(HTTPプロトコルのいくつかの制限のため、セキュリティ保護されたリソースにアクセスする際には常にログインプロンプトが表示されます)。しかし、我々は有用で価値のある理想に近いほどのいくつかのオプションを見つけました:
1)あなたは、この自動ログイン機能を持つように特別なURLを指定することができます。たとえば、https://baseUrl/autologin/のようなものです。ドメインユーザーは、ドメインにあるマシンからそのURLをブックマークし、そのブックマークを使用してサイトにアクセスできます。ドメインコンピュータ上のドメインユーザー以外のユーザーがそのURLにアクセスした場合、ブラウザベースのログインダイアログでログインするように求められます。ドメイン以外のユーザーは、そのダイアログから続行することはできませんが、ドメインユーザーは可能です。すべてのユーザー(ドメインかどうか)は、通常利用可能な通常のフォームベースのログイン画面を使用してログインすることもできます。このオプションを使用した場合は、ホームページ上のリンクを追加して、ユーザーが「自動ログイン」するようにすることもできます。このURLを使用すると、ドメインのユーザーだけがこのURLにアクセスできます。
2)ご使用の環境内で、信頼できるドメインコンピュータでこれらのWebサイトを要求しているユーザーが行う可能性の高いネットワークセグメントを特定できます。これらのユーザーが識別されたネットワークから来たときに、ユーザーに自動ログインしようとするような方法でアプリケーションを構成することができます。信頼されていないこれらのネットワークからの要求がある場合、最悪の事態は、ユーザが予期せずブラウザベースのユーザ名とパスワードのプロンプトを提示されることである。そのプロンプトが表示された場合、キャンセルを押して通常のログインページに進むか、ドメイン資格情報を入力してログインすることができます(この場合は、デスクトップが設定されていないことが原因です)何らかの理由で正しく - それ以外の場合は自動ログインしていました)。このネットワークベースの検出方法は、IISのURL書き換えモジュールを使用して実行できます。
はい、私はこれを恐れていました。私は、ユーザーが認証されているかどうかを確認し、そうでない場合はユーザー名を取得したいと思っていました。なぜなら、WebVPN経由でWindow Authページ(非Anon)でWebサイトにアクセスすると、一部のユーザーはこのページをまったく読み込めないからです。ネットワークに接続されていないときに取得したページの1つを取得します。そういうわけで私はanonユーザーも受け入れたいと思っています。 – James