OpenId Connect プロトコルと OWIN ミドルウェアを使用して、ASP.NET Web アプリケーションにマルチテナント シングル サインオン シナリオを実装しました。https://github.com/AzureADSamples/WebApp-WebAPI-MultiTenant-OpenIdConnect-DotNetなどの公式のサンプル プロジェクトに従ってい ます。
そうすることで、Office 365 ユーザー (または一般的に Azure AD ユーザー) が Web アプリケーションにログインできるようになり、通常は正常に動作します。
現在、Azure AD Premium の多要素認証 (MFA) 機能と、[今後 x 日間は確認しない] オプションで問題が発生しました。MFA を有効にし、「確認しない」オプションを使用して初めて Web アプリケーションにログインすると、認証プロセスは成功します。ブラウザを閉じて再度開くと、ログイン プロセスが機能しなくなります。詳細に再現する手順:
- ブラウザのキャッシュがクリアされていることを確認してください。
- ブラウザーを開き、Web アプリケーションに移動します。
- Azure AD ログイン ページ (login.microsoftonline.com) にリダイレクトされたら、Azure AD/O365 アカウントの資格情報を使用してサインインし、ブラウザーを閉じた後も認証されるようにサインイン情報を保存するオプションをオンにします。
- モバイル デバイス (またはその他) に送信される MFA 確認コードを入力し、[今後 x 日間は確認しない] オプションをオンにします。
- 認証されたユーザーとして Web アプリケーションにリダイレクトされます。
- ここで、ブラウザを閉じて再度開きます。
- 再び Web アプリケーションに移動します。
- Azure AD のログイン ページにリダイレクトされると、先に進むことができません。アカウントの認証情報は保存されましたが、続行できません。サインインボタンを何度もクリックしても、何も起こりません。
次のページには、MFA 機能はまだパブリック プレビュー段階にあると記載されているため、この機能にはまだバグがある可能性があります 。
すでに OpenId Connect の代わりに WS-Federation ミドルウェアを使用することを試みましたが、問題はまだ残っているため、これはプロトコル関連の問題ではないと思います。
現在、担当エンジニア チームに連絡して、このバグを報告しようとしています。ユーザーが MFA を使用して Web アプリにサインインできるようにしていただければ幸いです。
ご協力いただきありがとうございます。
よろしくお願いします、
ダスティン