統合された Windows 認証 (SPNEGO などを使用) を介してユーザーの認証を試みるカスタム ログイン画面を作成し、その試みが失敗した場合は、フォーム ベースのアプローチにフォールバックしたいと考えています。
プロセスは理想的にはこのように機能します...
有効な AD ユーザーとしてログインしたユーザー
- ユーザーがアプリケーションにアクセスしようとすると、IdentityServerにリダイレクトされます。
- カスタム ロジックは、AD 資格情報を使用してユーザーの検証を試み、成功します。
- ユーザーは認証され、リダイレクトされます...
ユーザーが有効な AD ユーザーとしてログインしていません
- ユーザーがアプリケーションにアクセスしようとすると、IdentityServerにリダイレクトされます。
- カスタム ロジックは、AD 資格情報を使用してユーザーの検証を試み、失敗します。
- ユーザー名とパスワードを入力するフォームが表示されます。
- ユーザーは認証され、リダイレクトされます...
これを実現するためにカスタムIUserService実装を作成したいと思っていましたが、ドキュメントを読んでも、これがどのように行われるかは明らかではありません。
これを実現するには、カスタム ID プロバイダーを作成する必要がありますか?
ガイダンスをいただければ幸いです。